下载此文档

第八十九讲 Mecanim随机群体动画.docx


文档分类:文学/艺术/军事/历史 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
第八十九讲 Mecanim随机群体动画
在本节中看一个群组动画的效果,在此群组动画中每个角色都使用了相同的动画控制器,在动画控制器的控制脚本中使用了随机功能,这样使每个角色都有不同的行为参数从而产生了每个角色都有不同行为逻辑的效果。
在通过实例化操作之后形成了群组的效果,接下来就看下如何创建这种效果。
首先在创建角色的效果中
为其添加添加一个动画控制器,如图所示此处可以添加一个跑跳的行为控制器。
为此角色添加脚本从而使角色具有相同的动画控制器,但具有不同的行为效果。
为角色创建使功能随机的脚本如图所示:
将脚本命名为RandBehavior然后双击脚本。
双击此脚本,在属性编辑器中打开。
首先定义一个Animator的变量,取对Animator的引用。
定义两个时间阻尼变量,对于此阻尼变量可以设置此初始值。

在Start语句中获取对Animator组件的引用,ponent<Aimatior>()来获取。
在Update中行为逻辑的控制也就是对于动画状态机的动画状态的过渡控制,一般的都是通过判断动画参数的变化来引起动画状态切换。
If语句检测Animator组件是否存在,因为我们所有的逻辑都是为角色动画来创建逻辑。
Rand:用于接收产生的随机数,此处定义的随机数的范围是从0到50。
在动画控制器中两个布尔参数,在角色的动画控制器中可以看到角色有两个动画状态。
在脚本中使用布尔函数来控制布尔类型的动画参数成立条件,就可以使用随机数的功能来控制两个参数的成立条件。此处的成立的条件是当我们随机数等于20时才可以设置角色进行纵越状态,其他的同理。
在上节中使角色更随着另一个角色也就是为角色指定了一个目标物体,当目标物体运动时我们的角色也会跟着一起运动,其中就使用了一个判断条件,使用角色与其目标物之间距离进行判断。
If判断语句:
角色中跟骨骼的位置与我们此处指定的,目标位置变量成为全剧变量。此处使用了一个判断语句如果我们的角色与指定的目标位置之间距离大于50就会使角色跑动起来。
要使其跑动起来就需要使用Animator中的浮点函数Speed参数值为1指定阻尼的时间等等,这样就可以是角色跑动起来。
同理如果角色与目标位置之间的距离不大于5的情况下,就不需要角色在进行跑动。此时可以使用一个else语句,同样设置浮点函数此时设置动画参数的数值为0这样我们就可以控制角色跑的状态了。
在角色跑的状态中控制角色跑的方向,此处还要使用与上节类似的算法。使用点乘叉乘的方式来判断角色与目标位置的关系。
首先定义角色的当前方向,以及与目标物体通过点乘来计算目标位置与方位之间的关系,分为两种情况,第一个是目标位置正前方,另一种是目标位置在角色的后方,此时通过控制方向参数使用这样的逻辑就可以控制角色跑的方向。
对TargetPosition进行处理,使角色的目标不停的发生

第八十九讲 Mecanim随机群体动画 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人w447750
  • 文件大小1.36 MB
  • 时间2018-05-18