Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

CollisionShape2D

Наследует: Node2D < CanvasItem < Node < Object

Узел, который предоставляет Shape2D родительскому CollisionObject2D.

Описание

Узел, который передает объект Shape2D родительскому объекту CollisionObject2D и позволяет его редактировать. Это может придать объекту Area2D форму обнаружения или превратить объект PhysicsBody2D в твердый объект.

Обучающие материалы

Свойства

Color

debug_color

Color(0, 0, 0, 0)

bool

disabled

false

bool

one_way_collision

false

Vector2

one_way_collision_direction

Vector2(0, 1)

float

one_way_collision_margin

1.0

Shape2D

shape


Описания свойств

Color debug_color = Color(0, 0, 0, 0) 🔗

  • void set_debug_color(value: Color)

  • Color get_debug_color()

Цвет формы столкновения, отображаемый в редакторе или в запущенном проекте, если Отладка > Видимые формы столкновения отмечены в верхней части редактора.

Примечание: Значение по умолчанию — ProjectSettings.debug/shapes/collision/shape_color. Значение Color(0, 0, 0, 0), задокументированное здесь, является заполнителем, а не фактическим цветом отладки по умолчанию.


bool disabled = false 🔗

  • void set_disabled(value: bool)

  • bool is_disabled()

Отключенная форма столкновения не имеет эффекта в мире. Это свойство должно быть изменено с помощью Object.set_deferred().


bool one_way_collision = false 🔗

  • void set_one_way_collision(value: bool)

  • bool is_one_way_collision_enabled()

Определяет, должна ли эта форма столкновения обнаруживать столкновение только с одной стороны (сверху или снизу).

Примечание: Это свойство не действует, если этот CollisionShape2D является дочерним узлом узла Area2D.

Примечание: Направление одностороннего столкновения можно настроить, установив one_way_collision_direction.


Vector2 one_way_collision_direction = Vector2(0, 1) 🔗

  • void set_one_way_collision_direction(value: Vector2)

  • Vector2 get_one_way_collision_direction()

Направление, используемое при одностороннем столкновении.


float one_way_collision_margin = 1.0 🔗

  • void set_one_way_collision_margin(value: float)

  • float get_one_way_collision_margin()

Поле, используемое для одностороннего столкновения (в пикселях). Более высокие значения сделают форму толще и лучше подходят для коллайдеров, которые входят в форму с высокой скоростью.


Shape2D shape 🔗

Фактическая форма, принадлежащая этой форме столкновения.