使用射线Raycast判断某个方向是否有碰撞体
1个回答
展开全部
public class NewBehaviourScript : MonoBehaviour {
void Start () {
if (Physics2D.Raycast(this.transform.position, Vector2.down, 10.0f,
1 << LayerMask.NameToLayer("Collider"))) {
string colliderName = Physics2D.Raycast(this.transform.position, Vector2.down, 10.0f,
1 << LayerMask.NameToLayer("Collider")).collider.gameObject.name;
Debug.Log("Collider " + colliderName + " is under the CubeUp");
}
else {
Debug.Log("No collider is under the CubeUp");
}
}
void Update () {
}
}
可以看到这里需要把下方物体CubuDown的Layer设置为Collider(上方物体CubeUp不需要设置):
运行后:
即可以检测到下方有碰撞体。
void Start () {
if (Physics2D.Raycast(this.transform.position, Vector2.down, 10.0f,
1 << LayerMask.NameToLayer("Collider"))) {
string colliderName = Physics2D.Raycast(this.transform.position, Vector2.down, 10.0f,
1 << LayerMask.NameToLayer("Collider")).collider.gameObject.name;
Debug.Log("Collider " + colliderName + " is under the CubeUp");
}
else {
Debug.Log("No collider is under the CubeUp");
}
}
void Update () {
}
}
可以看到这里需要把下方物体CubuDown的Layer设置为Collider(上方物体CubeUp不需要设置):
运行后:
即可以检测到下方有碰撞体。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
英华检测
2024-11-19 广告
2024-11-19 广告
英华检测|工业CT设备销售|工业ct和X射线检测服务丨4008959688 英华检测(上海)有限公司,专业从事工业CT/X射线设备销售及配套工业CT/X射线检测服务。目前在上海、东莞、北京、西安分别设有办公室,总部位于上海。公司计划将在全国...
点击进入详情页
本回答由英华检测提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询