跳转到正文

调试指南

本文解释如何在通用运动系统中进行功能调试,以及常见问题排查。

创建时间: 2025年4月20日更新时间: 2026年10月28日

调试指南

在使用GMS过程中,你有如下几种方式对遇到的问题进行排查。

调试组件

你可以为角色添加BC_GMS_DebugComponent。

该组件用于辅助展示角色当前的以下信息:

  • Actor 的世界朝向
  • 动画空间朝向
  • 视图(View)朝向 此组件便于开发者调试角色的运动和动画行为。

系统日志

在你的Config/DefaultEngine.ini加入如下设置:

ts
[Core.Log]
LogGMS = Verbose
LogGMS_Animation = Verbose

GMS主要有两个日志分类:

  1. LogGMS:用于运动控制部分,Verbose会在关键代码输出比较详细的日志,而VeryVerbose则是会详细地输出每帧都在变化的日志(如每一帧的旋转)。
  2. LogGMS_Animation:用于动画控制部分,Verbose会在关键代码输出比较详细的日志,而VeryVerbose则是会详细地输出每帧都在变化的日志(如每一次的原地转身详情)

组件细节面板

最简单简单方式是:在游戏运行时,找到你的角色,在细节面板中找到角色运动系统组件,观察细节面板。

查看运动设置状态:

你能知道运动系统组件中当前所套用的设置。通过这些信息来排查当前的设置是否切换到你所希望的设置。

查看控制系统的状态:

角色运动控制的当前所有状态,你都可以在State分类下进行查看。

主动画蓝图状态:

你还可以展开MainAnimInstance

查看动画层状态:

展开AnimLayers,你能看到角色当前使用的所有动画层的设置及其状态,通过这些信息来排查响应的设置是否正确应用。

RewindDebugger

这是官方提供的动画调试工具,通过Tools->Debug->RewindDebugger打开调试面板。

确保游戏处于运行中,然后在调试面板中选择你要调试的角色。

点击红色的按钮开始录制,它会显示和记录关于该角色的所有动画相关的信息。

再次点击红色按钮结束录制后,你可以暂停游戏,然后对录制结果进行回放,以此来排查相关的问题。

性能衡量

GMS对系统中的关键代码,添加了性能衡量统计。

通过Console输入Stat GMS即可。

常见问题

角色不按预期移动

  1. 确认角色使用 GMS_CharacterMovementComponent,并挂载了 GMS_CharacterMovementSystemComponent。
  2. 检查当前 Movement Definition、Movement Set 和 Control Setting,确认 BackendSettings 中有 Character 后端设置及当前 Movement State 的参数行。
  3. 查看 Output Log 中的 LogGMS 错误。缺少后端设置或状态行时,GMS 不会应用该状态的后端参数。
  4. 如果 AI 的步态不符合速度,检查 Control Setting 的 SpeedToMovementStateCurve 和 Movement States;如果朝向异常,检查角色与 CMC 上是否启用了与 GMS 竞争的旋转设置。

配置详情见角色运动系统和运动控制设置。

与Sequence配合使用产生的问题

当你将角色拖拽到Sequence中时,实际的主动画蓝图实例会被ControlRig覆盖,从而在运行时会产生崩溃。移除此Track即可。

原因如下: