位置: 编程技术 - 正文

Unity3D游戏开发之详解 Animation类和Animator类(Unity3D游戏开发pdf)

编辑:rootadmin

推荐整理分享Unity3D游戏开发之详解 Animation类和Animator类(Unity3D游戏开发pdf),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Unity3D游戏开发培训课程大纲,Unity3D游戏开发pdf,Unity3D游戏开发引擎,Unity3D游戏开发毕业论文,Unity3D游戏开发标准教程,unity3D游戏开发,Unity3D游戏开发(第2版),Unity3D游戏开发(第2版),内容如对您有帮助,希望把文章链接给更多的朋友!

Unity3D游戏开发之详解 Animation类和Animator类

Animation类animation组件用于播放动画。可以指定动画剪辑到动画组件并从脚本控制动画播放。在Unity的动画系统基于权重并且支持动画融合,叠加动画,动画混合,标签和完全控制动画播放的各个方面。如果想播放一个简单的动画,可以使用Animation.Play;如果想在动画之间交叉淡入,可以使用Animation.CrossFade;如果想改变动画模式(循环,一次,乒乓),可以改变动画导入设置里面的动画帧的WrapMode,或者在运行时改变AnimationState.wrapMode的&#;; AnimationState可以用于改变动画的层,修改播放速度,并且直接控制融合与混合。动画也支持枚举,所以你可以像这样在AnimationStates之间循环【狗刨学习网】:

// 使这个角色的所有动画的播放速度降为一半

Unity3D游戏开发之详解 Animation类和Animator类(Unity3D游戏开发pdf)

for (var state : AnimationState in animation) {

state.speed = 0.5;

}

Variables变量clip 默认的动画剪辑。playAutomatically 是否在开始的时候自动播放默认的动画wrapMode 动画剪辑播放完成之后,应该如何操作isPlaying 是否在播放任何动画?this [string name] 返回名称为name的动画状态。animatePhysics 如果打开这个选项,动画会在物理循环过程中被执行。这个选项只有在结合运动学刚体的时候才有用。animateOnlyIfVisible 如果打开这个选项,Unity可能在它认为用户不会看到当前动画的时候停止播放。cullingType 控制动画组件的消隐。localBounds 在本地坐标空间这个动画的动画组件的AABB。Functions函数Stop 停止所有当前Animation正在播放的动画。Rewind 倒播名称为name的动画。Sample 在当前状态对动画进行采样。IsPlaying 名为name的动画正在播放吗?Play 没有任何混合的播放动画。CrossFade 在一定时间内淡入名称为name的动画并且淡出其他动画。Blend 在接下来的几秒内混合名称为name的动画直到targetWeightCrossFadeQueued 在前一个动画播放完成之后淡入淡出下一个动画。PlayQueued 在前一个动画播放完成之后直接播放下一个动画。AddClip 给动画添加一个名称为newName的动画剪辑。RemoveClip 从动画列表移除剪辑。GetClipCount 取得当前动画的动画剪辑数量。SyncLayer 同步某层的动画的播放速度。Animator 类Mecanim动画系统中,通过Animator组件来控制动画的播放,设置和获取动画中的参数。变量isHuman 是否为人形动画。Humanoid则返回true。Generic 则返回false。humanScale 人形动画Avatar缩放倍数。 (generic默认返回 1)deltaPosition相对于上一帧Avatar位置变化量。deltaRotation相对于上一帧Avatar旋转(朝向)变化量。rootPosition 根节点(gameObject)位置。rootRotation根节点(gameObject)朝向。applyRootMotion 根节点受动画(animations)控制。animatePhysics 如果为true,动画在物理循环中播放. 仅用来和动力学刚体(kinematicrigidbodies)交互。gravityWeight 重力&#;,取决于当前播放的动画。bodyPosition 重心位置。bodyRotation 重心方向。stabilizeFeet 动画切换和混合时自动对齐脚layerCount 动画控制器( AnimatorController)层数。feetPivotActive脚底轴心权&#;. 为 0% 表示轴心在重心,为 % 轴心在脚底。pivotWeight 轴心权&#;;pivotPosition 轴心当前位置。isMatchingTarget 是否自动匹配。speed播放速度。( 1表示未缩放)。targetPosition 目标点位置通过 SetTarget()函数设置。targetRotation 目标点方向.通过SetTarget()设置。cullingMode 裁剪模式.avatar 获取和设置当前Avatar。layersAffectMassCenter 附加层,影响重心。函数GetFloat 获取一个浮点数类型的参数。SetFloat设置一个浮点数类型的参数。GetBool获取一个布尔类型的参数。SetBool 设置一个布尔类型的参数。GetInteger获取一整数类型的参数。SetInteger设置一个整数类型的参数。GetVector获取一个向量类型的参数。SetVector设置一个 向量类型的参数。GetQuaternion获取一个四元数类型的参数。SetQuaternion设置一个四元数类型的参数。IsParameterControlledByCurve 参数是否通过曲线控制。GetIKPosition 得到反向动力学的目标点位置。SetIKPosition 设置反向动力学的目标点位置。GetIKRotation 获取反向动力学目标点的方向。SetIKRotation设置反向动力学的目标点方向。GetIKPositionWeight 得到反向动力学位移权重。(0表示原始位置。1表示反向动力学目标位置)SetIKPositionWeight设置反向动力学位移权重。GetIKRotationWeight 得到反向动力学方向权重。SetIKRotationWeight 设置反向动力学方向权重。SetLookAtPosition 设置观察方向(z轴正方向)。SetLookAtWeight 设观察点方向权重。GetLayerName 得到层的名称。GetLayerWeight 得到层的当前权重。SetLayerWeight 设置层的当前权重。GetCurrentAnimatorStateInfo 获取当前动画控制器当前状态信息。GetNextAnimatorStateInfo 得到当前动画控制器的下一个状态信息。GetAnimatorTransitionInfo 得到指定动画控制器层上的转换信息。GetCurrentAnimationClipState得到当前动画剪辑的状态信息。GetNextAnimationClipState 获取下一个动画剪辑状态信息。IsInTransition 是否正在进行状态切换MatchTarget 自动对齐到目标位置和方向。InterruptMatchTarget 中断自动对齐操作。ForceStateNormalizedTime 设置归一化时间(到达目标点的时间)。SetTarget 设置目标位置。IsControlled transform属性是否受Animator控制。GetBoneTransform 返回骨骼的Transform 属性。动画播放和取样在3ds Max或者Maya中创建了一个每秒帧的动画后,当导入进Unity,同样也是帧的动画。然而游戏在运行的时候,帧率却不是恒定不变的。在一些速度较快的PC上帧率会更快,帧率也会每一秒在摄像机与给出的任意一点上所看到复杂度不同。基本上这意味着我们可以不用当游戏运行的时候去假设确切的帧率。如果有一个帧的动画,它应该是可以从不同的帧率上回放回来,比如. fps,或者.fps,可以是任何的点。Unity在不同帧率上的的采样动画,并不是它们真正的帧率。但是很幸运,3D电脑图形上的动画不是由分离的帧所组成的,而是连续的曲线。这些曲线对任何点的采样都是很适合的,不是光只是在时间轴上原始帧的那些点。这意味着游戏在运行的时候,在比较高的帧率上,动画效果看起来会更平滑和流畅。在大多数练习的情况下,事实上Unity采样动画在这些可变的帧率上并不是你想像中还需要去做连接的。然而,如果你有一个在游戏逻辑上要去判断控制动画的坐标属性,那就得注意了。举个例子,如果你有一个帧的动画是来旋转一个对象从0-度,你想知道当代码何时进行到当动画进行到一半的时候即度,不应该去添加一个条件语句来判断现在对象的旋转是不是已经进行到了度。因为Unity的动画采样是依照游戏不同的帧率来进行的,当旋转在度以下的时候就该判断了,等到度的时候就刚好。如果你需要知道何时动画中一个指定点的时候,应该去用AnimationEvent代替。要注意在可变帧率上的因果关系,一个回放动画要用WrapMode.Once是不可能为一个上一帧的准确时间来采样的。在游戏的动画帧上可以在动画播放后去采样,在下一个帧上的时间上就有多余动画长度,所以就关闭也不会去采样。如果你真的需要上一帧的动画去做采样,就需要WrapMode.ClampForever.这样动画就会正常保持上一帧的采样直到你要停止播放动画。

声明:此篇文档时来自于【狗刨学习网】社区,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。

教你怎样用unity3d发布一个Android的apk文件 初识unity3d已经有一段时间了。大约那是年的暑假。无意从手机上搜到了这个引擎。从今以后我就喜欢上他了。然后又从网上找了许多关于unity资料。

最好用Unity粒子系统组件主要参数浅析 先上传一个网上流传比较多的参数解析图吧看完图,然后来看看我个人的一些理解吧~【狗刨学习网】EllipsoidParticleEmitter(这里以椭球形粒子发射器为例

最新 unity 血条的另类制作-伤害减血加血自动回血 最新unity血条的另类制作-伤害减血加血自动回血unity血条的另类制作-伤害减血加血,最简单教程,菜鸟必看血条的效果图:做这个教程的目的,第一是

标签: Unity3D游戏开发pdf

本文链接地址:https://www.jiuchutong.com/biancheng/369395.html 转载请保留说明!

上一篇:Unity技巧集合(unity如何合并物体)

下一篇:教你怎样用unity3d发布一个Android的apk文件(教你怎样用竹子搭棚子)

  • 研发支出属于什么现金流量项目
  • 人力资源服务的概念
  • 刚成立的公司没有营业额怎么报税
  • 开业前的其他费用
  • 资产负债表试算平衡表是什么
  • 受赠房产转让可以免个税
  • 接受土地使用权作为投资属于什么凭证
  • 工会疗养政策对比
  • 股权转让溢价部分怎么做分录
  • 确认委托代销收入会计分录
  • 将汽车奖励给员工财务如何处理?
  • 服务费可以不退吗
  • 小企业会计准则和企业会计准则的区别
  • 入库前的挑选整理费用计入采购成本吗
  • 银行手续费要发票什么时候开始的
  • 企业注销后资产如何处置
  • 个体工商户2020
  • 中奖个人所得税多少起征收
  • 食堂伙食费账务处理
  • 先亏后盈法案例分析
  • 产业政策鼓励类
  • 2019年以后转登记为小规模纳税人有无时间要求?
  • 双系统怎么卸载ubuntu
  • 收到现金支票如何进账
  • 收到加盟费怎么入账
  • 所得税以前年度亏损
  • gdb调试工具的使用
  • 代个人多交的社保怎么查
  • 存货周转率公式怎么算
  • 一只躺在沙滩上的鸟
  • staruml教程
  • php stristr函数
  • 个人应纳税所得额是要交钱吗
  • 矿产资源补偿费计入管理费用吗
  • 资产负债表是不是根据记账凭证生成的
  • 小规模拍卖公司怎么开票
  • 前端好看的颜色
  • 发票金额和打款金额不一致怎么办
  • vue加载时如何避免出现代码
  • 只有进项发票,没有销项可以吗
  • 织梦怎么调用当前栏目下的文章
  • 车辆维修费发票图片
  • 差旅费具体包括哪些
  • sql server标识符
  • 增值税加计扣除最新政策2023
  • 预付发票能入账吗
  • 金融企业里面的债务
  • 退回多交的所得税抵欠税怎么做账
  • 什么是委托检验报告
  • 交易性金融资产的账务处理
  • 本年利润的会计科目代码
  • 其他债权投资发生减值会影响所有者权益总额吗
  • 开红字发票必须要收回原发票并作废吗?
  • 集团对子公司的管理办法
  • 旧账整理方案
  • Mysql优化sql方案
  • mysql两个表连接
  • mysql数据库的基本原理
  • win7小技巧
  • win7怎么清除记录
  • linux的tar命令详解
  • centos清理磁盘空间
  • linux安装rpm软件包的命令
  • rundll32.exe在哪个文件夹
  • win10截图截不了怎么办?
  • 格式化快速格式化好吗
  • printnow.exe - printnow是什么进程 有什么作用
  • jquery prompt
  • 怎么学node.js
  • linux shell脚本命令
  • angularjs1.5
  • javascript用什么写
  • nodejs教学视频
  • node getjdcookie.js
  • bootstrap日期控件背景为白
  • 税务局副科长工资
  • 国家税务局公告2021年第3号
  • 融资租赁利息是哪个科目
  • 河北航天信息技术有限公司官网
  • 期货手续费怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设