Version: 2017.3

Physics2D.GetRayIntersectionAll

切换到手册
public static RaycastHit2D[] GetRayIntersectionAll (Ray ray, float distance= Mathf.Infinity, int layerMask= DefaultRaycastLayers);

参数

ray 定义要测试的原点和方向的 3D 射线。
distance 光线的最大投射距离。
layerMask 过滤器,用于仅在特定层上检测碰撞体。

返回

RaycastHit2D[] 返回的投射数量。

描述

向场景中的碰撞体投射 3D 射线,返回射线路径上的所有碰撞体。

对于查找与任意 3D 射线相交的碰撞体来说,这很有用。

注意,该函数将为返回的 RaycastHit2D 数组分配内存。如果需要频繁进行此类调用,可以使用 GetRayIntersectionNonAlloc 来避免这种开销。

此外,该函数是一种 3D 交叉测试,因此 RaycastHit2D 中返回的任何碰撞法线都将为零。