启用动画时脚本不起作用

时间:2014-09-16 11:08:43

标签: c# unity3d blender

我正在测试使用脚本移动多维数据集。还有一个简单的多维数据集滚动动画,它应该在我移动多维数据集时激活。

但是,当在“检查器”选项卡下“检查”动画时,立方体不会移动。如果我禁用动画,立方体只会移动,因此当我移动立方体时甚至无法看到动画是否正常工作。多维数据集从Blender导入Unity。请告诉我我做错了什么。

脚本如下。这是一个非常简单和小的测试文件,因此我在Dropbox上附加了我的Unity和Blender文件以供参考,如果有帮助的话。谢谢。

指向Unity Project的链接:

https://www.dropbox.com/sh/cvpjf26i31o1ell/AABmLMqYV4tPiG7qruph2D4Ra?dl=0

链接到Blender模型和动画:

https://www.dropbox.com/s/deowh3yk5wpse1u/box.blend?dl=0

立方体的移动脚本:

public float speed = 10.0F;
    Animator anim;

    void Update()
    {
        float translation = Input.GetAxis("Vertical") * speed;
        translation *= Time.deltaTime;
        transform.Translate(0, 0, translation);

        Animating(translation);
    }

    void Animating(float v)
    {
        bool roll = v != 0f;
        anim.SetBool("Roll", roll);
    }

1 个答案:

答案 0 :(得分:1)

我已更新项目并将其重新放回dropbox

https://dl.dropboxusercontent.com/u/9274763/MechanimTester%20v2.zip

我添加了一个新的emtpy游戏对象,并使搅拌机多维数据集成为其中的一个。

TestScript现在附加到新游戏对象并控制其位置。 现在,动画仅适用于子对象,因此动画不再存在 干扰立方体的位置。

(正在发生的事情是动画正在修改游戏对象的变换 - 现在它的孩子不会影响其父级,因此它不会重置整个游戏对象的位置

这有意义吗?     盖瑞特