Unity3D一个简单的动画混合Demo
来源:互联网 发布:领导风格测试软件 编辑:程序博客网 时间:2024/05/16 11:18
先说说Unity3D关于动画方便的东西,Animation Mixing (动画混合),什么是动画混合呢?举个简单的例子吧,一个模型现在又3种动作,分别是idle、walk、shoot,在Unity3D中一个Layer只能播放二种动画,shoot动作只影响左肩膀的骨骼,而不会影响腿部的动作,所有这里就可以把shoot和walk进行Mixing。
function Start ()
{
//增加一个动画剪辑片段
//
animation.AddClip(animation["shoot"].clip, "shootUpperBody");
animation["shootUpperBody"].AddMixingTransform(transform.Find("mover/gun")); //@parm 路径
animation["shootUpperBody"].AddMixingTransform(transform.Find("mover/roothandle/spine1"));
//设置动画模式
animation.wrapMode = WrapMode.Loop;
animation["jump"].wrapMode = WrapMode.Clamp;
animation["shoot"].wrapMode = WrapMode.Clamp;
animation["shootUpperBody"].wrapMode = WrapMode.Clamp;
// Put idle and run in a lower layer. They will only animate if our action animations are not playing
animation["idle"].layer = -1;
animation["run"].layer = -1;
animation.Stop();
}
function Update () {
if (Mathf.Abs(Input.GetAxis("Vertical")) > 0.1)
{
animation.CrossFade("run");
animation["run"].speed = Mathf.Sign(Input.GetAxis("Vertical"));
}
else
animation.CrossFade("idle");
if (Input.GetButtonDown ("Jump"))
{
animation.CrossFade("jump", 0.3);
}
if (Input.GetButtonDown ("Fire1"))
{
if (animation["run"].weight > 0.5)
animation.CrossFadeQueued("shootUpperBody", 0.3, QueueMode.PlayNow);
else
animation.CrossFadeQueued("shoot", 0.3, QueueMode.PlayNow);
}
- Unity3D一个简单的动画混合Demo
- unity3d 安装+一个简单的小demo
- 命令模式demo-一个简单的动画回放功能
- unity3d中的BlendShape混合动画
- Unity3D之简单的帧动画
- Unity3D之简单的帧动画
- Unity3D之简单的帧动画
- 基于HTML5的简单游戏动画Demo
- 简单的四种动画Demo
- 一个简单的Flex Demo
- 一个简单的触发器(Demo)
- 一个简单的Gephi Demo
- 一个简单的缓存Demo
- 一个简单的广播Demo
- Lucene5 一个简单的Demo
- 一个简单的ReactNative demo
- WebSocket -- 一个简单的Demo
- 一个简单的线程demo
- Extjs4---用RowEditing对数据进行增加,修改
- C++ Socket编程步骤
- SQL Server 2008 定时作业的制定
- ECSide基于数据库的分页、排序、过滤的实现
- c#下实现ping操作
- Unity3D一个简单的动画混合Demo
- strstr函数
- 【转】使用JPA的EntityManager.persist()方法无法保存到数据库的问题
- java web总结
- 枚举及为什么要用1,2,4,8这些2的n次幂来表示枚举的值
- DataSet,DataTable,List实现将Sql Server表中的数据绑定到GradView中
- Power Socket程序设计
- html5学习之多媒体播放
- Android驱动开发之earlysuspend睡眠模式--实现代码