AnimatorController动画融合树
通过Unity动画状态机,能帮我们轻松处理转换各个动画片断,达到想要的效果,但是如果仅仅是一个个动画的硬生生的切换,那么看起来就非常突然,而不真实了,在质量要求比较高的游戏中,特别是动作游戏,我们就不能直接简单地用Translation连起来了,而应该使用动画融合树。
准备工作:一个人物模型,一个待机动画,一个行走动画,一个奔跑动画。
通常游戏中,我们人物从待机到跑直接切换就行,今天我们加一个行走的过渡效果吧。
创建一个动画控制器AnimatorController,将人物的Animator组件的Controller属性指向我们刚才创建的AnimatorController。
在AnimatorController中添加一个空状态Idel,然后设置动画片断为我们的待机动画。
然后再创建一个动画融合树WalToRun:
双击融合树进入编辑状态,在右侧的Inspector面板中的Motion列表中添加两个元素,从上到下依次选择我们的行走动画和奔跑动画。
创建float类型动画参数Run,将融合树的Parameter参数设置为Run:
最后,将待机状态Idel使用Translation连接到融合树,设置Condition参数为 Run Greater 0.1,反过来融合树到Idel的连接Condition设置为 Run Less 0.1。
一切就绪,在Player身上添加脚本DearMove:
using UnityEngine;
using System.Collections; public class DearMove : MonoBehaviour
{
private Animator anim; //动画状态机
private int RunFloat; //Run参数ID
private float vertical; //前进 void Awake ()
{
anim = gameObject.GetComponent<Animator>();
RunFloat = Animator.StringToHash("Run");
} void Update ()
{
//呼叫方向控制
vertical = Input.GetAxis("Vertical");
//根据前进控制,设置Run参数的值,
//后面两个参数可不加,这里是为了让从走到跑看得更明显
anim.SetFloat(RunFloat, vertical, 1f, Time.deltaTime);
}
}
运行游戏,按住 W 键,可以看到Player从走慢慢过渡到跑咯!
AnimatorController动画融合树的更多相关文章
- BleedTree动画混合树
通过Unity动画状态机,能帮我们轻松处理转换各个动画片断,达到想要的效果,但是如果仅仅是一个个动画的硬生生的切换,那么看起来就非常突然,而不真实了,在质量要求比较高的游戏中,特别是动作游戏,我们就不 ...
- AnimatorController动画遮罩
游戏中,我们的人物在某些时候,可能在一个时间点在做两件事,这样就需要同时播放两个动画,但我们肯定不能简单将其叠加,比如移动着开枪.攻击.挥手等等,那么在Unity中我们应该怎样实现这样的功能呢?且听我 ...
- spine动画融合与动画叠加
spine动画融合与动画叠加 一.动画融合setMix 1.概述:两个动作之间的平滑过渡 参数duration为需要多少时间从fromAnimation过渡到toAnimation,过渡时间为动画重叠 ...
- jQuery animate方法开发极客标签Logo动画融合效果
在线演示 本地下载 jQuery的animate方法基础使用,演示如何生成一个jQuery animate方法开发极客标签Logo动画融合效果 相关代码录播:jQuery animate方法开发极客标 ...
- Unity---动画系统学习(6)---Avatar Mask动画融合、Layers动画分层、IK反向动力学
1. 介绍 Avatar Mask(动画融合) 前面我们一直介绍的都是动画混合,一般用于解决边跑边转弯的问题.而动画融合一般用于解决例如边跑边挥手的问题. 简单说就是让跑步去控制腿的骨骼,挥手控制手的 ...
- Spine学习五- spine动画融合
在许多地方,都需要用到动画融合,unity的新版动画系统已经能够很方便的进行动画融合,那么使用spine的动画状态机的情况下,如何来进行动画融合呢? 官方有两种方案,一种是使用混合动作实现,另一种是使 ...
- BleedTree动画混合树[Unity]
Unity在中土大陆的大肆推广能从广泛的中文翻译资料中看出.所以,手册才是王道. 游戏动画中的一个常见任务是在两个或更多相似运动之间混合.最佳的已知示例可能是根据角色速度混合行走和奔跑动画.另一个示例 ...
- Unity3D之Mecanim动画系统学习笔记(九):Blend Tree(混合树)
认识Blend Tree 我们在Animator Controller中除了可以创建一个State外还可以创建一个Blend Tree,如下: 那么我们看下新创建的Blend Tree和State有什 ...
- unity 对Animator动画系统的研究
unity的新动画系统叫Mecanim,使用Animator来取代旧系统Animation,按Unity文档的惯例:知识点主要分2部分:unity manual和unity script,读者可以边看 ...
随机推荐
- CFround#380 div2
题目链接:http://codeforces.com/contest/738 A题:SB题. B题:SB题. C题:二分. D题:贪心. E题:乱搞. F题:设f[i][j][k]代表甲先手,左边消去 ...
- CrashMe分析教程1 - BreakPoint
首先,谢谢 Robert Kuster 为我们提供了这么好的CrashMe项目. 很多人想寻找一个CrashMe分析的教程, 我也想要, 但是似乎网络里没有, 所以我就决定用业余时间写一个小系列来共享 ...
- 端口(port)的安全模式(security mode)
1. Cisco29系列交换机可以做基于2层的端口安全 ,即mac地址与端口进行绑定.2. Cisco3550以上交换机均可做基于2层和3层的端口安全, 即mac地址与端口绑定以及mac地址与ip地址 ...
- JTable
final Table table = new Table(parent, SWT.NONE | SWT.FULL_SELECTION); final GridData gd = new GridDa ...
- NYOJ 299
(前言:这是一道关于矩阵快速幂的问题,介绍矩阵快速幂之前,首先看"快速幂"问题. 在前面的博客里有记录到快速幂取模算法,不过总体的思想总是和取模运算混淆在一起,而忽略了" ...
- 浙大pat 1012题解
1012. The Best Rank (25) 时间限制 400 ms 内存限制 32000 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue To eval ...
- [Q]图框识别问题
一个CAD文件可能包含很多张(页)图,每张图通常包含在一个图框里,这个图框通常是矩形的. 打图精灵识别图框所在区域,然后打印该区域,打图精灵识别图框实际上是识别最外侧的矩形(无矩形打印见下文) 如A矩 ...
- 按键精灵*ff
Function gethttp(URL) Set objXML=CreateObject("Microsoft.XMLHTTP") objXML.Open "Get&q ...
- ELK 日志系统搭建配置
logstash是一个数据分析软件,主要目的是分析log日志.整一套软件可以当作一个MVC模型,logstash是controller层,Elasticsearch是一个model层,kibana是v ...
- springmvc配置aop
直接看代码 springmvc中的配置aop对 controller和它的子包进行拦截 springmvc中的配置 <!--xml头部配置需要有这几行代码--> xmlns:aop=&qu ...