Version: 2021.3

CollisionFlags

enumeration

切换到手册

描述

CollisionFlags 是 CharacterController.Move 返回的位掩码。

其概述您的角色与其他任何对象的碰撞位置。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Update() { CharacterController controller = GetComponent<CharacterController>();

if (controller.collisionFlags == CollisionFlags.None) { print("Free floating!"); }

if ((controller.collisionFlags &amp; CollisionFlags.Sides) != 0) { print("Touching sides!"); }

if (controller.collisionFlags == CollisionFlags.Sides) { print("Only touching sides, nothing else!"); }

if ((controller.collisionFlags &amp; CollisionFlags.Above) != 0) { print("Touching Ceiling!"); }

if (controller.collisionFlags == CollisionFlags.Above) { print("Only touching Ceiling, nothing else!"); }

if ((controller.collisionFlags &amp; CollisionFlags.Below) != 0) { print("Touching ground!"); }

if (controller.collisionFlags == CollisionFlags.Below) { print("Only touching ground, nothing else!"); } } }

变量

NoneCollisionFlags 是 CharacterController.Move 返回的位掩码。
SidesCollisionFlags 是 CharacterController.Move 返回的位掩码。
AboveCollisionFlags 是 CharacterController.Move 返回的位掩码。
BelowCollisionFlags 是 CharacterController.Move 返回的位掩码。