控制器介绍
动物脚本负责控制动物的所有运动逻辑.它管理所有的动画师和刚体参数,以及所有的状态和模式,动物可以做。
动物控制器 是一个动画框架控制器,根动或到位,为任何生物或人形。它利用刚体与物理世界的互动和动画师的玩动画。
States
States 是不互相重叠的动画。例如,动物不能同时奔跑和跳跃,或者飞行和游泳。
这些动画还需要一些内部逻辑才能发挥作用。
对于行走,动物需要与地面保持一致。对于游泳,动物需要与水面保持一致。为了下降,动物需要使用重力。
Modes
另一方面,模式是一组被称为 才能, 它可以在 状态 动画。例如,动物可以在奔跑时攻击,在飞行时躲避,在下降时接受伤害等。
在大多数情况下,这些动画不需要使用任何特定逻辑,但如果它们需要任何自定义逻辑:可以使用模式修饰符来更改对模式动画的一些影响。
Stances 立场
状态是状态动画的变化。例如。运动动画(行走、跑步)可以用不同的方式演奏。如果动物受伤,或者蹲着/偷偷摸摸,或者站在两条腿上,这个角色的行走方式就不同了。他仍处于运动状态,但立场不同。
主要组成部分
动物管理员需要 动画组件 以及 刚体组件 去工作。这两个组件需要与动物脚本处于同一层次。
动画组件
因为我们用的是 刚体 构成部分: 更新模式 建议将其设定为 动画物理学 .
刚体组件
刚体组件允许动物与现场的其他刚性和静态物体相互作用。
旋转将由动物组成部分处理,因此,根据代码,所有的旋转将被冻结:
碰撞器
对于所有生物,建议两足动物或四足动物在生物的主要骨骼(如脊椎和头部)上添加碰撞器。但是,如果您愿意,您可以只向根游戏对象添加一个胶囊碰撞器。
重要的
如果在角色的根上添加主碰撞器,则碰撞器不得接触地面。这将导致斜坡上的滑动问题。
层
默认情况下,动物控制器设置为“animal”层。动物游戏对象层次结构中的所有游戏对象也应设置为同一层。
攻击触发器、交互触发器和其他不属于动物本身的碰撞器应设置在“忽略光线投射层”上。
动画控制器
… 动画控制器 是动物脚本的核心动画逻辑。它将通过动物剧本进行前后交流,告知哪些动画正在播放,哪些动画正在播放 状态 , 模式, 或 地位 动物在。
为了使动物控制器正常工作,动画状态被标记为唯一的 标签 寻找并检查活动的游戏动画是否与动物组成部分的指令相匹配。
像这样的标签 ( Locomotion, Jump, Idle, Fly, Fall, etc ).
这样,控制器就知道动画师是否在活动中播放了正确的动画 状态 .
Animal组件
General
Player 玩家
pivots 主要的
如果你只使用 局部 不与地形保持一致角色节点。
(在默认情况下,当添加一个新的动物成分时,会创建3个支点: 臀部 , 胸部 和 水 (游泳用)。)
臀部和胸部轴长度/乘数必须接触表面,甚至更远一点,这样动物就能永远找到地面
第一列是名称
第二列 是菜单按钮 用于更改显示的枢轴的下一个参数:
1、Position位置 枢轴相对于动物的局部位置。
2、Direction:轴的局部方向。默认情况下设置为矢量3.向下
3、Pivot Color 数据轴颜色: 在场景中显示的轴的颜色,游戏中没有作用
第六列或者第四列的m是乘法器:这个值是支点的长度。它用于设置用于控制器上的激光铸造的射线长度。
最后一列是编辑模式,可以帮你快速定位支点位置。
Movement 运动
Camera Input 摄像机输入(动物会利用摄像头向前移动)
Always Forward 总是向前(动物将永远前进-就像在无穷无尽的跑步游戏)
Use Camera Up 使用相机向上(在水下飞行或游泳时,使用相机向上或向下移动的矢量–如果这是错误的,动物将需要一个向上或向下的输入来移动更高或更低。)
Smooth Vertical 光滑垂直的(用于操纵杆或移动输入,以提高速度通过棒压)
Can Sprint 能跑(动物能冲刺吗?)
Turn Multiplier 转弯乘数(更高的数值意味着动物会更快地转向)
In Place Damp 地方潮湿(平稳地转动。当它到达目标并在人工智能动物周围移动时,人工智能就会使用它)
Turn Limit 转动限制(当转弯角在所提供的限制范围之外时,使动物减速)
Animator Speed 动画速度(全球乘数动物的动画。更高的值意味着动画会玩得更快)
Time Multiplier时间乘数(当地时间乘数动物。可用于慢动作运动)
Ground 范围
…