Unity3D Animation、Animator和AnimationClip

2023-11-01

Animation

单一动画,一般使用在单一动画播放,占用资源小。

字段

名称 作用
animatePhysics 如果打开这个选项,动画会在物理循环过程中被执行。这个选项只有在结合刚体的时候才有用
clip 动画片段
cullingType 控制此Animation组件的剔除
isPlaying 动画是否在播放
localBounds 在本地坐标空间这个动画的动画组件的AABB
playAutomatically 是否在开始的时候自动播放默认的动画
this[string] 返回string的动画状态
wrapMode 循环模式 .Default:从动画剪辑中读取循环模式//.Once:当时间播放到末尾的时候停止动画的播放//.Loop:当时间播放到末尾的时候重新播放从开始播放//.ClampForever:播放动画。当播放到结尾的时候,动画总是处于最后一帧的采样状态

方法

名称 作用
AddClip 添加动画片段
Blend 动画混合
CrossFade 动画的淡入淡出
CrossFadeQueued 淡入淡出队列,在前一个动画播放完成之后淡入淡出下一个动画
GetClipCount 取得当前动画的动画剪辑数量
IsPlaying 是否在播放任何动画
Play 播放动画而不进行融合
PlayQueued 播放队列,在前一个动画播放完成之后直接播放下一个动画
RemoveClip 移除剪辑,从动画列表移除剪辑
Rewind 倒回名称为name的动画
Sample 当你想要直接获得动画的运行结果,而不是等帧数执行到这,就可以使用该方法
Stop 停止所有当前Animation正在播放的动画

Animator

多个动画,可用控制器切换多个动画播放,占用资源大

字段

名称 作用
angularVelocity 角速度
applyRootMotion 应用根运动
avatar 获取或设置当前的Avatar
bodyPosition 身体质量中心的位置
bodyRotation 该身体质量中心的旋转
cullingMode 控制动画器组件的剔除模式 AlwaysAnimate:屏幕看不见时也在播放动画,CullUpdateTransforms:看不见时,禁用重定向,IK和“变换”写入,CullCompletely:看不见时进制播放动画
deltaPosition 获取上一帧avatar的增量位置
deltaRotation 获取上一帧avatar的增量旋转
feetPivotActive 混合身体质量中心与脚质量中心的轴心点。0%表示混合轴心点在身体的质量中心;100%表示混合轴心点在脚的轴心点
gravityWeight 基于当前播放的动画的当前重力
hasRootMotion 如果当前绑定已经是根运动,返回真
hasTransformHierarchy 如果该对象已经是变换层级,返回真
humanScale 返回当前人形绑定Avatar的缩放,(如果绑定是generic,默认为1)
isHuman 如果当前的绑定是人形的,返回真;如果是generic(普通)的则返回假
isMatchingTarget 如果自动匹配是激活的
isOptimizable 不知道干嘛的
layerCount 该动画器控制器的层数
leftFeetBottomHeight 获得左脚底的高度
rightFeetBottomHeight 获取右脚底的高度
linearVelocityBlending 当linearVelocityBlending 设置为true,根运动速度和角速度将线性混合
parameters 用于动画器只读访问动画器控制器参数
pivotPosition 获得当前轴心点的位置
pivotWeight 获得轴心点的权重
playbackTime 在记录缓冲区设置播放位置
recorderMode 获取动画器录制的模式 Offline:Animator记录器处于脱机状态 Playback:Animator记录器处于播放状态 Record:Animator记录器处于“记录”中
recorderStartTime 缓冲区第一帧的开始时间,相对于StartRecording被调用时的帧
recorderStopTime 记录剪辑的结束时间,相对于StartRecording被调用的帧
rootPosition 根位置,该游戏对象的位置
rootRotation 根旋转,该游戏对象的旋转角度
runtimeAnimatorController AnimatorController的运行时代表,用来控制Animator
speed 动画器的播放速度。1表示正常播放速度
stabilizeFeet 过渡和混合时,脚自动稳定
targetPosition 返回指定的目标的位置
targetRotation 返回指定的目标的旋转角度
updateMode 该动画器的指定更新模式 Normal:正常更新 AnimatePhysics:在物理循环期间更新 UnscaledTime:更新独立于Time.timeScale
velocity 获取最后评估的帧的化身速度

方法

名称 作用
ApplyBuiltinRootMotion 应用默认的根运动
CrossFade 在当前状态和目标状态之间创建一个动态过渡
CrossFadeInFixedTime 与animator.crossfade相同,但在目标状态的持续时间和偏移是在固定的时间
GetAnimatorTransitionInfo 获取指定AnimatorController层的过渡信息
GetBehaviour 返回匹配类型T或派生自T的首个状态机行为,如果没有找到返回null
GetBehaviours 返回匹配类型T或派生自T的所有状态机行为,如果没有找到返回null
GetBoneTransform 返回人形骨骼ID映射的变换
GetBool 获取布尔参数的值
GetCurrentAnimationClipState 获取当前状态播放的当前动画信息列表
GetCurrentAnimatorStateInfo 获取指定的AnimatorController层的当前状态信息
GetFloat 获取一个浮点数参数的值
GetIKHintPosition 获取IK hint的位置
GetIKHintPositionWeight 获取IK Hint的过渡的权重。 (0表示IK之前的原始动画,1表示在Hint)
GetIKPosition 获取IK的位置
GetIKPositionWeight 获取IK的旋转权重
GetInteger 获取整数参数的值
GetLayerName 获取该层的名称
GetLayerWeight 过去该层的当前权重
GetNextAnimationClipState 获取当前播放动画信息列表的下个状态
GetNextAnimatorStateInfo 获取指定的AnimatorController层上的下个状态信息
HasState 如果在动画器控制器是当前动画状态返回true
InterruptMatchTarget 中断目标自动匹配
IsInTransition 指定的AnimatorController层是否在过渡
IsParameterControlledByCurve 如果参数是由动画的附加曲线控制,返回真
MatchTarget 自动调节该对象的位置和旋转
Play 播放一个状态
PlayInFixedTime 与animator.crossfade相同,但在目标状态的持续时间和偏移是在固定的时间
Rebind 重新绑定动画器的所有动画的属性和网格数据
ResetTrigger 重设该触发参数为假
SetBool 设置一个布尔参数的值
SetFloat 设置一个浮点数的值
SetIKHintPosition 设置一个IK hint的位置
SetIKHintPositionWeight 设置IK hint过渡权重(0表示IK之前的原始动画,1表示在hint)
SetIKPosition 设置一个IK的位置
SetIKPositionWeight 设置IK的过渡权重(0表示IK之前的原始动画,1表示在goal)
SetIKRotation 设置IK的旋转
SetIKRotationWeight 设置IK的旋转权重(0表示IK之前的旋转,1表示IKgoal旋转)
SetInteger 设置一个整数参数的值
SetLayerWeight 设置该层的当前权重
SetLookAtPosition 设置注视的位置
SetLookAtWeight 设置注视的权重
SetTarget 设置AvatarTarget和targetNormalizedTime 用于当前状态
SetTrigger 设置一个要激活的触发器参数
StartPlayback 在播放模式设置动画
StartRecording 设置动画器的记录模式并分配frameCount大小的圆形缓冲区
StopPlayback 停止动画器播放模式。当播放停止时,Avatar恢复从游戏逻辑获得控制权
StopRecording 停止动画器记录模式
Update 基于deltaTime计算动画器

AnimationClip

字段

名称 作用
events 用于该剪辑的动画事件
frameRate 被取样关键帧的帧速率 只读
humanMotion 如果该动画包含的曲线是人类骨骼,返回true
legacy 如果动画剪辑被使用于旧版Animation组件,返回true
length 动画长度,单位秒 只读
localBounds 动画组件在本地坐标空间这个动画剪辑的AABB也被附加
wrapMode 在动画状态设置使用的默认循环模式 Once:时间到达动画剪辑的结尾时,剪辑将自动停止播放,并且时间将重置为剪辑的开头 Loop:当时间到达动画剪辑的末尾时,时间将在开始处继续 PingPong:当时间到达动画剪辑的末尾时,时间将在开始和结束之间回弹 Default:读取更高的默认重复模式设置 ClampForever:播放动画,当到达终点时,它将继续播放最后一帧,并且永不停止播放

方法

名称 作用
AddEvent 给剪辑添加动画事件
ClearCurves 从该剪辑清除所有曲线
EnsureQuaternionContinuity 为了保证更好的四元数插值,你设置完成动画曲线后调用这个函数
SampleAnimation 在给定的时间采样动画,为任意动画的属性
SetCurve 指定动画曲线来动画特定的属性
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unity3D Animation、Animator和AnimationClip 的相关文章

  • 一些个人常用的网站网址

    一些个人常用的网站网址 GitHub https github com Gitee https gitee com 1 书栈网 https www bookstack cn explore cid 27 tab popular 2 Unit
  • Unity—UGUI

    每日一句 读数 学习 去更远的地方 才能摆脱那些你不屑一顾的圈子 目录 InputFiled输入框 例 用户名和密码 Toggle组件 案例 冷却效果 InputFiled输入框 Text Component 输入文本组件 Text输入内容
  • Unity WebGL错误集锦

    ips 0 Unity的PlayerSettings的otherSettings或者Publish Settings里面的Enable Exceptions里面选择Full StackTrace 可以在打出的包中的浏览器的webgl打印出错
  • UE5学习笔记(一)——界面功能梳理&第一天知识点记录

    学习UE5的第一步 是软件安装 默认是安装好的 由于安装没有太多技术含量 所以就没有专门做记录 这里有个注意点 虚幻引擎是整合在Epic games launcher中的 也就是说开发引擎内嵌在游戏平台上 打个比方 就是如果你要下unity
  • Unity中loading页加载的实现

    首先创建一个Global cs 使用单例用于存储场景的名字 便于后续脚本的调用 此脚本不必挂载在游戏物体上 using UnityEngine using System Collections public class Global Mon
  • 蒙特卡洛积分、重要性采样、低差异序列

    渲染公式 渲染的目标在于计算周围环境的光线有多少从表面像素点反射到相机视口中 要计算总的反射光 每个入射方向的贡献 必须将他们在半球上相加 为入射光线 与法线 的夹角 为方便计算可以使用法线向量和入射向量 单位化 的乘积表示 对于基于图像的
  • 【Unity&C#&随机数】随机数

    一个简单的随机数获得 0或1 使用了这样的代码 想要获得0或者1 if Input anyKeyDown float i 1 if i 1 i Random Range 0 Rang i i lt 0 5 0 1 Debug Log Cou
  • Unity Shader入门精要第七章 基础纹理之遮罩纹理

    Unity系列文章目录 文章目录 Unity系列文章目录 前言 一 实践 参考 前言 遮罩纹理 mask texture 是本章要介绍的最后一种纹理 它非常有用 在很多商业游戏中 都可以见到它的身影 那么什么是遮罩呢 简单来讲 遮罩允许我们
  • UnityVR--组件3--Line Renderer--线性渲染

    目录 线性渲染组件简介 绘制线条Line Renderer组件介绍 绘制拖尾Trail Renderer组件介绍 应用1 使用Line Renderer绘制线段 应用1实现 使用系统工具或自定义工具绘制线段 应用2 Trail Render
  • Unity3d 插件 系列——DoTweenPro介绍(图文详细+案例)

    Unity3d 插件 系列 DoTweenPro介绍 图文详细 案例 前言 一 DoTweenPro简介 二 DoTweenPro安装 三 DoTweenPro主要组件 1 DoTweenAnimation 2 DoTweenPath 3
  • Unity中UI框架的使用1-添加面板、显示Loading页面

    其中BasePanel和Canvas都是挂在面板的预制物上的 1 导入我们的UI框架 本篇文章中有用的是两个UIPanelType NUIManager和NBasePanel 会放在文章最后供大家使用 2 先将我们做好的Panel设置成预制
  • unity工程崩溃资源找回

    1 Unity死机未保存场景 当你在Unity中编辑场景 突然死机时 可以在项目文件目录中找到Temp文件夹 双击文件夹 找到 Backupscenes文件夹 把后缀为 backup的文件后缀改为 unity 然后拖进Unity的Proje
  • 【IMGUI】 各种辅助类 EditorGUIUtility、EditorUtility、GUIUtility、GUILayoutUtility

    EditorGUIUtility class in Editor 继承自 GUIUtility EditorGUI 的各种辅助程序 EditorGUIUtility currentViewWidth 我尝试打印了下这个值和position
  • unity3d大型互动照片墙

    1 本次应客户需求 制作一个大型照片墙互动 输出分辨率为9600 4320 注 unity3d官方推荐最大分辨率为8192 3686 4 经过现场长达24小时暴力测试中途未发生问题 姑且判定可以达到正常标准 废话不多说 先上效果 unity
  • 【Unity】按Esc进入操作菜单

    本文章是基于如下视频的自我总结 https www youtube com watch v JivuXdrIHK0 步骤如下 1 在Canvas 界面添加一个Panel Panel中添加一个按钮 调整按钮的大小为合适大小 调整字体的大小为合
  • unity3d image组件不显示

    需要将UI组件放到画布下面
  • 【Unity】如何让Unity程序一打开就运行命令行命令

    背景 Unity程序有时依赖于某些服务去实现一些功能 此时可能需要类似打开程序就自动运行Windows命令行命令的功能 方法 using UnityEngine using System Diagnostics using System T
  • 游戏开发常见操作梳理之NPC任务系统

    多数游戏存在任务系统 接下来介绍通过NPC触发任务的游戏制作代码 using System Collections using System Collections Generic using UnityEngine
  • 游戏开发常见操作梳理之小地图的制作

    游戏中一般存在小地图系统 实际上就是设置一个新的摄像机放置在玩家的正上方 然后在小地图上显示新摄像机看见的东西就可以了 在小地图上一般存在放大地图和缩小地图的按钮可以方便放大和缩小地图 这些操作是如何实现的呢 接下来直接上核心代码 usin
  • 游戏开发常见操作梳理之角色选择一

    进入游戏后 我们经常会进入角色选择的界面 通常是左右两个按钮可以更改角色供玩家选择 对于这种界面我们通常使用数据持久化将角色信息存储起来 接下来的笔记中 我将使用自带的数据持久化系统对其进行操作 实现角色的选择页面 后续会更新xml系列的文

随机推荐

  • Blender辅助工具集:M3插件

    1 MACHIN3tools M3 插件 一个辅助工具集 MACHIN3tools An Addon to Streamline Blender 3 3 and beyond by machin3 io https github com m
  • Spring(DI)

    DI Dependency Injection 即依赖注入 对象之间的依赖由容器在运行期决定 即容器动态的将某个依赖注入到对象自重 基于XML配置注入依赖 有参构造函数注入依赖 bean类实现有参构造函数 public class Stud
  • 开始在CSDN上安家了哈!

    2014年计划完成50 原创blog 这是我的目标
  • vue项目打包部署到tomcat(详细)

    hash路由模式打包部署到tomcat 1 修改config index js文件下的assetsPublicPath为 2 修改router文件夹下index js添加 base 文件夹名称 例如 yuncheng 可以自己随意设置 3
  • 未找到 van-toast 节点,请确认 selector 及 context 是否正确

    1 json文件引入 van toast vant weapp toast index 2 js文件引入 import Toast from vant weapp toast toast 3 wxml写入
  • 微信小程序蓝牙BLE开发实战——遇到问题及踩坑(三)

    微信小程序蓝牙BLE开发实战 三 对于我这种小白 遇到问题是常见的哈 这里记录下 避免日后再踩坑 文章目录 微信小程序蓝牙BLE开发实战 三 1 iPhone6及6plus无法搜索到设备 解决方案 2 IOS无法获取 mac 地址 如何连接
  • 分布式任务调度平台xxl-job

    一 java的集中式任务调度 while true Thread sleep 轮询 线程休眠的方式实现定时任务 java util Timer java util TimerTask Timer是一种定时器工具 用于使用后台线程计划执行指定
  • 数字IC设计流程学习笔记

    一 规格定制 IC的规格定制包括物理指标 性能指标和功能指标 物理指标 封装 工艺 芯片面积 性能指标 功耗 速度 功能指标 接口 芯片功能 二 系统设计 系统设计是确定IC的算法模型和系统架构等 并通过一些高级语言 matlab等对算法模
  • 【tensorflow基础】读取mnist数据

    转载于 MNIST手写数字数据集读取方法 TensorFlow的封装让使用MNIST数据集变得更加方便 MNIST数据集是NIST数据集的一个子集 它包含了60000张图片作为训练数据 10000张图片作为测试数据 在MNIST数据集中的每
  • spring-security

    文章目录 csrf remember me 密码存储 权限继承 应 要求添加的代码 白名单相关说明 csrf A网站登录 B网站 使用 Copyright C
  • 传染病模型(4)——SIRS模型和SIER模型及matlab具体程序

    前言 常见的传染病模型按照具体的传染病的特点可分为 SI SIS SIR SIRS SEIR 模型 其中 S E I R 的现实含义如下 S Susceptible 易感者 指缺乏免疫能力健康人 与感染者接触后容易受到感染 E Expose
  • 一文了解亚马逊云科技适用于 Amazon Lightsail 的托管数据库

    Amazon Lightsail 是亚马逊云科技提供的一种易上手使用 月度价格经济实惠 并包括了计算实例 容器 存储 数据库的虚拟专用服务器 在创建时可以进行业务蓝图选择 可选择包含多种操作系统 Linux Windows 等 或操作系统加
  • C++中定义常量的几种方式

    概述 在程序运行过程中 始终不发生改变的量 称之为常量 在 C 语言中常量是个固定值 也就是说常量值在定义后不能进行修改 define 宏常量 define 是 C 语言中定义常量的方式 在 C 中也可以使用 define 的使用 defi
  • RocketMQ安装与启动

    分享知识 传递快乐 官网 https rocketmq apache org 1 准备环境 系统 Centos7 jdk 1 8 2 环境部署 解压 rocketmq 并进入 rocketmq 下的 bin 目录 调整启动内存 vim bi
  • C++ 函数模板

    函数模板是通用的函数描述 它们使用泛型来定义函数 其中的泛型可用具体的类型替换 通过将类型作为参数传递给模板 可使编译器生成该类型的函数 由于模板允许以泛型 而不是具体类型 的方式编写程序 因此有时候也被称为通用编程 在标准C 98添加关键
  • ubuntu14.04安装wireshakes

    网络攻防 这课要做一个嗅探器的大作业 想在linux是实现 于是先在ubuntu上下一个wiresharks看看它的一些功能和 废话少说 直接上安装过程与期间遇到的问题 安装编译工具 sudo apt get install build e
  • Spring Gateway集成 Nacos注册中心不能够发现服务的问题解决

    一 问题描述 我们现在是在用Nacos替换Eureka 原来Eureka和Spring gateway运行正常 可以通过Spring gateway调用注册到Eureka中的服务 当前Spring cloud的版本是Hoxton SR8 N
  • 顺序表基本操作

    文章目录 1 顺序表插入元素 2 顺序表删除元素 3 顺序表查找元素 4 顺序表更改元素 1 顺序表插入元素 向顺序表中插入数据元素 根据插入位置的不同 可分为以下 3 种情况 插入到顺序表的表头 在表的中间位置插入元素 尾随顺序表中已有元
  • TCP/IP详解 卷1:协议 学习笔记 第十七章 TCP:传输控制协议

    TCP提供一种面向连接的 可靠的字节流服务 面向连接意味着两个使用TCP的应用 通常是一个客户一个服务器 在彼此交换数据前必须先建立一个TCP连接 在一个TCP连接中 仅有两方进行彼此通信 广播和多播不能用于TCP TCP提供可靠性的方法
  • Unity3D Animation、Animator和AnimationClip

    文章目录 Animation 字段 方法 Animator 字段 方法 AnimationClip 字段 方法 Animation 单一动画 一般使用在单一动画播放 占用资源小 字段 名称 作用 animatePhysics 如果打开这个选