美文网首页
Unity3D 动画系统(Animation)

Unity3D 动画系统(Animation)

作者: 砍了那只鸭 | 来源:发表于2017-02-23 11:00 被阅读0次

    现版本unity提供自带的两种动画状态机Animation和Animator用来控制场景中动画的运行,其实就是前面的是旧版的后面是新版的,所以大同小异。

    图片1.png

    首先你要有一个模型,一般导入的模型都会自带动画,如果没有动画可以自己录制,这里就要用到Animation了(终于找到了以前用Animation做的动画)。

    图片2.gif

    铲车抬斗这个动画演示起来很复杂,所以这里就做些简单点的...例如让轮子动起来。有些模型拿过来就是个空盒,啥都没有,只有个坐标,我们要给它做动画的
    话就要先给它添加Animation组件。

    图片3.png

    然后选择在Hierarchy视图选中该模型,点菜单栏Window里的Animation。

    图片4.gif 图片5.gif 图片6.png

    这里是以秒为单位,时间轴位置表示该模型到这个时间点的变化,把时间轴拉最后,把动画的长度设为一秒,当然,时间长度都可以随你拉长。

    图片7.gif 图片8.png

    然后现在就可以对我们的模型进行操作了。

    图片9.gif 图片10.gif

    这样就录制完了,可以关掉该窗口,看回Animation组件,

    图片11.png

    我们再挂一个脚本控制模型,按W键运行动画。

    public class MoveS : MonoBehaviour {   
        private Animation ani;
        void Start()
        {
            ani = this.GetComponent<Animation>();
        }
    
        void Update () {
            if (Input.GetKeyDown(KeyCode.W))
            {
                ani.Play("Move2");
            }
    
        }
    }
    

    运行场景,按W键动画就播放了。


    图片12.gif

    这里篇幅够多了,下一篇文章再来讲解Animator~

    相关文章

      网友评论

          本文标题:Unity3D 动画系统(Animation)

          本文链接:https://www.haomeiwen.com/subject/lswvwttx.html