animationClip 动画剪辑,用来播放动画;
AnimationEvent 类似于SendMessage让你调用一个脚本函数,这个脚本是动画播放的一部分。动画事件函数支持0参数或一个参数,参数可以是浮点型,字符串,object或AnimationEvent。
animationCurve 生成动画剪辑的曲线的集合,存储关键帧信息。
参考自unity圣典,实际测试过。下面的代码只挑选其中部分方法和属性加以说明。。。。。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class AnimationTest : MonoBehaviour {Animation _animation;AnimationState _state;public AnimationClip clip01;public Transform guge;AnimationEvent _event;// Use this for initializationvoid Start () {_animation = GameObject.Find("aaa").GetComponent<Animation>();}void Update (){if (Input.GetKeyDown(KeyCode.A)){//  print("以秒为单位的动画长度:"+_animation.clip.length);//  print("被取样关键帧的帧速率:"+_animation.clip.frameRate);//定义一个animationEvent_event = new AnimationEvent();//事件添加到动画播放的具体时间点_event.time = 0.2f;//动画事件的方法名,注意拥有该方法的脚本必须放在拥有该animation的游戏对象上,不然会报错(没有接收者)_event.functionName = "eventTest";//给剪辑添加动画事件,注意该动画事件只能持续在播放模式下,直到退出播放模式或者//玩家退出。如果想给剪辑添加一个固定的事件,那么请在unity编辑器下添加。_animation.clip.AddEvent(_event);}}void eventTest(){print("animationEvent成功触发");}
}
if (Input.GetKeyDown(KeyCode.A)){_animation.clip.ClearCurves();//从动画剪辑中清除所有动画曲线(移除了该动画所有关键帧)}
 if (Input.GetKeyDown(KeyCode.A)){//直线包括开始时间、开始值、结束时间、结束值AnimationCurve curve = AnimationCurve.Linear(0, 1, 2, 3);AnimationClip clip = new AnimationClip();//默认情况下 clip.legacy是false  直接播放会报错clip.legacy = true;//设置动画剪辑的动画曲线,如果曲线为null,曲线将被移除;如果曲线属性已经存在,那么曲线将被替换。//四个参数含义://1:将该曲线应用到的游戏对象的路径 ,比如"root/spine/leftArm",如果为空,则表示动画剪辑附加的游戏物体。//2:要产生动画效果的属性类型//3:属性的名字(通常的名称是: “localPosition.x”, “localPosition.y”, “localPosition.z”, “localRotation.x”, //“localRotation.y”“localRotation.z”, “localRotation.w” “localScale.x”, “localScale.y”, “localScale.z”.) //4:动画曲线clip.SetCurve("", typeof(Transform), "localPosition.x", curve);_animation.AddClip(clip, "test");_animation.Play("test");}

unity旧动画系统之animationClip/animationEvent/animationCurve相关推荐

  1. Unity 3D 动画系统(Mecanim)|| Unity 3D 人形角色动画(Avatar)

    Unity 3D 动画系统(Mecanim) Mecanim 动画系统是 Unity 公司推出的全新动画系统,具有重定向.可融合等诸多新特性,可以帮助程序设计人员通过和美工人员的配合快速设计出角色动画 ...

  2. Unity 3D 导入三维模型||Unity 3D 动画系统简介(Mecanim)

    将三维模型导入 Unity 3D 是游戏开发的第一步. 下面以 3ds Max 为例,演示从三维建模软件中将模型导入 Unity 3D 的过程,具体步骤如下. 在 3ds Max 中创建房子模型. 执 ...

  3. Unity进阶 - 动画系统 - 给人物角色制作动画

    Unity进阶 - 动画系统 - 给人物角色制作动画(点击免费试学本节) 上一篇文章,我们对Unity进阶 - 动画系统 - Mecanim动画系统有了一定的认识,本节课我们给人员角色制作一些简单的动 ...

  4. Unity Mecanim动画系统 之 动画层(Layers)和 动画遮罩(Avatar Mask)的简单使用

    Unity Mecanim动画系统 之 动画层(Layers)和 动画遮罩(Avatar Mask)的简单使用 目录 Unity Mecanim动画系统 之 动画层(Layers)和 动画遮罩(Ava ...

  5. Unity Mecanim动画系统 之 IK(Inverse Kinematics即反向动力学)的相关说明和简单使用

    Unity Mecanim动画系统 之 IK(Inverse Kinematics即反向动力学)的相关说明和简单使用 目录 Unity Mecanim动画系统 之 IK(Inverse Kinemat ...

  6. Unity Mecanim动画系统 之 动画混合树(Blend Trees)的简单使用

    Unity Mecanim动画系统 之 动画混合树(Blend Trees)的简单使用 目录 Unity Mecanim动画系统 之 动画混合树(Blend Trees)的简单使用 一.简单介绍 二. ...

  7. unity velocity_Unity动画系统详解5:BlendTree混合树是什么?

    摘要:"Animator中有一个功能,用来解决多个动画之间的混合,经常用于移动动画之间的混合,这个功能叫做BlendTree,混合树." 洪流学堂,让你快人几步.你好,我是跟着大智 ...

  8. Unity Mecanim 动画系统简介

    目录 前言 正文 1. Animator 组件 2. 创建 AnimatorController 3. 创建新状态 4. 状态切换 Has Exit Time: 前言 Mecanim是Unity提供第 ...

  9. Unity老动画系统Animation

    1.创建老动画系统 给要制作动画的GameObeject添加Animation组件 2.Animation参数 Animation:默认播放的动画 Animations:该动画组件可以控制的所有动画 ...

  10. Unity用户手册-动画系统Animator

    动画系统Animator 动画类型 Legacy 基础的动画 Generic 动画,包含动画状态机 Humanoid 人形动画,包含动画状态机 Update Mode Normal 动画播放将与Upd ...

最新文章

  1. python的中文翻译-再聊聊Python中文社区的翻译
  2. 滴滴开源Android插件化框架VirtualAPK原理分析
  3. linux中查看文件指定行的数据
  4. leetcode 557. Reverse Words in a String III 、151. Reverse Words in a String
  5. from + size must be less than or equal to: [10000] but was [10550]
  6. k8s系列--- dashboard认证及分级授权
  7. 如何通过ildasm/ilasm修改assembly的IL代码
  8. hbase 二进制数据写入_HBase总结
  9. 拓端tecdat|R语言中的马尔可夫区制转移(Markov regime switching)模型
  10. Apex弹窗闪退报错问题解决方案清晰讲解(系统软件层面解决,已亲测可行)
  11. web中常用的20种字体 (share)
  12. 【通俗理解】显著性检验,T-test,P-value
  13. OO2019助教工作总结
  14. Ubuntu20.04更换系统默认启动内核
  15. 如何将笔记本作为另一台电脑的副屏显示
  16. 山东平度纵火案告破:村主任与地产商联手施暴
  17. 60行C代码的shell领略Unix哲学之美
  18. 普通电脑可以装苹果系统吗?Windows电脑装Mac系统
  19. 在c语言程序中使用数据库,数据库与C语言程序设计两者之间有什么联系?
  20. touchgfx程序_基于TouchGFX和FreeRTOS的智能家居解决方案

热门文章

  1. 2022 chrome离线下载包
  2. webserver接口调用(一)
  3. html中调用javascript函数,如何在HTML中调用JavaScript函数
  4. Windows安装Oracle
  5. 网络摄像头的地盘争夺战——四款僵尸软件的技术解析
  6. IT软件项目管理视频教程—软件项目管理实战教程
  7. pyqt5菜鸟教程_PyQt5教程(一)——第一个PyQt5程序
  8. 不可以! 南阳理工ACM 题目1071
  9. C语言关键字之static
  10. iOS 常用到的宏#define