game-development

game-development

热门

游戏开发编排器。根据平台、维度和引擎适配性(网页2D/3D、混合DOM+画布、叙事工具)进行路由。在启动或构建游戏项目、选择框架,或在Phaser、PixiJS、Kaplay、Canvas/WebGL、Three.js、Babylon.js、Godot、Unity或Ink/Twine之间做选择时使用。

4.4万Star
6460Fork
更新于 2026/7/22
SKILL.md
只读
名称
game-development
描述

游戏开发编排器。根据平台、维度和引擎适配性(网页2D/3D、混合DOM+画布、叙事工具)进行路由。在启动或构建游戏项目、选择框架,或在Phaser、PixiJS、Kaplay、Canvas/WebGL、Three.js、Babylon.js、Godot、Unity或Ink/Twine之间做选择时使用。

游戏开发

编排技能 — 原则加上路由到专业子技能。


何时使用此技能

你正在从事一个游戏开发项目。本技能教授原则,并根据上下文引导你到正确的子技能。


子技能路由

平台选择

如果游戏目标平台是... 使用子技能
网页浏览器(HTML5, WebGL, WebGPU) 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

架构/工具

如果你需要... 使用子技能
引擎/框架选择、外壳与客体的关系、适配层级 game-development/engine-selection
游戏设计文档、平衡性、玩家心理 game-development/game-design
多人游戏、网络 game-development/multiplayer
视觉风格、资源管线、动画 game-development/game-art
音效设计、音乐、自适应音频 game-development/game-audio

核心原则(所有平台)

1. 游戏循环

输入  → 读取玩家操作
更新 → 处理游戏逻辑(固定时间步长)
渲染 → 绘制帧(插值)

固定时间步长规则:

  • 物理/逻辑:固定速率(例如50Hz)
  • 渲染:尽可能快
  • 在状态之间插值以获得平滑视觉效果

混合/UI密集型游戏: 外部应用可以是DOM/事件驱动;仅在canvas/WebGL视口(或模拟滴答的地方)使用经典游戏循环。

2. 模式选择矩阵

模式 使用场景 示例
状态机 3-5个离散状态 玩家:空闲→行走→跳跃
对象池 频繁生成/销毁 子弹、粒子
观察者/事件 跨系统通信 生命值→UI更新
ECS 数千个相似实体 RTS单位、粒子
命令 撤销、回放、网络 输入录制
行为树 复杂AI决策 敌人AI
内容即数据 设计师无需代码即可发布关卡/事件 JSON/YAML包

决策规则: 从状态机开始。仅在性能要求时添加ECS。

3. 输入抽象

将输入抽象为动作,而非原始按键:

"跳跃"  → 空格键、手柄A键、触摸点击
"移动"  → WASD、左摇杆、虚拟摇杆

4. 性能预算(60 FPS = 16.67ms)

系统 预算
输入 1ms
物理 3ms
AI 2ms
游戏逻辑 4ms
渲染 5ms
缓冲 1.67ms

优化优先级: 算法 → 批处理 → 池化 → LOD → 剔除。

5. 按复杂度选择AI

AI类型 复杂度 使用场景
FSM 简单 3-5个状态,可预测行为
行为树 中等 模块化,对设计师友好
GOAP 高 涌现式,基于规划
效用AI 高 基于评分决策

6. 碰撞策略

类型 最适合
AABB 矩形,快速检测
圆形 圆形物体,开销低
空间哈希 许多大小相似的物体
四叉树 大世界,不同大小

反模式(通用)

不要 要
每帧更新所有内容 使用事件、脏标记
在热循环中创建对象 对象池
不缓存任何内容 缓存引用
未经分析就优化 先分析
将输入与逻辑混合 抽象输入层
根据炒作选择引擎 匹配引擎到类型+团队+交付目标

路由示例

“浏览器2D平台游戏”

→ game-development/engine-selection → game-development/web-games → game-development/2d-games → game-development/game-design

“UI密集型网页游戏,带有小型街机挑战”

→ game-development/engine-selection(外壳 vs 客体)→ game-development/web-games → game-development/2d-games(仅客体)

“移动解谜游戏”

→ game-development/mobile-games → game-development/game-design

“多人VR射击游戏”

→ game-development/vr-ar → game-development/3d-games → game-development/multiplayer

“分支叙事,带有轻量统计”

→ game-development/engine-selection(Ink/Twine)→ 你选择的主机UI


记住: 伟大的游戏来自迭代,而非完美。快速原型,然后打磨。

限制

  • 仅当任务明确匹配上述范围时使用此技能。
  • 不要将输出视为环境特定验证、测试或专家评审的替代品。
  • 如果缺少所需的输入、权限、安全边界或成功标准,请停止并请求澄清。