2D 复合碰撞体组件是用于 2D 物理的碰撞体。与大多数碰撞体不同,此碰撞体没有定义固有的形状。相反,此碰撞体将合并所设置的 2D 盒型碰撞体 (Box Collider 2D) 或 2D 多边形碰撞体 (Polygon Collider 2D) 的形状。2D 复合碰撞体使用所有此类碰撞体的顶点(几何体),并将这些顶点合并为由 2D 复合碰撞体本身控制的新几何体。
2D 盒型碰撞体和 2D 多边形碰撞体组件具有 Used By Composite 复选框。勾选此复选框即可将这些碰撞体附加到 2D 复合碰撞体。这些碰撞体还与 2D 复合碰撞体附加到同一 2D 刚体。启用 Used by Composite 时,其他属性会从该组件中消失,因为这些属性现在由附加的 2D 复合碰撞体控制。
请参阅关于 2D 复合碰撞体的 API 文档以了解有关使用 2D 复合碰撞体进行编程的更多信息。
属性 | 功能 |
---|---|
Density | 通过更改密度可更改游戏对象关联的 2D 刚体的质量计算。如果将该值设置为 0,则其关联的 2D 刚体将在所有质量计算(包括质心计算)中忽略 2D 碰撞体。请注意,只有在关联的 2D 刚体组件中启用 Use Auto Mass 时,此选项才可用。 |
Material | 一种 2D 物理材质,可用于确定碰撞的属性(例如摩擦和弹性)。 |
Is Trigger | 如果希望 2D 复合碰撞体作为触发器运行,请选中此框(请参阅关于碰撞体的概述文档以了解有关触发器的更多信息)。 |
Used by Effector | 如果希望 2D 复合碰撞体由附加的 2D 效应器组件使用,请选中此框。 |
Offset | 设置 2D 碰撞体几何形状的局部偏移。 |
Geometry Type | 合并碰撞体时,所选碰撞体的顶点将组合为两种不同几何体类型之一。使用此下拉选单,可将几何体类型设置为 Outlines 或 Polygons。 |
Outlines | 生成具有空心轮廓的 2D 碰撞体,与 2D 边界碰撞体 (Edge Collider 2D) 生成的结果一样。 |
Polygons | 生成具有实心多边形的 2D 碰撞体,与 2D 多边形碰撞体 (Polygon Collider 2D) 生成的结果一样。 |
Generation Type | 该方法用于控制在更改 2D 复合碰撞体时或者更改其任何成员碰撞体时何时生成几何体。 |
Synchronous | 对 2D 复合碰撞体或其使用的任何碰撞体进行更改时,Unity 立即生成新几何体。 |
Manual | 仅在手动请求时才生成新几何体。要请求生成几何体,请调用 CompositeCollider2D.GenerateGeometry 脚本 API,或者单击选择项下方显示的 Regenerate Geometry 按钮。 |
Vertex Distance | 设置从复合碰撞体收集的任何顶点允许的最小间距值。比此限值更近的任何顶点都将被删除。此设置可用于控制顶点合成的有效分辨率。 |
Edge Radius | 控制边缘周围的半径,使顶点为圆形。这会产生一个具有圆凸角的更大 2D 碰撞体。此设置的默认值是 0(无半径)。仅当 Geometry Type 设置为 Outlines 时,此设置才有效。 |
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.