【问题标题】:Mesh not animating when parts are spawned from script从脚本生成部件时网格没有动画
【发布时间】:2019-09-30 15:30:39
【问题描述】:

所以我从Toon Zombie Extended 获得了一个预制件。 预制件由多个头体和腿件组成,它意味着您可以生成它,删除您不想要的,然后创建一个新的预制件。

我有一个明智的想法是尝试生成它,删除所有部分,然后从 script 中随机生成它们。使用标准实例化。

Instantiate(heads[head], Vector3.zero, Quaternion.identity, transform);

问题是,以这种方式生成的部分似乎无法正确识别骨架。

整个对象似乎被锁定在 0,0,0 处无法动画或移动。

我不理解其中的某些部分吗? IFSO:我如何让这个想法发挥作用?

我给作者发了消息,没有回复。

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    根据动画的类型,您需要保留确切的名称。也许运行你的游戏并在层次结构中编辑它们只是为了测试。

    另一方面,您可能需要保留骨骼结构。您可以看到蒙皮网格渲染器有一个定义为“Bip001 Pelvis”的根骨骼——其他一切可能都需要位于该骨骼之下。只需与原始预制件进行比较即可。

    不同的想法:

    1. 将所有对象保留在预制件中,只禁用未使用的 (setActive(false))

    2. 如果需要,可以更改材质,甚至是蒙皮网格渲染器中的网格,而不是生成手臂和腿。

    【讨论】:

    • 好的想法 1,setActive 会阻止它更新并导致延迟吗?某些部分的不同网格。
    • 禁用的游戏对象不更新,不渲染。剩余的开销可能很少。不过我不会担心的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-08
    • 1970-01-01
    • 2012-10-12
    • 2014-09-03
    • 2015-02-01
    • 1970-01-01
    相关资源
    最近更新 更多