PuppetMaster 的使用步骤

这些步骤的作用是为了确保使用 PuppetMaster 插件时,角色的物理和动画系统能够正确地协同工作。以下是每个步骤的详细解释:

  1. 将人形角色模型拖动到场景并附加 BipedRagdollCreator.cs 组件

    • 这个步骤是为了创建一个布娃娃(Ragdoll)物理模型。点击“Create a Ragdoll”按钮会自动生成布娃娃的骨骼和碰撞器,点击“Done”按钮完成设置。
  2. 角色添加 PuppetMaster.cs 组件,然后单击“Set Up PuppetMaster”按钮

    • 这个步骤是为了将 PuppetMaster 系统应用到角色上。PuppetMaster 会生成角色的副本,并设置必要的物理和动画组件。删除原来的角色是为了避免重复的物理和动画计算。
  3. 把角色 Animator 组件的 Culling Mode 改为 Always Animate

    • 这个步骤确保角色的动画在任何情况下都能被更新,即使角色不在摄像机视野内。这对于保持动画和物理同步非常重要。
  4. Behaviours 物体下创建空物体并附加 BehaviourPuppet.cs 组件

    • 这个步骤是为了添加行为控制组件,BehaviourPuppet 组件可以控制角色在不同情况下的行为。复制官方例子的值可以确保设置正确。
  5. 修改层级,把 PuppetMaster 名称的物体设置成木偶层和动画层的碰撞器区分开

    • 这个步骤是为了确保物理碰撞器和动画碰撞器在不同的层级上,以避免不必要的物理交互。
  6. 在 PuppetMaster 名称物体上添加 LayerSetup.cs 组件,并把动画物体拖动赋值 Character Controller Layer

    • 这个步骤可以替代第五步,通过 LayerSetup 组件自动设置层级。
  7. 模型上的所有 Skinned Mesh Renderer 组件的 Update When Offscreen 打钩

    • 这个步骤确保角色的网格渲染器在角色不在摄像机视野内时仍然更新,以保持动画和物理同步。
  8. 非人形模型使用 PuppetMaster 布娃娃

    • 这个步骤是为了将非人形模型转换为可配置关节(Configurable Joints),以便 PuppetMaster 可以正确处理它们。
  9. RagdollEditor.cs 布偶娃娃编辑器

    • 这个步骤是为了调整布娃娃碰撞器的位置和旋转,以确保物理模拟的准确性。调整好后可以移除该组件。

虽然你只做到第二步就能工作,但后续步骤是为了确保系统的稳定性和准确性,特别是在复杂的场景中。完成所有步骤可以避免潜在的问题,并确保角色在各种情况下都能正确地进行物理和动画模拟。

原文

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容