虚拟现实技术与开发
让角色栩栩如生地动起来
Mecanim动画系统:Unity 4.0引入的强大动画系统,基于Avatar骨骼重定向
AnimationClip:动画系统中最基本的概念,包含动画数据(位置、旋转变化)
| 方法 | 功能 |
|---|---|
| Play("AnimationName") | 播放指定动画 |
| Stop() | 停止当前动画 |
| CrossFade("Name", time) | 淡入淡出切换动画 |
| isPlaying | 是否正在播放 |
动画事件:在动画播放到某一点时执行指定函数
注意:事件函数必须是public,最多一个参数(int/bool/string/GameObject)
| 类型 | 说明 |
|---|---|
| None | 无动画 |
| Legacy | 旧版动画系统 |
| Generic | 通用动画(非人形) |
| Humanoid | 人形动画(推荐使用) |
Humanoid:人形动画类型,支持骨骼重定向
设置骨骼带动身体各部分肌肉的开合度
动画分割:将导入的长动画分割为多个独立的动画片段
Animator Controller:动画控制器,核心是动画状态机(State Machine)
Project → Create → Animator Controller
点击"+"添加参数:
作用:限制某些骨骼不播放动画,临时屏蔽身体部分运动
Layer层:实现层动画融合,同一套骨骼上两个动画同时播放
下半身跑步 + 上半身投掷标枪
Timeline:用时间线管理模型进度关系,制作过场动画、技能编辑器
思考题:简述游戏动画的几种类型及其原理
答案:关节动画、骨骼动画、单一网格模型动画。骨骼动画是最广泛应用的方式,骨骼按层次结构组成,皮肤蒙在骨骼之外