ConcavePolygonShape2D
Hereda: Shape2D < Resource < RefCounted < Object
Una forma de polilínea 2D utilizada para colisiones físicas.
Descripción
Una forma de polilínea 2D, pensada para su uso en física. Se utiliza internamente en CollisionPolygon2D cuando está en modo CollisionPolygon2D.BUILD_SEGMENTS.
Siendo sólo una colección de segmentos de línea interconectados, ConcavePolygonShape2D es la forma 2D individual más libremente configurable. Puede utilizarse para formar polígonos de cualquier naturaleza, o incluso formas que no encierran un área. Sin embargo, ConcavePolygonShape2D es hueco incluso si los segmentos de línea interconectados encierran un área, lo que a menudo lo hace inadecuado para la física o la detección.
Nota: Cuando se utiliza para la colisión, ConcavePolygonShape2D está pensado para trabajar con nodos CollisionShape2D estáticos como StaticBody2D y probablemente no se comportará bien para CharacterBody2Ds o RigidBody2Ds en un modo que no sea Estático.
Advertencia: Los cuerpos físicos que son pequeños tienen la posibilidad de atravesar esta forma cuando se mueven rápido. Esto sucede porque en un fotograma, el cuerpo físico puede estar en el "exterior" de la forma, y en el siguiente fotograma puede estar "dentro" de ella. ConcavePolygonShape2D es hueco, por lo que no detectará una colisión.
Rendimiento: Debido a su complejidad, ConcavePolygonShape2D es la forma de colisión 2D más lenta para comprobar las colisiones. Su uso debe limitarse generalmente a la geometría del nivel. Si la polilínea está cerrada, se puede utilizar el modo CollisionPolygon2D.BUILD_SOLIDS de CollisionPolygon2D, que descompone el polígono en polígonos convexos; consulta la documentación de ConvexPolygonShape2D para obtener instrucciones.
Propiedades
|
Descripciones de Propiedades
PackedVector2Array segments = PackedVector2Array() 🔗
void set_segments(value: PackedVector2Array)
PackedVector2Array get_segments()
El array de puntos que componen los segmentos de línea de ConcavePolygonShape2D. El array (de longitud divisible por dos) se divide naturalmente en pares (un par para cada segmento); cada par consta del punto de inicio de un segmento y el punto final de un segmento.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedVector2Array for more details.