direction | 表示形状投射方向的向量。 |
results | 用于接收结果的数组。 |
distance | 将形状投射的最大距离。 |
ignoreSiblingColliders | 确定投射是否应忽略附加到同一 Rigidbody2D 的碰撞体(称为同级碰撞体)。 |
int 返回的结果数量。
将碰撞体形状投射到从该碰撞体位置开始的场景中,而忽略该碰撞体本身。
此函数接受碰撞体形状,并将其投射到从指定 direction
上的碰撞体位置开始的可选 distance
的场景中,并在提供的 results
数组中返回结果。该整数返回值为写入到 results
数组中的结果数。如果结果数组中没有足够的元素来报告所有这些结果,则不会调整数组的大小。其意义在于不为这些结果分配内存,因此在经常进行投射时会提高垃圾收集性能。
此外,这还将检测位于碰撞体开始位置的其他碰撞体(如果它们重叠)。在这种情况下,投射形状将从碰撞体内部开始,可能不与碰撞体表面交叠。这意味着无法计算碰撞法线,在这种情况下,返回的碰撞法线设置为正在测试的 direction
向量的倒数。
**注意:**使用 Collider2D.Cast() 需要使用 Rigidbody2D。如果
未声明 Rigidbody2D,则 Cast() 不起作用。但 Rigidbody2D
可以是静态的,也可以附加到 Collider2D。这将使 Cast() 正常
运行。此外,如果 Collider2D 对象没有 Rigidbody2D 对象,
则它可与同时具有 Collider2D 和 Rigidbody2D
对象的对象碰撞。
direction | 表示形状投射方向的向量。 |
contactFilter | 筛选由接触筛选器定义的结果。 |
results | 用于接收结果的数组。 |
distance | 将形状投射的最大距离。 |
ignoreSiblingColliders | 确定投射是否应忽略附加到同一 Rigidbody2D 的碰撞体(称为同级碰撞体)。 |
int 返回的结果数量。
将碰撞体形状投射到从该碰撞体位置开始的场景中,而忽略该碰撞体本身。
此函数接受碰撞体形状,并将其投射到从指定 direction
上的碰撞体位置开始的可选 distance
的场景中,并在提供的 results
数组中返回结果。该整数返回值为写入到 results
数组中的结果数。如果结果数组中没有足够的元素来报告所有这些结果,则不会调整数组的大小。其意义在于不为这些结果分配内存,因此在经常进行投射时会提高垃圾收集性能。contactFilter
参数可按 ContactFilter2D 中的选项筛选返回的结果。
此外,这还将检测位于碰撞体开始位置的其他碰撞体(如果它们重叠)。在这种情况下,投射形状将从碰撞体内部开始,可能不与碰撞体表面交叠。这意味着无法计算碰撞法线,在这种情况下,返回的碰撞法线设置为正在测试的 direction
向量的倒数。
direction | 表示形状投射方向的向量。 |
contactFilter | 筛选由接触筛选器定义的结果。 |
results | 用于接收结果的列表。 |
distance | 将形状投射的最大距离。 |
ignoreSiblingColliders | 确定投射是否应忽略附加到同一 Rigidbody2D 的碰撞体(称为同级碰撞体)。 |
int 返回的结果数量。
将碰撞体形状投射到从该碰撞体位置开始的场景中,而忽略该碰撞体本身。
此函数接受碰撞体形状,并将其投射到从指定 direction
上的碰撞体位置开始的可选 distance
的场景中,并在提供的 results
列表中返回结果。该整数返回值是写入到 results
列表中的结果数。如果结果列表中没有足够的元素来报告所有这些结果,则会调整列表的大小。这可在 results
列表无需调整大小时防止为结果分配内存,可在经常执行投射时提高垃圾收集性能。contactFilter
参数可按 ContactFilter2D 中的选项筛选返回的结果。
此外,这还会检测位于碰撞体开始位置的其他碰撞体(如果它们重叠)。在这种情况下,投射形状将从碰撞体内部开始,可能不与碰撞体表面交叠。这意味着无法计算碰撞法线,在这种情况下,返回的碰撞法线设置为正在测试的 direction
矢量的倒数。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.