版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、详解 Animation 类和 Animator 类Animation 类animation组件用于播放动画。可以指定动画剪辑到动画组件并从脚本控制 动画播放。在Unity的动画系统基于权重并且支持动画融合,叠加动画,动画混合,标签和完全控制动画播放的各个方面。如果想播放一个简单的动画,可以使用 Animation.Play ;如果想在动画之 间交叉淡入,可以使用 Animation.CrossFade ;如果想改变动画模式(循环, 一次,乒乓),可以改变动画导入设置里面的动画帧的WrapMode ,或者在运行时改变 AnimationState.wrapMode的值;Animationsta
2、te 可以用于改变动画的层,修改播放速度,并且直接控制融合与混合。动画也支持枚举,所以你 可以像这样在AnimationStates 之间循环【狗刨学习网】:/使这个角色的所有动画的播放速度降为一半for (var state : AnimationState in animation ) state .speed = 0.5 ;Variables 变量clip默认的动画剪辑。playAutomatically是否在开始的时候自动播放默认的动画wrapMode动画剪辑播放完成之后,应该如何操作isPlaying是否在播放任何动画?this string name 返回名称为name的动画状态。
3、animatePhysics如果打开这个选项,动画会在物理循环过程中被执行。这 个选项只有在结合运动学刚体的时候才有用。animateOnlyIfVisible如果打开这个选项,Unity可能在它认为用户不会看到当前动画的时候停止播放。cullingType控制动画组件的消隐localBounds 在本地坐标空间这个动画的动画组件的AABB。Functions 函数Stop停止所有当前Animation 正在播放的动画。Rewind倒播名称为name的动画。Sample在当前状态对动画进行采样IsPlaying名为name的动画正在播放吗?Play没有任何混合的播放动画CrossFade在一定
4、时间内淡入名称为name的动画并且淡出其他动画Blend在接下来的几秒内混合名称为 name的动画直到targetWeightCrossFadeQueued 在前一个动画播放完成之后淡入淡出下一个动画PlayQueued在前一个动画播放完成之后直接播放下一个动画AddClip给动画添加一个名称为newName的动画剪辑。RemoveClip从动画列表移除剪辑。GetClipCount取得当前动画的动画剪辑数量。SyncLayer同步某层的动画的播放速度。Animator 类Mecanim 动画系统中,通过 Animator组件来控制动画的播放,设置和获 取动画中的参数。变量isHuman 是否
5、为人形动画。Humanoid 则返回true 0 Generic则返回false。humanScale 人形动画Avatar缩放倍数。(generic 默认返回1)deltaPosition 相对于上一帧Avatar位置变化量。deltaRotation 相对于上一帧 Avatar旋转(朝向)变化量。rootPosition 根节点(gameObject )位置。rootRotation 根节点(gameObject )朝向。applyRootMotion根节点受动画(animations )控制。animatePhysics 如果为true ,动画在物理循环中播放.仅用来和动力学刚体(kin
6、ematicrigidbodies )交互。gravityWeight重力值,取决于当前播放的动画bodyPosition 重心位置。bodyRotation 重心方向。stabilizeFeet动画切换和混合时自动对齐脚layerCount 动画控制器(AnimatorController )层数。feetPivotActive 脚底轴心权值,为0%表示轴心在重心,为100% 轴心在 脚底。pivotWeight 轴心权值;pivotPosition轴心当前位置。isMatchingTarget是否自动匹配。speed播放速度。(1表示未缩放)targetPosition目标点位置通过Set
7、Target()函数设置。targetRotation目标点方向 通过SetTarget()设置。cullingMode 裁剪模式.avatar获取和设置当前Avatar。layersAffectMassCenter 附加层,影响重心。函数GetFloat获取一个浮点数类型的参数SetFloat设置一个浮点数类型的参数GetBool获取一个布尔类型的参数SetBool设置一个布尔类型的参数GetInteger获取一整数类型的参数。Setinteger设置一个整数类型的参数。GetVector获取一个向量类型的参数SetVector设置一个向量类型的参数GetQuaternion获取一个四元数类
8、型的参数SetQuaternion设置一个四元数类型的参数IsParameterControlledByCurve参数是否通过曲线控制。GetIKPosition得到反向动力学的目标点位置SetIKPosition设置反向动力学的目标点位置GetIKRotation 获取反向动力学目标点的方向SetIKRotation设置反向动力学的目标点方向GetIKPositionWeight得到反向动力学位移权重。(0表示原始位置。1表示反向动力学目标位置)SetIKPositionWeight设置反向动力学位移权重GetIKRotationWeight得到反向动力学方向权重。SetIKRotation
9、Weight设置反向动力学方向权重SetLookAtPosition设置观察方向(z轴正方向)。SetLookAtWeight 设观察点方向权重。GetLayerName 得到层的名称。GetLayerWeight 得到层的当前权重SetLayerWeight 设置层的当前权重GetCurrentAnimatorStateInfo获取当前动画控制器当前状态信息。GetNextAnimatorStateInfo得到当前动画控制器的下一个状态信息GetAnimatorTransitionInfo 得到指定动画控制器层上的转换信息。GetCurrentAnimationClipState得到当前动画
10、剪辑的状态信息。GetNextAnimationClipState获取下一个动画剪辑状态信息。IsInTransition 是否正在进行状态切换MatchTarget自动对齐到目标位置和方向。InterruptMatchTarget中断自动对齐操作。ForceStateNormalizedTime设置归一化时间(到达目标点的时间)。SetTarget设置目标位置。IsControlled transform属性是否受 Animator 控制。GetBoneTransform 返回骨骼的 Transform 属性。动画播放和取样在3ds Max或者Maya中创建了一个每秒60帧的动画后,当导入进
11、Unity , 同样也是60帧的动画。然而游戏在运行的时候,帧率却不是恒定不变的。在一 些速度较快的PC上帧率会更快,帧率也会每一秒在摄像机与给出的任意一点上 所看到复杂度不同。基本上这意味着我们可以不用当游戏运行的时候去假设确切 的帧率。如果有一个60帧的动画,它应该是可以从不同的帧率上回放回来,比 如56.18 fps,或者87.61fps,可以是任何的点。Unity在不同帧率上的的采样动画,并不是它们真正的帧率。但是很幸运, 3D电脑图形上的动画不是由分离的帧所组成的,而是连续的曲线。这些曲线对 任何点的采样都是很适合的,不是光只是在时间轴上原始帧的那些点。这意味着游戏在运行的时候,在比
12、较高的帧率上,动画效果看起来会更平滑和流畅。在大多数练习的情况下,事实上Unity采样动画在这些可变的帧率上并不是 你想像中还需要去做连接的。然而,如果你有一个在游戏逻辑上要去判断控制动 画的坐标属性,那就得注意了。举个例子,如果你有一个30帧的动画是来旋转一个对象从0-180度,你想知道当代码何时进行到当动画进行到一半的时候即 90度,不应该去添加一个条件语句来判断现在对象的旋转是不是已经进行到了 90度。因为Unity的动画采样是依照游戏不同的帧率来进行的,当旋转在90度以下的时候就该判断了,等到 90度的时候就刚好。如果你需要知道何时动画 中一个指定点的时候,应该去用 AnimationE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心血管内科护理制度
- 器材管理制度
- 11.3全等三角形判定SAS课件
- 2024年黄山考客运从业资格证考试题目
- 吉首大学《复变函数》2021-2022学年第一学期期末试卷
- 重庆市2023-2024学年高三年级上册期中考试英语试题(含答案)
- 吉林艺术学院《电视节目策划》2021-2022学年第一学期期末试卷
- 协议书范文离婚书范本模板
- 2024年大棚种植蔬菜回收合同范本
- 肉鸡养殖场收购协议书范文模板
- 企业风险分析表格
- 公安派出所建筑外观形象设计规范1
- 产品标识控制程序文件
- (施工方案)双梁桥式起重机安装施工方案
- 提高内镜中心内镜洗消合格率PDCA
- DBJ∕T13-354-2021 既有房屋结构安全隐患排查技术标准
- 建设工程质量管理手册
- 调机品管理规定
- 园长思想政治鉴定范文(5篇)
- 质量管理体系文件分类与编号规定
- 2022年工程项目技术管理人员批评与自我批评
评论
0/150
提交评论