Animation(动画)
动画是游戏开发中必不可少的环节,游戏场景中角色的行走、跑步、弹跳、机关的打开,等等,这些都离不开动画技术的应用。
帧——动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。Unity中指实时渲染的一张图像
关键帧——指角色或者物体运动或变化中的关键动作所处的那一帧。
Animation的编辑
Delete Key:删除帧
Auto:自动的关键帧曲线切线状态
Free Smooth:自由光滑关键帧曲线切线状态
Flat:关键帧曲线切线处于水平状态
Broken:关键帧点曲线切线打断成两段,分别控制
Left Tangent:关键帧点左侧曲线的切线类型:自由、线性、常数
Right Tangent:关键帧点右侧曲线的切线类型:自由、线性、常数
Both Tangent:关键帧点两侧曲线的切线类型:自由、线性、常数
Animation组件
Animation:启用“自动播放”(Play Automatically) 时将播放的默认动画
Animations:可以从脚本访问的一系列动画。
Size:控制可添加Animation的数量
Element:为添加的Animation Clip,在使用Animation,通常会添加多个Animation来为模型增加更多的动作。
Play Automatically:启动游戏时是否自动播放动画?
Animate Physics:动画是否应与物理交互
Culling Type:控制不同类型的动画消隐,确定不播放动画的时间
AlwaysAnimate:动画消隐被禁用 - 即使物体在屏幕外也动画。
BasedOnRenderes:当渲染不可见时,动画被禁用。
BasedOnClipBounds:基于片段边界(在导入过程中计算)剔除,如果片段边界超出视图,则不会播放动画。
BasedOnUserBounds:基于用户定义的边界剔除,如果用户定义边界超出视图,则不会播放动画。
Animation Type:功能
None:不存在动画系统
Legacy:旧版模型动画
Generic:通用Mecanim动画
Humanoid:类人 Mecanim 动画系统
Animation导入
使用包含预先分割动画的模型
使用包含未分割动画的模型
向不包含动画的模型添加动画
使用多个模型文件导入动画 (Animations)
Animation常用属性
animatePhysics:打开时,动画将在物理循环中执行。这是仅在与运动学刚体结合是有用的。
clip:默认的动画片段
cullingType:这个Animation组件的消隐类型:AlwaysAnimate、BasedOnRenderers、
isPlaying:是否会正在播放某个动画片段
playAutomatically:是否在项目运行时自动播放该组件的animation属性所指的动画片段,true表示自动播放
this[string]:返回中括号中所示名字所指的动画状态
wrapMode:动画循环模式
Animation常用实例方法
bool Play()
用于没有任何混合的动画播放。动画会突然开始播放而没有任何混合。 如果动画不能被播放(没有动画剪辑或者没有默认动画),Play()将
返回false。
Stop()
停止所有当前Animation正在播放的动画。停止一个动画会让动画重回开始位置。
CrossFade()
在一定时间内淡入名称为animation的动画并且淡出其他动画。
注意:如果模式是PlayMode.StopSameLayer,在同一层的动画将在动画淡入的时候淡出。如果模式是PlayMode.StopAll,所有动画将在淡入
的时候淡出。
Blend()
混合动画。
AnimationClip类属性
length:动画的长度,以秒计算(只读)
frameRate:被采样的关键帧帧速率(只读)
wrapMode:在动画状态设置使用的默认循环模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)