CollisionShape2D
Прикрепляет ресурс формы к телу или зоне 2D.
CollisionShape2D должен быть прямым ребёнком подходящего CollisionObject. Shape — разделяемый ресурс: изменение размеров общей формы влияет на все использующие её экземпляры. Для независимой геометрии сначала назначьте Duplicate.
Меняйте размеры ресурса при единичном масштабе физической ветви; отдельно проверяйте наследуемый масштаб. Disabled убирает форму из физического участия после применения изменения. Внутри физического сигнала используйте SetDeferred, а не немедленную перестройку. Скрытие видимой модели не отключает коллизию.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
CollisionShape2DКонструктор
public CollisionShape2D();Свойства6
DebugColorСвойство
public Color DebugColor { get; set; }Цвет формы столкновения, отображаемый в редакторе или в запущенном проекте, если Отладка > Видимые формы столкновения отмечены в верхней части редактора.
Примечание: Значение по умолчанию — ProjectSettings.debug/shapes/collision/shape_color. Значение Color(0, 0, 0, 0), задокументированное здесь, является заполнителем, а не фактическим цветом отладки по умолчанию.
DisabledСвойство
public bool Disabled { get; set; }Исключает форму из физического участия после применения изменения. В физическом callback используйте SetDeferred; скрытие рисунка не заменяет этот флаг.
OneWayCollisionСвойство
public bool OneWayCollision { get; set; }Определяет, должна ли эта форма столкновения обнаруживать столкновение только с одной стороны (сверху или снизу).
Примечание: Это свойство не действует, если этот CollisionShape2D является дочерним узлом узла Area2D.
Примечание: Направление одностороннего столкновения можно настроить, установив CollisionShape2D.OneWayCollisionDirection.
OneWayCollisionDirectionСвойство
public Vector2 OneWayCollisionDirection { get; set; }Направление, используемое при одностороннем столкновении.
OneWayCollisionMarginСвойство
public float OneWayCollisionMargin { get; set; }Поле, используемое для одностороннего столкновения (в пикселях). Более высокие значения сделают форму толще и лучше подходят для коллайдеров, которые входят в форму с высокой скоростью.
ShapeСвойство
public Shape2D Shape { get; set; }Ресурс геометрии. Может разделяться несколькими экземплярами; изменение его размеров влияет на всех пользователей. Для отдельного коллайдера сначала назначьте Duplicate.
Методы12
GetDebugColorColor
public Color GetDebugColor();ColorGetOneWayCollisionDirectionVector2
public Vector2 GetOneWayCollisionDirection();Vector2GetOneWayCollisionMarginfloat
public float GetOneWayCollisionMargin();floatGetShapeShape2D
public Shape2D GetShape();Shape2DIsDisabledbool
public bool IsDisabled();boolIsOneWayCollisionEnabledbool
public bool IsOneWayCollisionEnabled();boolSetDebugColorvoid
public void SetDebugColor(Color color);| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
SetDisabledvoid
public void SetDisabled(bool disabled);| Имя | Тип | По умолчанию |
|---|---|---|
disabled | bool | — |
SetOneWayCollisionvoid
public void SetOneWayCollision(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetOneWayCollisionDirectionvoid
public void SetOneWayCollisionDirection(Vector2 direction);| Имя | Тип | По умолчанию |
|---|---|---|
direction | Vector2 | — |
SetOneWayCollisionMarginvoid
public void SetOneWayCollisionMargin(float margin);| Имя | Тип | По умолчанию |
|---|---|---|
margin | float | — |
SetShapevoid
public void SetShape(Shape2D shape);| Имя | Тип | По умолчанию |
|---|---|---|
shape | Shape2D | — |