码迷,mamicode.com
首页 > 编程语言 > 详细

Unity5.0状态机

时间:2015-01-19 21:05:48      阅读:686      评论:0      收藏:0      [点我收藏+]

标签:unity3d学习   unity3d培训   


  Unity 动画团队一直在努力工作、同心协力,使 Unity 5.0 具有令人印象深刻的功能集。敬请期待新动画功能,下面是有关新动画功能的简要概述,希望可以对Unity 的用户们有所帮助!

  状态机行为

  在 Unity 5 中,您能够将StateMachineBehaviour 脚本添加到状态中,并在播放状态时收到以下回调:

  ? OnStateEnter
  ? OnStateUpdate
  ? OnStateExit
  ? OnStateMove
  ? OnStateIK

  您可根据需要在“状态”中添加多个 StateMachineBehaviour。要在“状态”上添加 IK,或要执行自定义逻辑,仅需将 StateMachineBehaviour 脚本拖到它上面。

  基本上,游戏中任何需要某种StateMachine 逻辑的对象(无论是否有动画)均可使用这种方式。
  
技术分享
  
      此功能的另一大好处是不需有大量的如下代码:

  if(animator.GetCurrentAnimatorStateInfo(0).isName(“Idle”))
  DoStuff()
  (我确定您的代码中有许多这样的代码),
  只需用StateMachineBehaviour 即可!

  状态机转换

  状态机变得越来越复杂,因此我们引入了“状态机转换”这一概念,从而在 StateMachine 逻辑之上提供更高层次的抽象表示。
  在 Unity 5 中,我们已在StateMachine 中添加了“进入”和“退出”节点。这两种节点都会在状态机转换中用到。

  进入: 当您转换到 StateMachine 时,动画系统将评估“进入”节点并转到其条件满足的目的地。
  退出: 转到“退出”节点时,动画系统将查看正在进行的 StateMachine 转换,并转到合适的目的地。
  注意,您可混合转换:State-State、State-StateMachine、StateMachine-StateMachine……
  
技术分享
  

       另外,我们还对工具 UI 进行了修改,因此,您现在可对您的参数和层重新排序。
  
资源创建 API

  在 Unity 5 中,您可使用编辑器中的脚本创建动画资源(StateMachine、状态、控制器、图层、Blentree 等)。
  
       有两种 API:一种是高级 API,由 Unity 来管理资源;一种是低级API,由您手动管理资源并可执行外部引用。
  对两种 API 都有记录,我已在本博文结尾提供了一个使用 API 的小例子。
  

       直接混合树
  我们已添加了一种新型BlendTree,您可将动画器参数直接映射到 BlendTree 子级的权重上。
  
技术分享
  
          如果您正使用BlendShape 动画或附加动画,这真的非常方便。
  
          根动作创作(常规模式下)
  
          Unity 5 还使您可为动画制作动画效果并将它们的动画器转化成根动作(即 Delta Animation)。仅需在对象的最顶层转换上创建动画(平移/旋转),然后在 AnimationClip 检查器中单击“Generate Root Motion Curve”(生成根动作曲线)!
  
      更多功能,让动画制作更轻松:
 
    ? 改进的动画预览器相机。
       该相机现在能像场景查看器一样摇镜头、沿轨道运行和缩放。
  ? 对参数(名称、默认值等)的运行时访问
  ? 根位置、ik 位置等的场景视图中的gizmo
  ? 改进的重新定位目标引擎
  ? 运行时优化
  ? 大量的漏洞修复
 【狗刨学习网】获取更多精彩内容

Unity5.0状态机

标签:unity3d学习   unity3d培训   

原文地址:http://blog.csdn.net/book_longssl/article/details/42877933

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!