在游戏开发中,有时要判断某个点是否在某个盒子里,其实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);
本文介绍了如何使用Unity内置的方法Bounds.Contains来判断一个点或者物体是否位于另一个物体的边界内。通过简单的代码示例展示了如何检查一个点是否在一个盒子碰撞器内,以及如何判断一个渲染器是否部分或全部位于盒子碰撞器的边界内。
2315

被折叠的 条评论
为什么被折叠?



