GLTFNode
Hereda: Resource < RefCounted < Object
Clase de nodo glTF.
Descripción
Representa un nodo glTF. Los nodos glTF pueden tener nombres, transformaciones, hijos (otros nodos glTF) y propiedades más especializadas (representadas por sus propias clases).
Los nodos glTF generalmente existen dentro de GLTFState, que representa todos los datos de un archivo glTF. La mayoría de las propiedades de GLTFNode son índices de otros datos en el archivo glTF. Puedes extender un nodo glTF con propiedades adicionales utilizando get_additional_data() y set_additional_data().
Tutoriales
Propiedades
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Métodos
void |
append_child_index(child_index: int) |
get_additional_data(extension_name: StringName) |
|
get_scene_node_path(gltf_state: GLTFState, handle_skeletons: bool = true) |
|
void |
set_additional_data(extension_name: StringName, additional_data: Variant) |
Descripciones de Propiedades
Si este nodo glTF es una cámara, el índice de la GLTFCamera en el GLTFState que describe las propiedades de la cámara. Si -1, este nodo no es una cámara.
PackedInt32Array children = PackedInt32Array() 🔗
void set_children(value: PackedInt32Array)
PackedInt32Array get_children()
Los índices de los nodos hijo en el GLTFState. Si este nodo glTF no tiene hijos, esto será un array vacío.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedInt32Array for more details.
La profundidad en la jerarquía de nodos en la que se encuentra este nodo. Un nodo raíz tendrá una altura de 0, sus hijos tendrán una altura de 1, y así sucesivamente. Si es -1, la altura no se ha calculado.
Si este nodo glTF es una luz, el índice de la GLTFLight en el GLTFState que describe las propiedades de la luz. Si es -1, este nodo no es una luz.
Si este nodo glTF es una malla, el índice de la GLTFMesh en el GLTFState que describe las propiedades de la malla. Si es -1, este nodo no es una malla.
El nombre original del nodo.
El índice del nodo padre en el GLTFState. Si es -1, este nodo es un nodo raíz.
Vector3 position = Vector3(0, 0, 0) 🔗
La posición del nodo glTF en relación con su padre.
Quaternion rotation = Quaternion(0, 0, 0, 1) 🔗
void set_rotation(value: Quaternion)
Quaternion get_rotation()
La rotación del nodo glTF con respecto a su padre.
Vector3 scale = Vector3(1, 1, 1) 🔗
La escala del nodo glTF en relación con su padre.
Si este nodo glTF tiene un esqueleto, el índice del GLTFSkeleton en el GLTFState que describe las propiedades del esqueleto. Si es -1, este nodo no tiene un esqueleto.
Si este nodo glTF tiene una piel, el índice de la GLTFSkin en el GLTFState que describe las propiedades de la piel. Si es -1, este nodo no tiene una piel.
Si es true, el nodo GLTF es visible. Si es false, el nodo GLTF no es visible. Esto se traduce a la propiedad Node3D.visible en la escena de Godot, y se exporta a KHR_node_visibility cuando false.
Transform3D xform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) 🔗
void set_xform(value: Transform3D)
Transform3D get_xform()
La transformación del nodo glTF relativa a su padre. Esta propiedad generalmente no se utiliza ya que se prefieren las propiedades de posición, rotación y escala.
Descripciones de Métodos
void append_child_index(child_index: int) 🔗
Appends the given child node index to the children array.
Variant get_additional_data(extension_name: StringName) 🔗
Obtiene datos arbitrarios adicionales en esta instancia de GLTFNode. Esto se puede utilizar para mantener los datos de estado por nodo en las clases GLTFDocumentExtension, lo cual es importante porque no tienen estado.
El argumento debe ser el nombre de GLTFDocumentExtension (no tiene que coincidir con el nombre de la extensión en el archivo glTF), y el valor de retorno puede ser cualquier cosa que establezcas. Si no se estableció nada, el valor de retorno es null.
NodePath get_scene_node_path(gltf_state: GLTFState, handle_skeletons: bool = true) 🔗
Devuelve el NodePath que este nodo GLTF tendrá en el árbol de la escena de Godot después de ser importado. Esto es útil cuando se importan punteros de modelo de objeto glTF con GLTFObjectModelProperty, para manejar extensiones como KHR_animation_pointer o KHR_interactivity.
Si handle_skeletons es true, las rutas a los nodos glTF de hueso de esqueleto se resolverán correctamente. Por ejemplo, una ruta que sería ^"A/B/C/Bone1/Bone2/Bone3" si es false se convertirá en ^"A/B/C/Skeleton3D:Bone3".
void set_additional_data(extension_name: StringName, additional_data: Variant) 🔗
Establece datos arbitrarios adicionales en esta instancia de GLTFNode. Esto se puede utilizar para mantener los datos de estado por nodo en las clases GLTFDocumentExtension, lo cual es importante porque no tienen estado.
El primer argumento debe ser el nombre de GLTFDocumentExtension (no tiene que coincidir con el nombre de la extensión en el archivo glTF), y el segundo argumento puede ser cualquier cosa que quieras.