赞
踩
在UnityAPI手册中Physics.CheckBox是Unity Physics类中的一个方法,该方法拥有四个重载,用于检查给定的盒体是否与其他碰撞体重叠。
public static bool CheckBox (Vector3 center, Vector3 halfExtents, Quaternion orientation= Quaternion.identity, int layermask= DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction= QueryTriggerInteraction.UseGlobal);
Center | 盒体的中心 |
---|---|
halfExtents | 盒体各个维度大小的一半 |
orientation | 盒体的旋转(默认是Quaternion.identity) |
layermask | 层遮罩,用于在投射射线时有选择地忽略碰撞体(默认是射线投射层的层遮罩常量,即IgnoreRaycastLayer这一层之外的所有层) |
queryTriggerInteraction | 指定该查询是否应该命中触发器(默认是project settings页面下physics的Queries Hit Triggers设置) |
uintyapi手册Physics.CheckBox
首先创建一个脚本,名字CheckboxTest,代码如下
using UnityEngine; public class CheckboxTest : MonoBehaviour { public float xSize = 1; public float ySize = 1; public float zSize = 1; // Update is called once per frame void Update() { if (Physics.CheckBox(transform.position, new Vector3(xSize, ySize, zSize) / 2, Quaternion.identity, 16)) { Debug.Log(1); } } private void OnDrawGizmosSelected() { Gizmos.color = Color.green; Gizmos.DrawCube(transform.position, new Vector3(xSize, ySize, zSize)); } }
然后创建一个平面Plane,并放进我们的脚本Checkbox
然后创建一个球体Sphere
Sphere 的布层Layer改为Water(2的4次方是16)
开始运行我们的unity
我们可以发现在开始的时候1就开始出现。直到小球完全离开绿色的检查盒停止,再次接触后1又开始出现在控制台信息栏一侧
使用该方法时,检查盒会对被检查的物体是否在它区域内以及区域碰撞作出反应,以下画图所示
这是方法返回布尔值为false
这是方法返回布尔值为true
最后顺便拜托问下大伙如何将主标题从目录中去除以及如何直接从csdn上画并交补集图
第一次制作,制作不易,如有问题,欢迎指正。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。