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...
GLTFNode
Наследует: Resource < RefCounted < Object
Класс узла glTF.
Описание
Представляет узел glTF. Узлы glTF могут иметь имена, преобразования, дочерние элементы (другие узлы glTF) и более специализированные свойства (представленные их собственными классами).
Узлы glTF обычно существуют внутри GLTFState, который представляет все данные файла glTF. Большинство свойств GLTFNode являются индексами других данных в файле glTF. Вы можете расширить узел glTF дополнительными свойствами, используя get_additional_data() и set_additional_data().
Обучающие материалы
Свойства
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Методы
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) |
Описания свойств
Если этот узел glTF является камерой, индекс GLTFCamera в GLTFState, который описывает свойства камеры. Если -1, этот узел не является камерой.
PackedInt32Array children = PackedInt32Array() 🔗
void set_children(value: PackedInt32Array)
PackedInt32Array get_children()
Индексы дочерних узлов в GLTFState. Если у этого узла glTF нет дочерних узлов, это будет пустой массив.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedInt32Array for more details.
Насколько глубоко в иерархии узлов находится этот узел. Корневой узел будет иметь высоту 0, его потомки будут иметь высоту 1 и т. д. Если -1, высота не была рассчитана.
Если этот узел glTF является источником света, индекс GLTFLight в GLTFState, который описывает свойства источника света. Если -1, этот узел не является источником света.
Если этот узел glTF является сеткой, индекс GLTFMesh в GLTFState, который описывает свойства сетки. Если -1, этот узел не является сеткой.
Первоначальное имя узла.
Индекс родительского узла в GLTFState. Если -1, этот узел является корневым узлом.
Vector3 position = Vector3(0, 0, 0) 🔗
Положение узла glTF относительно его родителя.
Quaternion rotation = Quaternion(0, 0, 0, 1) 🔗
void set_rotation(value: Quaternion)
Quaternion get_rotation()
Вращение узла glTF относительно его родителя.
Vector3 scale = Vector3(1, 1, 1) 🔗
Масштаб узла glTF относительно его родителя.
Если этот узел glTF имеет скелет, индекс GLTFSkeleton в GLTFState, который описывает свойства скелета. Если -1, этот узел не имеет скелета.
Если этот узел glTF имеет скин, индекс GLTFSkin в GLTFState, который описывает свойства скина. Если -1, этот узел не имеет скина.
Если true, узел GLTF виден. Если false, узел GLTF невидим. Это преобразуется в свойство Node3D.visible в сцене Godot и экспортируется в KHR_node_visibility, когда false.
Transform3D xform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) 🔗
void set_xform(value: Transform3D)
Transform3D get_xform()
Преобразование узла glTF относительно его родителя. Это свойство обычно не используется, поскольку предпочтительны свойства положения, вращения и масштаба.
Описания метода
void append_child_index(child_index: int) 🔗
Добавляет заданный индекс дочернего узла к массиву children.
Variant get_additional_data(extension_name: StringName) 🔗
Получает дополнительные произвольные данные в этом экземпляре GLTFNode. Это можно использовать для хранения данных о состоянии каждого узла в классах GLTFDocumentExtension, что важно, поскольку они не имеют состояния.
Аргументом должно быть имя GLTFDocumentExtension (не обязательно совпадать с именем расширения в файле glTF), а возвращаемое значение может быть любым, которое вы задали. Если ничего не было задано, возвращаемое значение равно null.
NodePath get_scene_node_path(gltf_state: GLTFState, handle_skeletons: bool = true) 🔗
Возвращает NodePath, который будет у этого узла GLTF в дереве сцены Godot после импорта. Это полезно при импорте указателей модели объекта glTF с помощью GLTFObjectModelProperty для обработки расширений, таких как KHR_animation_pointer или KHR_interactivity.
Если handle_skeletons равен true, пути к узлам скелетной кости glTF будут разрешены правильно. Например, путь, который будет ^"A/B/C/Bone1/Bone2/Bone3", если false станет ^"A/B/C/Skeleton3D:Bone3".
void set_additional_data(extension_name: StringName, additional_data: Variant) 🔗
Устанавливает дополнительные произвольные данные в этом экземпляре GLTFNode. Это можно использовать для хранения данных о состоянии каждого узла в классах GLTFDocumentExtension, что важно, поскольку они не имеют состояния.
Первым аргументом должно быть имя GLTFDocumentExtension (не обязательно совпадать с именем расширения в файле glTF), а вторым аргументом может быть все, что угодно.