Unity零基础到入门 ☀️| Unity Animation实战演练:简单模仿坦克开炮动画制作
【摘要】 🧡Animation实战演练:简单模仿坦克开炮动画制作我们这里用一个简单的实例来说一下Animation的简单用法还是这个坦克模型,我要给他做一个简单的开炮动画这里我们选中这个坦克模型,按照以下图示三步操作选中游戏对象,打开Animation编辑窗口然后进入这个画面,点Create创建动画,然后选择一个存放的地址,在Assets目录下单独新建一个管理动画文件夹就行~因为我这里想要的效果是...
🧡Animation实战演练:简单模仿坦克开炮动画制作
- 我们这里用一个简单的实例来说一下Animation的简单用法
- 还是这个坦克模型,我要给他做一个简单的开炮动画
- 这里我们选中这个坦克模型,按照以下图示三步操作
- 选中游戏对象,打开Animation编辑窗口
- 然后进入这个画面,点Create创建动画,然后选择一个存放的地址,在Assets目录下单独新建一个管理动画文件夹就行~
- 因为我这里想要的效果是让坦克的炮筒(GameObject)前后移动,做成一个简单的开炮动画
- 所以我这里选择坦克的炮筒控制它的坐标位置前后变化来作为一个开炮动画!
- 那这一步的目的就是控制GameObject的Position位置,按一下图示做就行
- 上述步骤完成后然后就是以下图片所示模样:
-
双击图示红色框部分可以新建一个关键帧,中间三个就是我新建的关键帧,这个关键帧可以左右拖动,代表关键帧执行的时间节点
-
有小伙伴可能想问这个关键帧有什么用呢,请接着往下看,就知道它的作用了!
-
然后我们把这五个关键帧的Position.z分别设置成:0,1,0,-1,0
-
将图中那条白色竖线左右拖到关键帧上设置Position.z的属性即可,输完数值别忘了点回车,确认数值已经输上!
- 然后有的小伙伴又要问了,这几个数值有啥用呀,非要这样设置嘛?
- 废话不多说,先来看一下这样设置出来的效果图吧
- 虽然效果有点陋~但是勉强能达到我想要的一个开炮使得炮筒移动的效果。
- 我们上面的动画设置的五个关键帧,分别是Position.z的值为:0,1,0,-1,0
- 第一个关键帧Position.z的值设置为0,默认值我们没改动
- 第二个关键帧将Position.z的值设置为1,让炮筒向前移动一米
- 第三个关键帧将Position.z的值设置为0,让炮筒复位
- 第四个关键帧将Position.z的值设置为-1,让炮筒向后移动一米
- 第五个关键帧将Position.z的值设置为0,让炮筒再复位
-
这样就达成了上图中的效果,炮筒前后移动一米,然后初末位置相同,形成一个简单的无缝循环动作。就达成我们的目的啦~
-
关键帧就是在一个我们指定的时间,将设置的动画属性修改成我们设置的值
-
上面五个关键帧,相当于五个时间节点,在每个时间节点都设置好了他们应该执行的属性
-
然后将这个文件拖到Animation的组件上在脚本中调用执行动画的代码就可以啦
💛脚本代码控制动画API
- 上面的步骤设置完成之后,就可以在想使用动画的地方调用啦~
- 下面是简单的动画播放和停止的调用方法
-
Play(“TankAnimation1” );,播放动画,传入参数为动画名字
-
Stop(“TankAnimation1”) ,停止动画,传入参数为动画名字
-
CrossFade(“TankAnimation1”, 0.5f); ,有过度的切换动画,传入参数(动画名字,过度时间)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)