CollisionPolygon2D
继承: Node2D < CanvasItem < Node < Object
向 CollisionObject2D 父级提供多边形形状的节点。
描述
一个节点,为 CollisionObject2D 父级提供加厚多边形形状(角柱体)并允许对其进行编辑。该多边形可以是凹的或凸的。这可以为 Area2D 提供检测形状,也能够将 PhysicsBody2D 转变为实体对象。
警告:非均匀缩放的 CollisionShape2D 可能不会按预期运行。可改为确保在所有轴上保持其缩放相同,并调整其形状资源。
属性
| ||
| ||
| ||
| ||
|
枚举
enum BuildMode:
BuildMode BUILD_SOLIDS = 0
碰撞包含多边形及其内部区域。在这个模式下,该节点的效果与使用若干 ConvexPolygonShape2D 节点相同,其中的每个节点都包含该多边形凸分解后的凸形状(但不会有使用多个节点的负担)。
BuildMode BUILD_SEGMENTS = 1
碰撞经包含多边形的边缘。在这个模式下,该节点的效果与单个由若干线段组成的 ConcavePolygonShape2D 相同,其中(第一条以后的)每条线段都从上一条的终点开始,最后一条线段在第一条的起点结束(构成闭合但中空的多边形)。
属性说明
BuildMode build_mode = 0
碰撞构建模式。使用 BuildMode 常量之一。
bool disabled = false
如果为 true
,则不会检测到碰撞。
bool one_way_collision = false
如果为 true
,则只有面朝上的边缘才会与其他对象发生碰撞,方向是相对于 CollisionPolygon2D 的旋转而言的。
注意:如果这个 CollisionPolygon2D 是 Area2D 节点的子节点,则这个属性无效。
float one_way_collision_margin = 1.0
用于单向碰撞的边距(以像素为单位)。较高的值将使形状更厚,并且对于以高速进入多边形的对撞机来说效果更好。
PackedVector2Array polygon = PackedVector2Array()
void set_polygon ( PackedVector2Array value )
PackedVector2Array get_polygon ( )
该多边形的顶点列表。每个点都与下一个点相连,最后一个点与第一个点相连。
警告:返回值是 PackedVector2Array 的副本,不是引用。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.