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
Hereda: Shape2D < Resource < RefCounted < Object
Una forma de polígono convexo 2D utilizada para colisiones físicas.
Descripción
Una forma de polígono convexo 2D, destinada a ser utilizada en física. Se utiliza internamente en CollisionPolygon2D cuando está en modo CollisionPolygon2D.BUILD_SOLIDS.
ConvexPolygonShape2D es sólido, lo que significa que detecta colisiones de objetos que están completamente dentro de él, a diferencia de ConcavePolygonShape2D que es hueco. Esto lo hace más adecuado tanto para la detección como para la física.
Descomposición convexa: Un polígono cóncavo puede dividirse en varios polígonos convexos. Esto permite que los cuerpos físicos dinámicos tengan colisiones cóncavas complejas (a un costo de rendimiento) y se puede lograr utilizando varios nodos ConvexPolygonShape2D o utilizando el nodo CollisionPolygon2D en modo CollisionPolygon2D.BUILD_SOLIDS. Para generar un polígono de colisión a partir de un sprite, selecciona el nodo Sprite2D, ve al menú Sprite2D que aparece encima de la ventana gráfica y elige Crear nodo hermano Polygon2D.
Rendimiento: ConvexPolygonShape2D es más rápido para comprobar las colisiones en comparación con ConcavePolygonShape2D, pero es más lento que las formas de colisión primitivas como CircleShape2D y RectangleShape2D. Su uso generalmente debe limitarse a objetos de tamaño mediano que no pueden tener su colisión representada con precisión por formas primitivas.
Propiedades
|
Métodos
void |
set_point_cloud(point_cloud: PackedVector2Array) |
Descripciones de Propiedades
PackedVector2Array points = PackedVector2Array() 🔗
void set_points(value: PackedVector2Array)
PackedVector2Array get_points()
La lista de vértices del polígono que forman una envolvente convexa. Puede estar en orden horario o antihorario.
Advertencia: Solo establece esta propiedad en una lista de puntos que realmente formen una envolvente convexa. Utiliza set_point_cloud() para generar la envolvente convexa de un conjunto arbitrario de puntos.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedVector2Array for more details.
Descripciones de Métodos
void set_point_cloud(point_cloud: PackedVector2Array) 🔗
Basándose en el conjunto de puntos proporcionados, esto asigna la propiedad points utilizando el algoritmo de envolvente convexa, eliminando todos los puntos innecesarios. Véase Geometry2D.convex_hull() para obtener más detalles.