系统职责
UGGS_RagdollComponent 为角色提供布娃娃开始/停止流程、网络状态同步和恢复扩展点。它不提供骨骼网格、物理资产、动画蓝图或起身动画;这些仍由项目制作并配置。
接入流程
- 将组件添加到需要布娃娃行为的角色,并确认角色具有正确配置的 Skeletal Mesh。
- 在角色或派生组件中绑定/设置 Mesh Component;按项目的移动和动画状态控制何时允许开始或结束布娃娃。
- 通过
StartRagdoll与StopRagdoll触发流程。组件提供服务器 RPC 与可靠的 Multicast 切换路径,并复制恢复表现所需的状态;不要让客户端直接作为权威端更改共享状态。 - 在蓝图或 C++ 中实现
SelectGetUpMontage、OnRagdollStarted、OnRagdollEnded等事件,以连接项目自己的动画与状态机。
恢复配置
组件暴露布娃娃状态、地面结果与目标位置相关运行时数据。若启用“仅在结束于地面时播放起身 Montage”,再配置正面和背面起身 Montage;返回空 Montage 或不启用此项时,由项目动画逻辑处理恢复。测试时覆盖面朝上/下、地面/空中停止和网络远端表现。
网络与验证
开始/停止请求由服务器处理,再向网络相关实例广播状态切换;目标位置修正使用单独的服务器请求。服务器权限、角色移动复制、Mesh 物理设置和动画状态机需要一起验证。最小联机检查应同时观察服务器、本地拥有者和远端客户端,确认物理姿态、恢复时机与动画不会分叉。