public Collider2D OverlapArea (Vector2 pointA, Vector2 pointB, int layerMask= Physics2D.DefaultRaycastLayers);
public Collider2D OverlapArea (Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter);

参数

pointA矩形的一角。
pointB矩形 pointA 角的对角。
layerMask筛选器,用于检查仅在指定层上的对象。
contactFilter用于以不同方式筛选结果的接触筛选器,例如按层遮罩和 Z 深度。注意,法线角度不用于重叠测试。

返回

Collider2D 与该区域重叠的碰撞体。

描述

将一个区域(非旋转的盒体)与 PhysicsScene2D 中的碰撞体进行比对,仅返回第一个交点。

从概念上说,“OverlapArea”就像通过矩形形状查看场景以确定可以看到的内容。在该过程中,可以检测并报告所看到的任何 Collider2D

此函数返回与区域重叠的 Collider2D,如果没有重叠,则返回 NULL。

layerMask 可用于仅在特定层上有选择地检测对象(例如,这让您能够仅将检测应用于敌人角色)。使用 contactFilter 的此方法重载可以按 ContactFilter2D 中提供的选项筛选结果。

另请参阅:PhysicsScene2DLayerMaskPhysics2D.DefaultRaycastLayersPhysics2D.IgnoreRaycastLayerPhysics2D.queriesHitTriggers


public int OverlapArea (Vector2 pointA, Vector2 pointB, Collider2D[] results, int layerMask= Physics2D.DefaultRaycastLayers);
public int OverlapArea (Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, Collider2D[] results);

参数

pointA矩形的一角。
pointB矩形 pointA 角的对角。
results用于接收结果的数组。该数组的大小决定可返回的结果的最大数量。
layerMask筛选器,用于检查仅在指定层上的对象。
contactFilter用于以不同方式筛选结果的接触筛选器,例如按层遮罩和 Z 深度。注意,法线角度不用于重叠测试。

返回

int 返回放置在 results 数组中的结果数。

描述

将一个区域(非旋转的盒体)与 PhysicsScene2D 中的碰撞体进行比对,返回所有交点。

从概念上说,“OverlapArea”就像通过矩形形状查看场景以确定可以看到的内容。在该过程中,可以检测并报告所看到的任何 Collider2D

此函数返回与区域重叠的 Collider2D 数组。

整数返回值为与该区域交叠的对象数(可能为零),但如果结果数组中没有足够的元素来报告所有这些结果,则不会调整该数组的大小。其意义在于不为这些结果分配内存,因此会提高垃圾收集性能。请注意,如果传递空数组,则始终会得到零结果。

layerMask 可用于仅在特定层上有选择地检测对象(例如,这让您能够仅将检测应用于敌人角色)。使用 contactFilter 的此方法重载可以按 ContactFilter2D 中提供的选项筛选结果。

另请参阅:PhysicsScene2DLayerMaskPhysics2D.DefaultRaycastLayersPhysics2D.IgnoreRaycastLayerPhysics2D.queriesHitTriggers


public int OverlapArea (Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, List<Collider2D> results);

参数

pointA矩形的一角。
pointB矩形 pointA 角的对角。
contactFilter用于以不同方式筛选结果的接触筛选器,例如按层遮罩和 Z 深度。注意,法线角度不用于重叠测试。
results用于接收结果的列表。

返回

int 返回放置在 results 列表中的结果数。

描述

将一个区域(非旋转的盒体)与 PhysicsScene2D 中的碰撞体进行比对,返回所有交点。

从概念上说,“OverlapArea”就像通过矩形形状查看场景以确定可以看到的内容。在该过程中,可以检测并报告所看到的任何 Collider2D

此函数返回与区域重叠的 Collider2D 的列表。

该整数返回值是写入到 results 列表中的结果数。如果结果列表中没有足够的元素来报告所有这些结果,则会调整列表的大小。这可在 results 列表无需调整大小时防止为结果分配内存,可在经常执行查询时提高垃圾收集性能。

也可以通过 contactFilter 对结果进行筛选。

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961