From addb28eed7bf012b7530be138784f2231d28da9f Mon Sep 17 00:00:00 2001 From: Ernst Naezer Date: Sun, 24 May 2020 21:17:38 +0200 Subject: [PATCH] Added name property to the GLTF loader (#117) --- orx-dnk3/src/main/kotlin/Scene.kt | 1 + orx-dnk3/src/main/kotlin/gltf/Gltf.kt | 3 ++- orx-dnk3/src/main/kotlin/gltf/GltfScene.kt | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/orx-dnk3/src/main/kotlin/Scene.kt b/orx-dnk3/src/main/kotlin/Scene.kt index 0fcbe275..419cd730 100644 --- a/orx-dnk3/src/main/kotlin/Scene.kt +++ b/orx-dnk3/src/main/kotlin/Scene.kt @@ -7,6 +7,7 @@ class Scene(val root: SceneNode = SceneNode(), val dispatcher: Dispatcher = Disp open class SceneNode() { + var name: String = "" var entities: MutableList = mutableListOf() var parent: SceneNode? = null open var transform = Matrix44.IDENTITY diff --git a/orx-dnk3/src/main/kotlin/gltf/Gltf.kt b/orx-dnk3/src/main/kotlin/gltf/Gltf.kt index a1ae60c2..8f065a5b 100644 --- a/orx-dnk3/src/main/kotlin/gltf/Gltf.kt +++ b/orx-dnk3/src/main/kotlin/gltf/Gltf.kt @@ -28,7 +28,8 @@ class GltfAsset(val generator: String?, val version: String?) class GltfScene(val nodes: IntArray) -class GltfNode(val children: IntArray?, +class GltfNode(val name:String, + val children: IntArray?, val matrix: DoubleArray?, val scale: DoubleArray?, val rotation: DoubleArray?, diff --git a/orx-dnk3/src/main/kotlin/gltf/GltfScene.kt b/orx-dnk3/src/main/kotlin/gltf/GltfScene.kt index 1f0076b1..78c2c374 100644 --- a/orx-dnk3/src/main/kotlin/gltf/GltfScene.kt +++ b/orx-dnk3/src/main/kotlin/gltf/GltfScene.kt @@ -210,6 +210,7 @@ fun GltfFile.buildSceneNodes(): GltfSceneData { val sceneNodes = mutableMapOf() fun GltfNode.createSceneNode(): SceneNode = sceneNodes.getOrPut(this) { val node = GltfSceneNode() + node.name = name ?: "" node.translation = translation?.let { Vector3(it[0], it[1], it[2]) } ?: Vector3.ZERO node.scale = scale?.let { Vector3(it[0], it[1], it[2]) } ?: Vector3.ONE node.rotation = rotation?.let { Quaternion(it[0], it[1], it[2], it[3]) } ?: Quaternion.IDENTITY