用途
这是一个游戏开发编排型(orchestrator)技能,本身不针对某一具体平台,而是提供游戏开发的通用核心原则,并根据当前项目上下文,把工作引导到合适的专项子技能。当你正在从事游戏开发项目时,可用它来确定方向、选择子技能组合。
主要能力
子技能路由
按平台选择:
- 目标为网页浏览器(HTML5、WebGL)→ game-development/web-games
- 目标为移动端(iOS、Android)→ game-development/mobile-games
- 目标为 PC(Steam、桌面)→ game-development/pc-games
- 目标为 VR/AR 头显 → game-development/vr-ar
按维度选择:
- 2D(精灵、瓦片地图)→ game-development/2d-games
- 3D(网格、着色器)→ game-development/3d-games
按专项领域选择:
- 需要 GDD、数值平衡、玩家心理 → game-development/game-design
- 需要多人联机、网络 → game-development/multiplayer
- 需要视觉风格、资源管线、动画 → game-development/game-art
- 需要音效设计、音乐、自适应音频 → game-development/game-audio
核心原则(适用于所有平台)
-
游戏循环:所有游戏都遵循 INPUT(读取玩家操作)→ UPDATE(处理游戏逻辑,固定时间步长)→ RENDER(绘制帧,插值)的模式。固定时间步长规则为:物理/逻辑使用固定频率(例如 50Hz),渲染尽可能快,并在状态之间插值以获得平滑画面。
-
模式选择矩阵:状态机适用于 3-5 个离散状态(如玩家 Idle→Walk→Jump);对象池适用于频繁生成/销毁(如子弹、粒子);观察者/事件用于跨系统通信(如生命值→UI 更新);ECS 用于成千上万个相似实体(如 RTS 单位、粒子);命令模式用于撤销、回放、网络(如输入记录);行为树用于复杂 AI 决策(如敌人 AI)。决策规则:从状态机开始,仅在性能需要时引入 ECS。
-
输入抽象:把输入抽象为动作(ACTION)而非原始按键,例如 "jump" 对应空格、手柄 A 键、触摸点击;"move" 对应 WASD、左摇杆、虚拟摇杆。这样可实现多平台与可重绑定控制。
-
性能预算(60 FPS = 16.67ms):输入 1ms、物理 3ms、AI 2ms、游戏逻辑 4ms、渲染 5ms、缓冲 1.67ms。优化优先级为:算法(O(n²) → O(n log n))、批处理(减少绘制调用)、池化(避免 GC 峰值)、LOD(按距离调整细节)、剔除(跳过不可见对象)。
-
按复杂度选择 AI:FSM 简单,适用于 3-5 个状态、可预测行为;行为树中等,模块化、对设计师友好;GOAP 高,涌现式、基于规划;Utility AI 高,基于评分的决策。
-
碰撞策略:AABB 适合矩形、快速检测;圆形适合圆形物体、开销低;空间哈希适合大量尺寸相近的物体;四叉树适合大型世界、尺寸不一的对象。
通用反模式
不要每帧更新所有内容,应使用事件与脏标记;不要在热循环中创建对象,应使用对象池;不要什么都不缓存,应缓存引用;不要未经性能分析就优化,应先做性能分析;不要把输入与逻辑混在一起,应抽象输入层。
使用方式
该技能作为入口使用,先依据项目平台、维度与专项需求路由到对应子技能,再结合上述核心原则推进开发。资料中给出的路由示例:
- 示例 1:"我想做一个基于浏览器的 2D 平台游戏" → 先用 game-development/web-games 选择框架,再用 game-development/2d-games 处理精灵/瓦片地图模式,并参考 game-development/game-design 做关卡设计。
- 示例 2:"面向 iOS 和 Android 的移动端解谜游戏" → 先用 game-development/mobile-games 处理触摸输入与商店,再用 game-development/game-design 做解谜平衡。
- 示例 3:"多人 VR 射击游戏" → 用 game-development/vr-ar 处理舒适度与沉浸感,用 game-development/3d-games 处理渲染,用 game-development/multiplayer 处理网络。
适用场景
适用于各类游戏开发项目的启动与推进阶段,尤其是需要跨平台、跨维度决策,或需要把任务分派到设计、美术、音频、联机等专项子技能的场景。
限制
资料未提供该技能的具体安装命令、依赖环境、收费方式、支持引擎或框架清单、平台兼容性细节及效果保证。上述内容暂未提供。资料强调:优秀的游戏来自迭代而非完美,应快速原型,然后再打磨。