我对BoxCollider2D
有点问题。当我这样做时:
bool someBool = someBounds.Contains(somePoint);
当身体没有如图1所示的旋转时,我得到预期的结果。(红色区域是somePoint使someBool成立的地方) 当身体旋转时,somePoint会在红色区域内的任何地方都生成一些真实的图片(图片2)。我不想要这种行为。我希望点在绿色区域内返回true(图3)。
答案 0 :(得分:2)
要实现目标,请使用BoxCollider2D.OverlapPoint
,如下所示:
bool overlaps = myBoxCollider2D.OverlapPoint (somePoint);
bounds
的{{1}}假设该对象是AABB - "轴对齐的边界框",这意味着它没有旋转并且像图1中那样对齐。所以,你的照片1和2确实证明了这一点。
来源:如果您转到BoxCollider2D文档,请单击Bounds,然后单击Bounds类,您将看到界限所指的详细信息。