Unity中动画仅移动Box Collider不移动门对象问题求助
Unity门动画仅碰撞器移动、门本体不动问题解决方案
核心问题排查&修复步骤
1. 修复动画关键帧绑定错误
该问题90%以上的诱因是录制动画时选中的对象错误:你录制位移关键帧时选中了带Box Collider的子对象,而非门的整体父对象。
- 打开
Animation窗口,依次选中4个动画片段(close/opening/open/closing) - 检查关键帧列表中的Transform属性归属:
- 若属性路径指向
Box Collider所在的子对象/Transform/Position,说明绑定错误 - 正确路径需指向你要整体移动的门根对象的Transform属性
- 若属性路径指向
- 修复方式:删除错误绑定的关键帧,选中门的根父对象后重新录制位移动画;也可右键错误属性行选择
重新绑定选择对象,将关键帧映射到正确对象上。
2. 修正Animator组件挂载位置
如果Animator组件挂载在了碰撞器所在的子对象上,动画只会作用于该子对象,自然仅碰撞器产生位移:
- 将Animator组件移动到门的根父对象上
- 确认Animator Controller关联的所有动画的关键帧都绑定到了根父对象
3. 修正对象层级父子关系
如果门的视觉网格对象和碰撞器对象为平级关系、未做父子绑定,碰撞器移动时不会带动网格:
- 将门的Mesh Renderer所在的网格对象,设置为动画控制的移动对象的子级,父级移动时会自动带动所有子对象位移。
验证方法
修改完成后直接在Animation窗口中预览动画,无需进入Play模式:如果预览时门本体可以正常移动,说明问题已修复,再进入运行模式测试即可。
内容的提问来源于stack exchange,提问作者JackQx
相关产品推荐
相关产品推荐

