美文网首页
Locomotion System Study Notes

Locomotion System Study Notes

作者: iqxtreme | 来源:发表于2020-05-13 11:55 被阅读0次

资源获取

  • uinty商店免费获取。


    locomotion system

要点摘要

核心

LegController

  • 配置角色的着地平面,GroundHeight
  • 配置角色处于地面的Pose,GroundedPose
  • 配置角色的根骨骼,RootBone
  • 配置角色的腿脚,Legs
  • 配置角色闲置与运动的动画,SourceAnimations
  • 配置与速度匹配的运动动画,Walk-Cycle,NativeSpeed
  • 添加多种速度匹配动画,系统会根据速度执行最合适的动画

LegAnimator

  • 依赖LegController
  • 控制腿部动画,非常核心的组件
  • 侧倾控制,Accele Tilt AmountAccelerate Tilt SensitivityClimb Tilt AmountClimb Tilt Sensitivity

Ground Hug X and Z

  • LegAnimator的两个参数,表示身体要多大程度与X轴及Z轴平行。
  • 对于直立行走的物体,X和Z都为0,不需要平行。
  • 对于爬行动物,比如猫狗,Z要为1,表示身体与Z轴平行,而蜘蛛、爬虫等,则X与Z都为1。
  • 与Z的平行程度影响前后lean效果,Z为1,则无lean效果。
  • 与X的平行程度影响左右lean效果,X为1,则无lean效果。

MotionGroup

  • LegController的SourceAnimations中的一个概念
  • 一个MotionGroup将作为一套动作看待,比如站立动作组,下蹲动作组,匍匐动作组,受伤动作组,潜行动作组等。
  • 不能含有NativeSpeed相同的动画,故最多一个闲置动画
  • 以渐近的方式切换到一个指定的动画组animation.CrossFade("group_name", fadeTime)
  • 设置融入时的组权重animation["group_name"].weight = weightValue
  • 不要自己控制已经被LocomotionSystem控制的动画。

Grouped or Ungrouped or NotUsed

  • NotUsed指不被LocomotionSystem控制的动画,这类动画同样会与LocomotionSystem控制的动画有融合效果,但不会保证脚贴紧地面,比如跳跃、腾空等动画。
  • Grouped和Ungrouped动画都是被LocomotionSystem控制的动画,这些动画的脚被保证紧贴地面。

附加

PlatformCharacterController

  • 依赖并于CharacterMotor配合
  • 获取用户输入并转化为CharacterMotor的各项运动参数

NormalCharacterMotor

  • 依赖并与CharacterController配合
  • 根据当前运动参数执行角色的运动
  • MaxRotationSpeed,影响各个方向运动动画的融合,若为0,则为无转身,各个方向动画将根据运动方向进行适当播放。

CharacterMotor

  • 角色运动核心类,定义了与角色运动相关的核心属性,需要继承以实现特定运动控制。
  • 动画系统会依据CharacterMotor的属性播放相应的动画。
  • 其它运动控制类只要控制CharacterMotor三个方面的属性即可实现角色运动:
    1 desiredMoveDirection,控制角色运动方向;
    2 desiredFaceingDirection,控制角色注视方向;
    3 desiredVelocity(只读),角色的速度,由desiredMoveDirection以及maxForwardSpeed,maxBackwardsSpeed,maxSidewaysSpeed,maxVelocityChange共同决定。

相关文章

网友评论

      本文标题:Locomotion System Study Notes

      本文链接:https://www.haomeiwen.com/subject/clegnhtx.html