在本教程中,您将通过向好战的小丑扔馅饼来学习Unity动画的来龙去脉。


引擎入门 | Unity动画简介 (1)_java


带有动画的游戏会给人以更多的乐趣。幸运的是,Unity的动画系统Mecanim可以为GameObjects设置动画。在本教程中,您将通过向动的小丑扔蛋糕来学习动画的基础知识。


在整个教程中您将学习如何:

 1. 创建动画

2. 使用状态机在动画之间切换

3. 将动画连接到脚本


在本教程结束时,无论有没有小丑您都将可以为自己的游戏增添趣味。


注意:本教程适用于初学者。尽管不需要任何先决条件,但我建议您在我们的【Unity:入门教程】中熟悉Unity用户界面。


本篇内容

前言


1. 入门


2. 目标:您的第一个动画


文章末尾可免费获取教程源代码


本篇Unity动画教程篇幅较长,分为八篇,本篇为第一篇。


1.入门


下载本教程的源代码,然后在Unity中打开它。它为您提供了一些初始的图形和音频资产,以及一个可以让您随心所欲的场景。


(本教程中使用的音乐是:“马戏团华尔兹”凯文·麦克劳德(incompetech.com)根据知识共享许可:由Attribution 3.0,http://creativecommons.org/licenses/by/3.0/)


为了更轻松地遵循本教程,请从右上角的下拉菜单中选择Default layout,现在,Unity应该看起来像这样:


引擎入门 | Unity动画简介 (1)_java_02


在项目浏览器中双击GameScene,然后单击顶部的“播放”按钮以运行入门项目。您会看到一个彩色的背景。点击它扔一块蛋糕!蛋糕是使用物理学进行动画处理的,这不是本教程的一部分。


引擎入门 | Unity动画简介 (1)_java_03


现在,您的基本项目已启动并正在运行。设置了蛋糕,准备好开始了


2.目标:您的第一个动画


现在添加一个小丑。通过在Hierarchy中选择Main Camera,然后从菜单中选择“GameObject\Align View to Selected”,将“Hierarchy”与“ Camera’s view”对齐。


将“Models\Clown”从项目浏览器拖放到Hierarchy中。


引擎入门 | Unity动画简介 (1)_java_04


在Inspector面板中,确保“Position”设置为(0,0,0)。将“Rotation”更改为(0,180,0):


引擎入门 | Unity动画简介 (1)_java_05


是时候创建您的第一个动画了。小丑应先向左移动,然后向右移动,最后回到初始位置。


从菜单中选择Window \ Animation。该视图使您可以创建和操纵动画。将其拖放到控制台视图旁边。


引擎入门 | Unity动画简介 (1)_java_06


在层次结构中,确保仍然选择小丑。在“Animation View”中,您将看到以下文字:“To begin animating Clown, create an Animator and an Animation Clip” 按下面的Create按钮。在文件对话框中,输入Move Horizontally作为文件名,然后按Save。


结果,Unity创建了两个文件:MoveHorizontally.anim和Clown.controller。此外,它还将一个Animator Component添加到Clown(1),它指向Clown.controller(2):


引擎入门 | Unity动画简介 (1)_java_07


目前,您只需要关注Move Horizontally。这是 Animation Clip,可让您为小丑的多个属性设置动画,例如:


1. 位置,旋转和比例

2. 材料颜色和光强度

3. 音量

4. 您自己的脚本中的变量


您可以使用“ Animation View”执行此操作。它相当复杂,因此请看一下最重要的区域:


1. Property List以添加或删除要设置动画的属性。

2. 预览或修改动画剪辑的特定帧(样本)的时间线。数字对应于秒和样本,因此3:14表示3秒和14个样本。

3. 请参见“Dope Sheet”,以了解多个属性的关键帧时序。


引擎入门 | Unity动画简介 (1)_java_08

本期的教程就到这里结束了,我们下期会继续Unity动画的后续教程



END


引擎入门 | Unity动画简介 (1)_java_09


Unity架构师之路


Unity教程 | 墙外的Unity | 免费资源 | 游戏开发日记


长按关注我们添加微信获取教程源代码


引擎入门 | Unity动画简介 (1)_java_10

(后台回复“源代码”)