此工作流程演示了如何使用TimeLine实例为具有外部运动片段(external motion clips)的人形角色(humanoid character)制作动画,还演示了如何匹配片段偏移(match clip offsets),手动调整片段偏移,以及在片段之间创建混合(create blends)以最大程度地减少跳转和滑动(jumping and sliding)。 尽管该工作流程使用了人形角色,您也可以对任意游戏对象使用此方法。

从项目中拖放角色的运动片段(motion clip)到动画轨道上,以创建一个新的动画片段。
例如,拖放“空闲姿势”(Idle)作为第一个片段,以从空闲动作开始制作动画,并根据需要调整片段的位置和大小。

继续添加第二个运动片段。在此示例中,将左转片段(Run_Left)拖放到动画轨道上。根据需要调整Run_Left片段。在本示例中,将Run_Left剪辑的大小调整为包含一个循环,以便让警卫跑转180度。

播放该TimeLine实例,留意人形角色Guard在运动片段之间跳转,这是因为人形角色在第一个片段末尾的位置与下一个片段开始的位置不匹配。

要纠正片段之间的跳转,请匹配每个动画片段中的间隙。 TimeLine编辑窗口提供了几种不同的方式来匹配间隙。 在此示例中,要让第二个动画片段与上一个片段匹配。 因此,选择Run_Left片段,单击鼠标右键,然后选择Match Offsets to Previous Clip

再次播放TimeLine实例,人形角色的位置和旋转匹配,但由于两个片段中的人形角色处于不同的姿势,因此在两个动画片段之间仍然存在跳转。 在第一个动画片段的结尾,人形角色直立,两脚对齐。 在第二个动画片段开始时,人形角色身体前屈,双腿张开。

创建一个混合,以删除和过渡两个姿势间的跳转。 通过调整片段长短、混合区域(blend area)、片段插入(clip in)和每个混合曲线(blend curve)的形状,可以在两个姿势之间创建平滑过渡。

例如,在Idle和Run_Left的过渡中,Idle片段修改为长度36,并将Run_Left片段重新定位为从第25帧开始。 其余属性保留为其默认值。

在Idle片段过渡到Run_Left片段时,混合将自然消除姿势之间的明显跳转,以及大部分躯体之间的过渡。但是,双脚位置的差异会导致不自然的“脚滑”。

要校正脚部滑动,您可以手动调整动画片段根部的间隙(root offset),以使脚的位置不会发生太大变化并减小滑动。 要手动调整根部间隙,在TimeLine编辑窗口中选择动画片段。 在检视窗口中,展开Animation Playable Asset,然后展开Clip Root Motion Offsets。

在Clip Root Motion Offsets中,位置和旋转都不为0,因为之前的操作——Match Offsets to Previous Clip,已经设置为与上一个动画片段结尾匹配。

在Clip Root Motion Offsets下方,启用移动工具(Move tool)。移动工具的Gizmo会显示在场景视图中,位于动画片段的根部。使用下面的其中一种方法,手动调整动画的根部偏移位置:

  • 在场景视图中,拖动移动工具的Gizmo。
  • 在检视窗口中,修改合适的位置属性值。

启用移动工具(检视窗口,蓝色箭头)以在场景视图中显示“移动Gizmo”(红色箭头)。 使用“移动Gizmo”手动定位选定动画片段的根运动偏移。

【Unity】TimeLine常见问题:如何实现人形角色动画的平滑切换相关推荐

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

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

  2. Unity 3D 人形角色动画(Avatar)||Unity 3D 导航系统||Unity 3D 障碍物

    Unity 3D 人形角色动画(Avatar) Mecanim 动画系统适合人形角色动画的制作,人形骨架是在游戏中普遍采用的一种骨架结构.. 由于人形骨架在骨骼结构上的相似性,用户可以将动画效果从一个 ...

  3. unity 角色 动画脚本_Unity Animation --动画剪辑(外部来源的动画)

    外部来源的动画 来自外部源的动画以与常规3D文件相同的方式导入到Unity中.这些文件,无论是通用FBX文件还是3D软件(例如Autodesk®Maya®,Cinema 4D,Autodesk®3ds ...

  4. 个人技术总结——Unity中角色动画制作及动画切换逻辑的实现

    这个作业属于哪个课程 软件工程实践2022春-F班 这个作业要求在哪里 软件工程实践总结&个人技术博客 这个作业的目标 课程回顾与总结+个人技术总结 其他参考文献 <Unity2018教 ...

  5. 【Unity】角色动画控制

    场景 记录一下unity中的角色动画控制 通常角色的动画都是通过Animator状态机进行状态间的切换的 在状态机中,每个状态间的连线(Transitions)是通过以下4种条件触发的 Float,I ...

  6. (完结)Unity游戏开发——新发教你做游戏(七):Animator控制角色动画播放

    文章目录 一.前言 二.Animator状态机组织 三.过渡条件 四.用代码设置过渡条件,触发动画播放 五.CharacterAniLogic.cs完整代码 一.前言 文章列表 Unity游戏开发-- ...

  7. 【Unity】入门学习笔记180605——游戏动画设计(4)——游戏角色动画基础

    1.针对Unity中实现正确动画效果的角色,首先需要在3D建模软件中实现骨骼化操作. 骨骼化是指底层骨骼结构添加至设计师创建的模型中,且各快骨骼与网格顶点间实现了加权操作 可使用MakeHuman软件 ...

  8. unity碰撞检测函数,碰撞信息获取,触发检测,使用粒子系统创建火焰,创建动画(火光闪烁),导航系统,通过导航系统控制人物移动,控制摄像机的跟随,控制角色动画播放

    碰撞检测函数 private void OnCollisionEnter(Collision collision){print("OnCollisonEnter");}privat ...

  9. T4M插件放入unity后怎么找不到_Unity动画系统详解6:如何做好角色的移动动画?(Root Motion详解)

    摘要:Root Transform是body transform在Y平面上的投影,并且是运行时计算的.每一帧Root Transform的变化实时计算.然后Transform的变化会被应用到GameO ...

最新文章

  1. 下载Hibernate中文参考手册2.1版
  2. python sklearn 梯度下降法_(四)梯度下降法及其python实现
  3. Android之 Fragment
  4. 静态成员 java_JAVA中的静态成员
  5. 如何查看linux 日志 磁盘使用情况?
  6. 微服务教程--什么是 Nacos
  7. 长短期记忆网络_思维导图:长短期记忆模型
  8. Android Mms 数据库
  9. Echarts数据可视化series-heatmap热力图,开发全解+完美注释
  10. python中rank_hackerrank中python题目的套路
  11. 使用Jade和Grunt加快HTML的产生
  12. java获取CPU温度centos,用软件lm_sensors监测Linux系统和CPU温度
  13. 联想电脑打不开摄像头
  14. DS1302时钟芯片(SPI协议)
  15. 剪辑师的基本素养--了解四种特写类型
  16. HDFS文件访问权限
  17. JavaScript键盘按键侦测
  18. 分析少年派2中的Crypto
  19. 64个数据分析常用术语
  20. IReport 使用记录 主报表和子报表数据传递

热门文章

  1. android 9 qq登录,【报Bug】安卓离线打包targetSdkVersion设置28时,在安卓9.0手机上QQ授权登录闪退...
  2. 东南大学2012年招收推荐免试生直接攻读博士学位研究生简章
  3. 各版本的Hadoop安装包下载
  4. Linux MMC原理及框架详解
  5. 入职华为od一个月的感受
  6. 加州大学圣地亚哥计算机硕士申请,美国加州大学圣地亚哥分校计算机工程硕士.pdf...
  7. 精益生产排程系统(APS)优化的力量是什么?
  8. 微信群引流全新揭秘——微信群裂变日增2000+精准粉
  9. 中国科学院计算机研究所调剂,给计算机复试的jr们一点建议,以及欢迎调剂中科院计算机相关研究所...
  10. 摸个鱼(算最大捕捞量)