本页目录

Overworld:React Three Fiber 模块化 RPG 系统

overworld · luzhenqian/overworld

面向 React Three Fiber 与 Three.js 的模块化 TypeScript RPG 系统集合,涵盖任务、对话、背包、AI、多人联机、持久化以及跨平台适配等模块。仓库描述与 README 摘录内容不一致(摘录为 Torque2D 相关文本),具体功能与实现情况待核验...

其他 自研引擎 C 物理系统 粒子系统 动画系统 音频系统 高级
★ Stars 1,721 Forks 140 License MIT 更新 2026-11-07

国内开发环境适配

Windows
官方声明支持
Linux
官方声明支持
macOS
官方声明支持
引擎 / 框架:自研引擎 暂无中文教程标记 未标记站长实测
构建依赖 CMake 与各平台工具链;Web 构建需 Emscripten SDK,Android 需 Android Studio + NDK,首次拉取依赖可能受网络影响,具体待核验。

中文项目介绍

Torque2D 是 GarageGames 以 MIT 许可证开源的一款 2D 游戏引擎,由 Torque Game Engines 团队维护,并接受社区贡献。它专注于 2D 游戏开发,采用 C++ 编写,README 将其描述为“功能强大、灵活且快速”的引擎,并称已被数百款商业游戏使用。

引擎强调“单一代码库、多平台输出”:README 明确列出 Windows、OSX、Linux、iOS、Android 以及 Web 平台。当前仓库主线正在推进 Torque2D 4.0(Rocket Edition),已发布到 Early Access 4 阶段。

核心功能

OpenGL 批渲染系统

面向 2D 的批量绘制管线。

Box2D 物理

集成 Box2D 作为物理后端。

OpenAL 音频

使用 OpenAL 提供音频支持。

骨骼与精灵表动画

同时支持 skeletal animation 与 spritesheet animation。

自动化资源管理

内置资产管理系统。

模块化项目结构

项目以模块(module)方式组织。

TAML 对象持久化

使用 TAML 格式进行对象序列化。

类 C 脚本语言

引擎自带 TorqueScript 风格的脚本层。

技术架构分析

构建与运行

README 明确说明 CMake 是构建的唯一事实来源:从根目录的 CMakeLists.txt 生成对应平台/工具链的工程再构建,编译产物写入仓库根目录。仓库根目录提供了便捷生成脚本:

  • Windows:generate-vs2022.bat(或 generate-vs2026.bat)→ Visual Studio 解决方案
  • macOS:generate-xcode.command → Xcode 工程
  • Linux:build-linux.sh(配置并构建,支持 32 位与 64 位)
  • iOS:generate-xcode-ios.command(模拟器)或 generate-xcode-ios-device.command(真机)
  • Android:用 Android Studio 打开 engine/compilers/android-studio,其 Gradle 构建通过 NDK 驱动 CMake
  • Web:generate-emscripten.sh → 通过 emcmake 生成 WebAssembly 构建(需要 Emscripten SDK)

原先位于 engine/compilers/ 下手工维护的各平台工程文件已被移除,由 CMake 取代。

以 Visual Studio 2022 为例,README 给出的步骤是:安装 VS2022 并勾选“使用 C++ 的桌面开发”工作负载;安装 CMake 并加入系统 PATH;双击 generate-vs2022.bat,脚本会在 build\vs2022\ 下生成解决方案并打开 Torque2D.sln;在 VS 中选择 Debug 或 Release 后执行“生成解决方案”;可执行文件输出到仓库根目录(Debug 为 Torque2D_DEBUG.exe,Release 为 Torque2D.exe),按 F5 即可从根目录启动。引擎源文件列表变化后(例如拉取新代码),重新运行该脚本即可重新生成解决方案。

如果不想自行编译,README 提到 Windows 与 OSX 的预编译二进制可从 Torque 2D Release 页面获取。各平台完整的分步构建说明见 Torque2D wiki 的 Building from Source 指南。

补充说明

4.0 版本与编辑器进展

4.0 最大的变化是引入编辑器。目前已经可用的是:

  • Asset Manager(资源管理器):可创建、编辑、删除图像、动画、粒子效果、位图字体与音频资源,取代过去手工编辑 XML 文件的方式。README 特别指出,粒子效果几乎无法脱离交互工具制作,因此这一改动意义重大。
  • Project Manager(项目管理器):在图形界面中管理游戏内的模块,并与一个可复用的模块库配合,模块可被导入到游戏中。

Early Access 4 在 Early Access 3 的基础上完善了 GUI 编辑器:从带图示的控件面板拖拽控件到画布,或点击直接放置;支持拖拽、方向键以及 Layout 菜单中的对齐与间距命令来排布控件;支持撤销/重做,以及在同一个 Gui 内部和多个 Gui 之间进行剪切、复制、粘贴。

画布周围还有两个面板:Explorer 以控件树形式展示全部控件,带控件类图示、隐藏与锁定列,并支持拖拽改变父子关系;属性面板只显示所选控件类实际会读取的字段(README 举例:链条控件不会绘制自己的文本,因此不会给它九个会被忽略的文本框),并为常用字段提供专用编辑器——尺寸用的锚点选择器、颜色色板、可视化挑选的图片选择器,以及过去在编辑器中完全无法触及的内容,例如列表框的行、菜单栏的条目。

Gui 可保存为经典的 .gui 脚本或 TAML 格式,编辑器会在你选择前说明两种格式各自会丢失什么;已修改的 Gui 不会被未经询问地丢弃。控件外观来自**主题(theme)**而非手工接线的 profile,Gui Profile Editor 用于编写主题(profile、边框、字体与颜色,带实时预览),拖到画布上的控件会自动套用正确的主题,Set Theme 可整体换肤。README 也坦言,此前认真使用 T2D 的开发者往往尽量避开 Gui 系统,Rocket Edition 的目标就是改变这一点,使用说明见 wiki 中的 Gui Guide。

README 提示:4.0 正式完成前还会有更多功能与编辑器,但新项目应尽早使用 Early Access 版本以避免后续冲突。

分支说明

仓库包含三个主要分支:

  • master:当前稳定发布代码,可用于生产环境。
  • development:活跃开发分支,包含最新修复与新功能,所有 pull request 都应提交到此分支;由于仍在测试中,应视为不稳定。
  • gh-pages:存放由 doxygen 生成的引擎与 TorqueScript 参考文档 HTML 页面。

上手与示例

首次运行 Torque2D 时,可以选择创建项目或打开 Toybox。Toybox 是 30 多个简单“玩具”(模块)的集合,用于演示 T2D 的各项功能;默认玩具是一个带怪物卡车的横版卷轴关卡。点击屏幕右下角的 Show Tools 按钮可查看可选模块列表。每个玩具的脚本代码与资源都在 toybox 文件夹中,可作为学习 T2D 的实例。

文档与社区

全部文档位于 GitHub wiki,包含教程、引擎系统的详细技术资料、由源码自动生成的脚本参考指南,以及参与开源开发的说明。README 提醒 GarageGames 官网已下线,建议通过 Torque 2D 论坛(torque3d.org)与 Discord 获取帮助、交流开发话题。

许可证

Torque2D 以 MIT 许可证发布,版权归 GarageGames, LLC(2012)所有,允许自由使用、复制、修改、合并、发布、分发、再许可与销售,需保留版权与许可声明,软件按“原样”提供、不附带任何担保。

开源许可证与版权说明

许可证标识:MIT。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目