unity动画融合

1、抛砖引玉

在大型复杂的场景中,一定遇到过手在鼓掌,头在摇头,腿又是其他动作的要求,但是这些东西又不能做一起,因为有时候要把某个动画单独使用,这时候就用到了动画融合,利用动画状态机分层机制,可以自己在分层的基础上再建动画树,进行更加复杂的操作,下面开始流程

2、正文开始
2.1导入动画

在Rig的AnimationType中选择"Humanoid"人形动画, 然后回到Animation属性下

在这里可以预览动画,如果没有预览动画窗口,可以双击下方的横栏,就会出现动画预览窗口

预览一遍后,确定动画可以播放且没有问题,修改如下参数:

因为我这个动画是敬礼动画,所以我起名字叫敬礼,完成上述参数勾选后,拉到最底下,点击"Apply"应用,然后我们把这个模型下的动画拉到Hierarchy面板上,会自动生成一个状态机,将状态机挂到模型上,并且给模型绑定骨骼,然后双击刚刚创建的Animator文件,弹出Animator窗口

然后我们点击右上角+创建新层级

这时候会创建新层,将其命名为idle或者其他名称,我这里命名为head Layer,这个用来管理头的

然后我们要在Assets下创建动画遮罩右击Assets-Create-Avatar Mask,命名为head,将这个遮罩挂到刚刚创建的层中

选择后,把层级的weight拉到1,然后点击刚刚创建的遮罩

因为是头部动画,只要头动,所以可以点击其他部位,把其他部分禁用,只剩下头

按照上述的,我们再建一个身体层

2.2 调用动画

打开Animator窗口,点击Parameters,新建两个int,一个叫head、一个叫body,分别把这个设置为不同动画的触发条件

我这里设的是等于1时触发,另一个也是一样,然后在代码中调用

运行工程,按下Q即可看到人物一边摇头一边敬礼

还有就是要注意,有的可能会说要选Additive,但是我用的时候发现敬礼动画手指会变麻花,我在头的动画遮罩中除了头,其他的都禁用了,手的也只开放了手的遮罩

好了,以上就是全部内容了,咱们下次见

相关推荐
jtymyxmz7 小时前
《Unity Shader》6.4.3 半兰伯特模型
unity·游戏引擎
AA陈超7 小时前
ASC学习笔记0001:处理目标选择系统中当Actor拒绝目标确认时的调用
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
我的golang之路果然有问题9 小时前
mac配置 unity+vscode的坑
开发语言·笔记·vscode·macos·unity·游戏引擎
于小汐在咯9 小时前
【虚拟现实技术】在Unity里创建一个简单的AR项目
unity·ar·vr
HahaGiver66612 小时前
Unity Shader Graph 3D 实例 - 一个简单的红外线扫描全身效果
3d·unity·游戏引擎
o***Z44814 小时前
免费的WebAssembly游戏引擎,AssemblyScript
游戏引擎·wasm
雪下的新火1 天前
Blender:法线图&黑白图
游戏·unity·游戏引擎·blender·笔记分享
HahaGiver6661 天前
从0到1做一个“字母拼词”Unity小游戏(含源码/GIF)- 实现多单词顺序通关进度逻辑
unity·游戏引擎·游戏程序
Dr.勿忘2 天前
Unity一分钟思路---UI任务条:宝箱位置如何准确卡在百分比位置上
ui·unity·游戏程序·屏幕适配
weixin_424294672 天前
Unity 实现 ScrollBar 值变化控制 Panel 位置的方法
unity·游戏引擎