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().