我正在制作多人游戏,但我被困在同步动画上。我当前的播放器层次结构如下:
问题是 Marine 对象使用 IK 向上/向下瞄准,这意味着我使用 OnAnimatorIK 函数。为了使用 OnAnimatorIK,Animator 组件必须附加到与使用 OnAnimationIK 的脚本相同的游戏对象上。这意味着我必须将 Animator 附加到 Marine 游戏对象。如果我这样做一切正常(如果不尝试网络动画)。
现在,如果我将 Network Animator 附加到Player对象,动画将不会远程更新。当我尝试将 Network Animator 附加到Marine对象时, Network Identity组件也会自动添加并且无法删除。如果我尝试使用附加到 Marine 对象的网络身份组件进行构建,我会收到错误消息“您只能附加一个网络身份,并且它必须附加到根对象”。这意味着我应该将我的 Animator 组件以及 PlayerIKHandler 脚本移动到Player对象,以摆脱重复的 Network Identity 组件。
如果我确实将 Animator 组件移动到 Player 对象,它会破坏我的动画(模型处于 T 姿势),我什至在本地也看不到任何动画。
显然我做错了什么,我只是不知道为什么。如何在子对象上使用动画器同步动画,或者如果动画器组件附加到播放器(只是一个带有脚本的虚拟胶囊),我如何为模型制作动画。