游戏引擎 已归档

Sketchbook

swift502/Sketchbook

基于 three.js 和 cannon.js 构建的 3D 游乐场。

1755
Stars 标星
505
Forks 分支
2
Watchers 关注
10
Open Issues
TypeScript
主要语言
MIT
开源协议
135.7 MB
仓库大小
1 年前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:swift502/Sketchbook
git clone https://github.com/swift502/Sketchbook.git
git clone git@github.com:swift502/Sketchbook.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。


实时演示

最终更新(2023年2月20日)

由于我对继续开发该项目不再感兴趣,它到此结束。为了对项目的真实状态保持诚实,我将归档此存储库。

  • 如果你希望修改 Sketchbook,可以随意分叉它。
  • 要查看是否有人正在维护某个分叉,请查看 网络图。

📒 速写本

基于 three.js 和 cannon.js 构建的简单网页游戏引擎,专注于第三人称角色控制及相关游戏机制。

主要是一个用于探索现代游戏中常见的第三人称游戏机制,以及以通用方式重现这些机制的实验平台。

功能

  • 世界
    • Three.js 场景
    • Cannon.js 物理
    • 可变时间尺度
    • 跳帧
    • FXAA 抗锯齿
  • 角色
    • 第三人称摄像机
    • 带胶囊碰撞的射线检测角色控制器
    • 一般国家制度
    • 角色人工智能
  • 载具
    • 汽车
    • 飞机
    • 直升机

所有计划中的功能可以在 GitHub Projects 中找到。

使用方法

你可以在 Blender 中定义你自己的场景,然后用 Sketchbook 读取它们。Sketchbook 需要在本地服务器上运行,例如 http-server 或 webpack-dev-server,才能加载外部资源。

  1. 导入:
<script src="sketchbook.min.js"></script>
  1. 加载在 Blender 中定义的 glb 场景:
const world = new Sketchbook.World('scene.glb');

贡献

  1. 获取 Node.js 16 的 LTS 版本
  2. 分叉此仓库
  3. 运行 npm install
  4. 运行 npm run dev
  5. 进行更改并在 http://localhost:8080 测试它们
  6. 提交并发起拉取请求!

鸣谢

衷心感谢以下每位 GitHub 用户为 Sketchbook 做出的贡献:

本站来源与版权声明
  • 本文标题:Sketchbook - 基于 three.js 和 cannon.js 构建
  • 本文链接:https://cn121.com/gameengine/swift502-sketchbook.html
  • 原项目:swift502/Sketchbook 版权归原作者 swift502 及贡献者所有
  • 收录信息:本站于 2026-10-05 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 MIT(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 swift502/Sketchbook。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。