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
readonly只读
name
game-development
description

游戏开发编排器。根据平台、维度和引擎适配性(网页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-selectiongame-development/web-gamesgame-development/2d-gamesgame-development/game-design

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

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

“移动解谜游戏”

game-development/mobile-gamesgame-development/game-design

“多人VR射击游戏”

game-development/vr-argame-development/3d-gamesgame-development/multiplayer

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

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


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

限制

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