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...
PathFollow3D
Hereda: Node3D < Node < Object
Una muestra de puntos para un Path3D.
Descripción
Este nodo toma su padre Path3D, y devuelve las coordenadas de un punto dentro de él, dada una distancia desde el primer vértice.
Es útil para hacer que otros nodos sigan una ruta, sin codificar el patrón de movimiento. Para ello, los nodos deben ser hijos de este nodo. Los nodos descendientes se moverán en consecuencia al establecer el progress en este nodo.
Propiedades
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Métodos
correct_posture(transform: Transform3D, rotation_mode: RotationMode) static |
Enumeraciones
enum RotationMode: 🔗
RotationMode ROTATION_NONE = 0
Prohíbe que PathFollow3D rote.
RotationMode ROTATION_Y = 1
Permite que PathFollow3D rote sólo en el eje Y.
RotationMode ROTATION_XY = 2
Permite que PathFollow3D rote en los ejes X e Y.
RotationMode ROTATION_XYZ = 3
Permite que PathFollow3D rote en cualquier eje.
RotationMode ROTATION_ORIENTED = 4
Utiliza la información del vector ascendente en una Curve3D para reforzar la orientación. Este modo de rotación requiere que la propiedad Curve3D.up_vector_enabled de Path3D se establezca como true.
Descripciones de Propiedades
Si es true, la posición entre dos puntos cacheados se interpola cúbicamente, y linealmente en caso contrario.
Los puntos a lo largo de la Curve3D del Path3D se precalculan antes de su uso, para cálculos más rápidos. El punto en el desplazamiento solicitado se calcula entonces interpolando entre dos puntos cacheados adyacentes. Esto puede presentar un problema si la curva hace giros bruscos, ya que los puntos cacheados pueden no seguir la curva lo suficientemente cerca.
Hay dos respuestas a este problema: o bien aumentar el número de puntos cacheados y aumentar el consumo de memoria, o bien hacer una interpolación cúbica entre dos puntos a costa de cálculos (ligeramente) más lentos.
El nodo está desplazado a lo largo de la curva.
Si es true, cualquier desplazamiento fuera de la longitud del camino se envolverá, en lugar de detenerse en los extremos. Úsalo para los caminos cíclicos.
La distancia desde el primer vértice, medida en unidades 3D a lo largo del camino. Cambiar este valor establece la posición de este nodo en un punto dentro del camino.
La distancia desde el primer vértice, considerando 0.0 como el primer vértice y 1.0 como el último. Esta es solo otra forma de expresar el progreso dentro de la ruta, ya que el progreso suministrado se multiplica internamente por la longitud de la ruta.
Se puede establecer u obtener solo si el PathFollow3D es hijo de un Path3D que forma parte del árbol de escenas, y que este Path3D tiene una Curve3D con una longitud distinta de cero. De lo contrario, intentar establecer este campo imprimirá un error, y obtener este campo devolverá 0.0.
RotationMode rotation_mode = 3 🔗
void set_rotation_mode(value: RotationMode)
RotationMode get_rotation_mode()
Permite o prohíbe la rotación en uno o más ejes, dependiendo de las constantes RotationMode que se utilicen.
Si es true, la propiedad de inclinación de Curve3D surte efecto.
bool use_model_front = false 🔗
Si es true, el nodo se mueve a lo largo del trayecto de viaje orientando el eje +Z como adelante. Véase también Vector3.FORWARD y Vector3.MODEL_FRONT.
El nodo está desplazado perpendicularmente a la curva.
Descripciones de Métodos
Transform3D correct_posture(transform: Transform3D, rotation_mode: RotationMode) static 🔗
Corrige la transform. rotation_mode especifica implícitamente cómo se calcula la postura (dirección hacia adelante, arriba y lateral).