ControllerColliderHit
ControllerColliderHit类用于描述角色控制器与碰撞器之间的碰撞信息。
可以通过以下方式获取ControllerColliderHit对象:
首先在场景中创建一个立方体collider和胶囊体characterController(如下图),分别将它们的位置设置为(0,0,0)和(0,-2,0),并为立方体添加一个BoxCollider组件,为胶囊体添加一个CharacterController组件,并将脚本挂在胶囊体上。
typeScript
OnStart(): void {
let charater = this.gameObject.GetComponent<CharacterController>(CharacterController);
//将角色控制器向上移动一个单位
charater.Move(new Vector3(0,1,0));
}
OnControllerColliderHit(controllerColliderHit):void{
Debug.Log("角色控制器与碰撞器产生碰撞时的碰撞信息",controllerColliderHit);
}成员变量
ControllerColliderHit.collider : Collider |
| (只读)发生碰撞时被撞物体的碰撞器。 |
ControllerColliderHit.controller : CharacterController |
| (只读)发生碰撞时的角色控制器。 |
ControllerColliderHit.transform : Transform |
| (只读)被控制器碰撞的物体的Transform组件。 |
ControllerColliderHit.point : Vector3 |
| (只读)角色碰撞器在世界空间中的碰撞点。 |
ControllerColliderHit.gameObject : GameObject |
| (只读)发生碰撞时被撞的游戏对象。 |
ControllerColliderHit.normal : Vector3 |
| (只读)角色碰撞器在世界空间中碰撞的表面的法线。 |
ControllerColliderHit.moveLength : number |
| (只读)发生碰撞时角色的移动距离。 |
ControllerColliderHit.moveDirection : Vector3 |
| (只读)发生碰撞时角色控制器移动的方向。 |
