SuperAPI AI 工具集

example-game

编程与开发

查看项目

更新于 10-15 23:44

技能介绍

用途:这是 SDR 引擎的参考实现示例(Grassland Gem Rush),用于演示库的正确用法,而非可直接套用的游戏模板。生成的游戏在类型、主题、机制与风格上都会有很大差异,但其中的 ECS 配置、输入处理、渲染同步与系统顺序模式适用于所有生成的游戏。

主要能力与演示要点:

  • bitECS 0.4 组件设计:组件为带数组属性的普通对象,按实体 ID 索引访问数据,支持标签组件。
  • addComponent 签名:bitECS 0.4 使用 addComponent(world, eid, Component),而非旧版顺序。
  • 查询:直接使用 query(world, [...]),没有 defineQuery。
  • 生命周期:用 observe 配合 onAdd/onRemove,而非 enterQuery/exitQuery,在实体获得 Position+Visual 时创建 Phaser 对象,失去时销毁。
  • 数据与显示分离:ECS 组件只存可序列化数据,Phaser GameObjects 存放在以实体 ID 为键的独立 Map 中,由渲染系统同步。
  • 系统顺序:每帧按输入、移动、边界、碰撞、收集、渲染的确定性顺序执行。
  • 输入:带死区处理与对角线归一化,支持手柄与键盘双输入。
  • 帧率无关移动:位置按 dt(秒)与速度更新。
  • 无精灵图时可用 Phaser 矩形代替,使生成游戏不依赖素材资源。
  • 服务器房间:导出 GeneratedRoomLogic,含 onUpdate、onPlayerAction、checkWinCondition 三个方法。

文件位置:客户端 packages/generator/src/examples/client/game.ts;服务器 packages/generator/src/examples/server/room.ts;元数据 packages/generator/src/examples/metadata.json。

限制:具体安装命令、版本依赖、收费与平台支持信息暂未提供。