Unity判断在物体内部和相交

本文介绍了如何使用Unity内置的方法Bounds.Contains来判断一个点或者物体是否位于另一个物体的边界内。通过简单的代码示例展示了如何检查一个点是否在一个盒子碰撞器内,以及如何判断一个渲染器是否部分或全部位于盒子碰撞器的边界内。

在游戏开发中,有时要判断某个点是否在某个盒子里,其实Unity已经有支持的方法了,很容易就实现了.

What you’re looking for is Bounds.Contains. The method checks if a position is within some bounds, such as the bounds of a box collider:

 Vector3 pos = someRenderer.transform.position;
 Bounds bounds = myBoxCollider.bounds;
 bool rendererIsInsideTheBox = bounds.Contains(pos);

Of course, if you’re going to include renderers that are partially inside the bounds of the box, you can check the bounds of the renderer (renderer.bounds), and see if the renderer intersects the bounds of the box:

 Bounds rendererBounds = someRenderer.bounds;
 Bounds colliderBounds = myBoxCollider.bounds;
 bool rendererIsInsideBox = colliderBounds.Intersects(rendererBounds);
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值