GltfNode
Класс узла glTF.
Класс узла glTF.
Представляет узел glTF. Узлы glTF могут иметь имена, преобразования, дочерние элементы (другие узлы glTF) и более специализированные свойства (представленные их собственными классами).
Узлы glTF обычно существуют внутри GltfState, который представляет все данные файла glTF. Большинство свойств GLTFNode являются индексами других данных в файле glTF. Вы можете расширить узел glTF дополнительными свойствами, используя GltfNode.GetAdditionalData и GltfNode.SetAdditionalData.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
GltfNodeКонструктор
public GltfNode();Свойства14
CameraСвойство
public int Camera { get; set; }Если этот узел glTF является камерой, индекс GltfCamera в GltfState, который описывает свойства камеры. Если -1, этот узел не является камерой.
ChildrenСвойство
public int[] Children { get; set; }Индексы дочерних узлов в GltfState. Если у этого узла glTF нет дочерних узлов, это будет пустой массив.
HeightСвойство
public int Height { get; set; }Насколько глубоко в иерархии узлов находится этот узел. Корневой узел будет иметь высоту 0, его потомки будут иметь высоту 1 и т. д. Если -1, высота не была рассчитана.
LightСвойство
MeshСвойство
OriginalNameСвойство
public string OriginalName { get; set; }Первоначальное имя узла.
ParentСвойство
PositionСвойство
public Vector3 Position { get; set; }Положение узла glTF относительно его родителя.
RotationСвойство
public Quaternion Rotation { get; set; }Вращение узла glTF относительно его родителя.
ScaleСвойство
public Vector3 Scale { get; set; }Масштаб узла glTF относительно его родителя.
SkeletonСвойство
public int Skeleton { get; set; }Если этот узел glTF имеет скелет, индекс GltfSkeleton в GltfState, который описывает свойства скелета. Если -1, этот узел не имеет скелета.
SkinСвойство
VisibleСвойство
public bool Visible { get; set; }Если true, узел GLTF виден. Если false, узел GLTF невидим. Это преобразуется в свойство Entity3D.Visible в сцене Reckfell и экспортируется в KHR_node_visibility, когда false.
XformСвойство
public Transform3D Xform { get; set; }Преобразование узла glTF относительно его родителя. Это свойство обычно не используется, поскольку предпочтительны свойства положения, вращения и масштаба.
Методы33
AppendChildIndexvoid
public void AppendChildIndex(int childIndex);Добавляет заданный индекс дочернего узла к массиву GltfNode.Children.
| Имя | Тип | По умолчанию |
|---|---|---|
childIndex | int | — |
GetAdditionalDataVariant
public Variant GetAdditionalData(StringName extensionName);Получает дополнительные произвольные данные в этом экземпляре GltfNode. Это можно использовать для хранения данных о состоянии каждого узла в классах GltfDocumentExtension, что важно, поскольку они не имеют состояния.
Аргументом должно быть имя GltfDocumentExtension (не обязательно совпадать с именем расширения в файле glTF), а возвращаемое значение может быть любым, которое вы задали. Если ничего не было задано, возвращаемое значение равно null.
| Имя | Тип | По умолчанию |
|---|---|---|
extensionName | StringName | — |
VariantGetCameraint
public int GetCamera();intGetChildrenint[]
public int[] GetChildren();int[]GetHeightint
public int GetHeight();intGetLightint
public int GetLight();intGetMeshint
public int GetMesh();intGetOriginalNamestring
public string GetOriginalName();stringGetParentint
public int GetParent();intGetPositionVector3
public Vector3 GetPosition();Vector3GetRotationQuaternion
public Quaternion GetRotation();QuaternionGetScaleVector3
public Vector3 GetScale();Vector3GetSceneEntityPathEntityPath
public EntityPath GetSceneEntityPath(GltfState gltfState, bool handleSkeletons = true);Возвращает EntityPath, который будет у этого узла GLTF в дереве сцены Reckfell после импорта. Это полезно при импорте указателей модели объекта glTF с помощью GltfObjectModelProperty для обработки расширений, таких как KHR_animation_pointer или KHR_interactivity.
Если handle_skeletons равен true, пути к узлам скелетной кости glTF будут разрешены правильно. Например, путь, который будет ^"A/B/C/Bone1/Bone2/Bone3", если false станет ^"A/B/C/Skeleton3D:Bone3".
| Имя | Тип | По умолчанию |
|---|---|---|
gltfState | GltfState | — |
handleSkeletons | bool | true |
EntityPathGetSkeletonint
public int GetSkeleton();intGetSkinint
public int GetSkin();intGetVisiblebool
public bool GetVisible();boolGetXformTransform3D
public Transform3D GetXform();Transform3DSetAdditionalDatavoid
public void SetAdditionalData(StringName extensionName, Variant additionalData);Устанавливает дополнительные произвольные данные в этом экземпляре GltfNode. Это можно использовать для хранения данных о состоянии каждого узла в классах GltfDocumentExtension, что важно, поскольку они не имеют состояния.
Первым аргументом должно быть имя GltfDocumentExtension (не обязательно совпадать с именем расширения в файле glTF), а вторым аргументом может быть все, что угодно.
| Имя | Тип | По умолчанию |
|---|---|---|
extensionName | StringName | — |
additionalData | Variant | — |
SetCameravoid
public void SetCamera(int camera);| Имя | Тип | По умолчанию |
|---|---|---|
camera | int | — |
SetChildren2 перегрузки
public void SetChildren(int[] children);| Имя | Тип | По умолчанию |
|---|---|---|
children | int[] | — |
public void SetChildren(ReadOnlySpan<int> children);| Имя | Тип | По умолчанию |
|---|---|---|
children | ReadOnlySpan<int> | — |
SetHeightvoid
public void SetHeight(int height);| Имя | Тип | По умолчанию |
|---|---|---|
height | int | — |
SetLightvoid
public void SetLight(int light);| Имя | Тип | По умолчанию |
|---|---|---|
light | int | — |
SetMeshvoid
public void SetMesh(int mesh);| Имя | Тип | По умолчанию |
|---|---|---|
mesh | int | — |
SetOriginalNamevoid
public void SetOriginalName(string originalName);| Имя | Тип | По умолчанию |
|---|---|---|
originalName | string | — |
SetParentvoid
public void SetParent(int parent);| Имя | Тип | По умолчанию |
|---|---|---|
parent | int | — |
SetPositionvoid
public void SetPosition(Vector3 position);| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector3 | — |
SetRotationvoid
public void SetRotation(Quaternion rotation);| Имя | Тип | По умолчанию |
|---|---|---|
rotation | Quaternion | — |
SetScalevoid
public void SetScale(Vector3 scale);| Имя | Тип | По умолчанию |
|---|---|---|
scale | Vector3 | — |
SetSkeletonvoid
public void SetSkeleton(int skeleton);| Имя | Тип | По умолчанию |
|---|---|---|
skeleton | int | — |
SetSkinvoid
public void SetSkin(int skin);| Имя | Тип | По умолчанию |
|---|---|---|
skin | int | — |
SetVisiblevoid
public void SetVisible(bool visible);| Имя | Тип | По умолчанию |
|---|---|---|
visible | bool | — |
SetXformvoid
public void SetXform(Transform3D xform);| Имя | Тип | По умолчанию |
|---|---|---|
xform | Transform3D | — |