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.
Checking the stable version of the documentation...
ConvexPolygonShape2D
Наследует: Shape2D < Resource < RefCounted < Object
Выпуклая двухмерная многоугольная форма, используемая для физического столкновения.
Описание
Форма 2D выпуклого многоугольника, предназначенная для использования в физике. Используется внутри в CollisionPolygon2D, когда он находится в режиме CollisionPolygon2D.BUILD_SOLIDS.
ConvexPolygonShape2D является твердым, что означает, что он обнаруживает столкновения от объектов, которые полностью находятся внутри него, в отличие от ConcavePolygonShape2D, который является полым. Это делает его более подходящим как для обнаружения, так и для физики.
Выпуклая декомпозиция: Вогнутый полигон может быть разделен на несколько выпуклых полигонов. Это позволяет динамическим физическим телам иметь сложные вогнутые столкновения (за счет производительности) и может быть достигнуто с помощью нескольких узлов ConvexPolygonShape2D или с помощью узла CollisionPolygon2D в режиме CollisionPolygon2D.BUILD_SOLIDS. Чтобы сгенерировать полигон столкновения из спрайта, выберите узел Sprite2D, перейдите в меню Sprite2D, которое появляется над областью просмотра, и выберите Создать Polygon2D Sibling.
Производительность: ConvexPolygonShape2D быстрее проверяет столкновения по сравнению с ConcavePolygonShape2D, но медленнее, чем примитивные формы столкновений, такие как CircleShape2D и RectangleShape2D. Его использование, как правило, должно быть ограничено объектами среднего размера, столкновения которых не могут быть точно представлены примитивными формами.
Свойства
|
Методы
void |
set_point_cloud(point_cloud: PackedVector2Array) |
Описания свойств
PackedVector2Array points = PackedVector2Array() 🔗
void set_points(value: PackedVector2Array)
PackedVector2Array get_points()
Список вершин многоугольника, образующих выпуклую оболочку. Может быть в порядке по часовой стрелке или против часовой стрелки.
Предупреждение: Устанавливайте это свойство только для списка точек, которые фактически образуют выпуклую оболочку. Используйте set_point_cloud() для генерации выпуклой оболочки произвольного набора точек.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedVector2Array for more details.
Описания метода
void set_point_cloud(point_cloud: PackedVector2Array) 🔗
На основе предоставленного набора точек это назначает свойство points с использованием алгоритма выпуклой оболочки, удаляя все ненужные точки. Подробности см. в Geometry2D.convex_hull().