统一;预制动画

时间:2014-04-23 15:51:53

标签: c# animation unity3d 2d

试图在网络上找到这种问题,但却失败了......

这就是事情 - 我有一个预制游戏对象,它代表一个单位,更具体地说是肖像。它附有几个脚本,动画组件有两个动画:静态和选定 预制件被实例化,自由移动,并且在放置之后,可以单击它来选择它,除了执行一些代码之外,还应该启动选定的动画。

使用此代码:

    void OnMouseDown(){
//
//Some inside stuff
//
    if (this.GetComponent<UnitHandling> ().thisUnit.Selected)
        this.animation.Play("Selected");
    if(this.animation.IsPlaying ("Selected"))
        Debug.Log("Animation of selection is playing");
}

我检查过动画似乎正在播放(至少显示调试消息)但我看不到动画......我做错了什么?

1 个答案:

答案 0 :(得分:1)

尝试使用mechanim制作动画状态,然后使用它来播放:

GetComponent<Animator>().CrossFade("Selected", 0);

https://docs.unity3d.com/Documentation/ScriptReference/Animator.CrossFade.html https://docs.unity3d.com/Documentation/Manual/MecanimAnimationSystem.html