🧙♂️ Unity 游戏开发通用经验数值速查表
📚 1. 理论基础 (Theoretical Basis)
🧠 Game Feel (手感) 的定义
“Game Feel” 是指玩家通过输入设备与游戏世界交互时产生的实时触觉、视觉和听觉反馈的综合体验。好的手感通常意味着:- 响应性 (Responsiveness): 低延迟,玩家意图能立即转化为行动。
- 可预测性 (Predictability): 物理规则一致,玩家能预判结果。
- 冲击力 (Impact): 动作产生令人满意的视听反馈(果汁感 Juice)。
⏱️ 人类反应时间与感知阈值
了解这些生理极限有助于调整判定窗口:- 0.1s (100ms): 感觉“即时”的极限。超过这个时间,玩家会感觉到延迟。
- 0.25s (250ms): 平均视觉反应时间。
- 0.016s (16ms): 60FPS 下的一帧时长。
🛠️ 2. 实操速查 (Practical Quick Reference)
🏃 角色移动与物理 (Movement & Physics)
| 参数 (Parameter) | 推荐范围 (Recommended Range) | 说明 (Note) |
|---|---|---|
| Walk Speed | 1.5 - 3.0 m/s | 现实人类行走约 1.4m/s,游戏中通常稍快。 |
| Run Speed | 4.0 - 6.0 m/s | 甚至更快,取决于地图大小。 |
| Gravity | -19.62 ~ -29.43 (2x ~ 3x Earth) | 默认 -9.81 在游戏中通常感觉“漂浮”。平台游戏常设为 2-3 倍重力。 |
| Jump Height | 1.5 - 2.5 m (Human) | 超级玛丽类游戏可达 3-4 格高。 |
| Air Control | 0.4 - 0.8 (Ratio) | 空中移动速度相对于地面的比例。完全 0 禁止微调,完全 1 太过灵活。 |
| Acceleration | High (甚至 Infinity) | 除非做模拟驾驶,否则起步/急停越快手感越清晰。 |
[!TIP] 平台跳跃游戏中,下落重力 通常设为 上升重力 的1.5-2.0倍,使跳跃曲线更具“重量感”和操作性。
⏱️ 交互与手感 (Interaction & Game Feel)
Coyote Time (土狼时间)
允许玩家在离开平台边缘的一小段时间内仍然可以起跳。- 数值:
0.1s-0.2s(约 6-12 帧 @ 60FPS) - 作用: 消除“边缘起跳失灵”的挫败感。
Input Buffer (输入缓存)
在当前动作(如攻击动画)结束前预先输入下一个指令,动作结束后立即执行。- 数值:
0.15s-0.2s - 作用: 让连招更流畅,防止“按了没反应”。
Hit Stop / Freeze Frame (打击顿祯)
攻击命中关键目标时,游戏逻辑暂停一瞬间。- 轻攻击:
0.05s-0.1s(3-6 帧) - 重攻击:
0.15s-0.3s(9-18 帧) - 作用: 极大地增强打击力度感。
🔊 音效与反馈 (Audio & Feedback)
音量层级 (Volume Hierarchy)
不要让所有声音都一样响。| 类型 (Type) | 分贝范围 (dB) | 备注 |
|---|---|---|
| BGM (背景乐) | -10dB ~ -15dB | 提供氛围,不抢戏。 |
| SFX (环境音) | -5dB ~ 0dB | 关键动作(攻击、爆炸)需突出。 |
| UI (交互音) | -5dB | 清晰短促。 |
| Dialogue (语音) | -3dB ~ 0dB | 必须保证清晰可辨。 |
Pitch Randomization (音高随机化)
重复播放同一音效(如脚步声、机枪声)时,随机微调音高,避免机械感。- 范围:
0.9(-10%) ~1.1(+10%)
💡 灯光与视觉 (Lighting & Visuals)
常用光照强度 (Intensity - HDRP/URP)
| 光源类型 (Light Type) | 白炽灯泡/室内 | 街灯/夜间 | 日光/户外 (Lux) |
|---|---|---|---|
| Point Light | 300 - 800 Lumen | - | - |
| Directional Light | - | - | 3000(阴天) - 100000(直射) Lux |
| Emissive Material | 2 - 5 EV (HDR) | - | 配合 Bloom 产生辉光。 |
[!NOTE] 只有当材质的Emission强度超过 Bloom 的Threshold(通常设为 1.0 或 1.5) 时,才会产生泛光效果。
🎬 动画与镜头 (Animation & Camera)
Cross-fade Duration (动画融合时间)
- 一般状态切换 (Idle -> Walk):
0.1s-0.25s - 受击/死亡:
0s(立即切换) 或极短0.05s,确保反馈及时。
Screen Shake (屏幕震动)
- 轻微震动 (普通受击): 震幅
0.1-0.3, 持续0.1s-0.2s。 - 强烈震动 (爆炸/重击): 震幅
1.0-2.0, 持续0.3s-0.5s, 使用 Decay (衰减) 曲线。
🌟 3. 业界优秀案例 (Industry Best Practices)
🍓 Celeste (蔚蓝) - 宽容度设计
Celeste 是“硬核但公平”的典范,大量使用了隐形辅助机制:- Corner Correction (转角修正): 玩家撞到墙角边缘时,会被自动推向空间,避免被卡住。
- Hyper Dash: 极其精确的输入窗口和宽容的缓冲设计。
- 借鉴点: 不要为了“真实”而牺牲流畅度,作弊 (For the player) 往往能带来更好的体验。
⚔️ Hollow Knight (空洞骑士) - 打击感
空洞骑士的打击感教科书级别:- Pushback (后坐力): 每次攻击不仅击退敌人,也会轻微击退主角,产生力的相互作用感。
- Particle Effects (粒子): 方向性的粒子爆发,指示攻击方向。
- 借鉴点: 物理位移是打击感最直接的体现,不要只有动画和音效。
🛡️ Kingdom Rush (王国保卫战) - 寻路与判定
- 判定点: 敌人的判定通常在脚底,而不是身体中心,确保视觉上的透视正确。
- 路径: 即使在网格地图中,单位移动也常带有微小的随机偏移 (Offset),避免完全重叠。
🔗 4. 参考资料 (References)
- 📺 GDC: Juice it or lose it - 必看的游戏反馈设计演讲。
- 📺 GDC: The Art of Screenshake - 屏幕震动的艺术。
- 🌐 Unity Manual: Physics