说明:
Character一般用于主角这类用户控制的物体,它不会受到scene的重力影响,不会被其他物体推。
程序中可以使用它的move方法移动它,当他碰到静态物体时,会停下来,遇到动态物体时会推开他,当然,哲学都是可以通过activegroup老控制的,group至多有32组。
character还有上楼梯模式,在某些高度的台阶,可以直接上去(stepOffest)
character还可以设置可以走上去的斜坡(slopeLimit)
由于character不受到场景的重力影响,所以,用户要在move函数中自己添加重力因素,也就是说,character可以悬浮在空中,除非那里有其他的activegroup物体;
角色控制器中的变量:
isGrounded:
着地,在最后的移动角色控制器是否接触地面;
velocity:角色当前的相对速度;
cllisionFlags:在最后的characterController.Move调用期间,胶囊提的哪个部分和周围环境相碰撞。
radius:角色胶囊体 的半径,
height:角色胶囊体的高度。
center:相对于变换位置的角色胶囊体的中心。
slopLimit:角色控制器的坡度洗漱限制,
stepOffest:以米为单位的角色控制器的台阶偏移量(台阶高度)
detectCollisions:其他刚体和角色控制器能否能够与本角色控制器相互碰撞。默认值筒仓为enabled;
函数:
SimpleMove:
function SimpleMove (speed : Vector3) : bool
Move:
function Move (motion : Vector3) : CollisionFlags,
一个更加复杂的移动函数,每次都绝对移动。
尝试着通过动力移动控制器,动力只受限制于碰撞。它将沿着碰撞器滑动。CollisionFlags 是发生于Move的碰撞的概要。这个函数不应用任何重力。
发送消息:
OnControllerColliderHit:控制器碰撞器相碰,当控制器碰撞一个正在移动的碰撞器时,此函数被调用;
Inherited members继承成员
Inherited Variables继承变量
-
attachedRigidbody
碰撞器附加的刚体。 -
isTrigger
碰撞器是一个触发器? (是否可以穿越) -
material
撞器使用的材质。 -
sharedMaterial
碰撞器的共享物理材质。