用途
platform-console 是一份面向主机平台游戏开发的专家蓝图,覆盖 PlayStation、Xbox 与 Nintendo Switch。资料将其定位为:以手柄优先设计、认证合规和锁定帧率为核心的主机开发规范。
主要能力
该技能提供主机开发中应遵守与应避免的实践清单,并附带一个用于认证辅助的脚本。
资料列出的脚本为:
- console_compliance_handler.gd:专家级主机认证辅助工具,包含焦点丢失处理与存档指示器。
核心约束(“绝不要做”清单)
资料以禁止清单形式列出主机开发中的关键红线:
- 绝不显示鼠标光标。主机上出现鼠标等于认证失败,只能使用手柄。可通过 Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN) 隐藏光标。
- 绝不跳过失焦暂停。用户按 Home 键而不暂停属于 TRC 违规。需监听 NOTIFICATION_APPLICATION_FOCUS_OUT 并强制暂停。
- 绝不使用非锁定帧率。可变 FPS 会导致画面撕裂和认证失败。应锁定 30 或 60 FPS,例如 Engine.max_fps = 60 并开启 VSync。
- 绝不忘记十字键导航。若 UI 只能用摇杆操作则属于无障碍失败,所有菜单必须支持十字键。
- 绝不硬编码按键标签。在 PlayStation 上显示 “Press A” 会是错误图标。应使用 Input.get_joy_button_string() 或平台专属图标映射。
- 绝不超过平台内存限制。Switch 可用内存约 3.5GB,超出会导致崩溃或被拒。应使用 Godot Profiler 的 Memory 标签页进行分析。
使用方式
资料给出的输入处理示例:
func _input(event: InputEvent) -> void:
if event is InputEventJoypadButton:
match event.button_index:
JOY_BUTTON_A:
on_confirm()
JOY_BUTTON_B:
on_cancel()
同时提出始终显示按键提示(A/B/X/Y 或 ⬜/✕/△/○)、所有菜单支持十字键导航、支持返回键(B/○)、不显示鼠标光标。
性能要求
资料列出的性能要求包括:锁定 30/60 FPS(不允许掉帧)、严格的内存预算、以及需要 QA 的认证测试。
平台服务
资料提及的平台服务包括:成就/奖杯、云存档、多人匹配、平台好友。
最佳实践
资料总结的最佳实践为:仅使用手柄(不用鼠标/键盘)、失焦时暂停(必需)、存档提示(必须通知存档)、遵循 TRCs/TCRs 认证要求。
适用场景与限制
适用场景为主机平台游戏的 UI 设计、输入处理与认证合规准备。
限制方面,资料未提供具体支持的主机 SDK 版本、认证清单完整条目、内存预算的具体数值(仅提及 Switch 约 3.5GB)以及各平台差异的详细对照。
参考
资料标注的相关主题:export-builds、input-handling。