summaryrefslogtreecommitdiff
path: root/assets
diff options
context:
space:
mode:
authoromniscient <17525998+omnisci3nce@users.noreply.github.com>2024-04-06 11:51:33 +1100
committeromniscient <17525998+omnisci3nce@users.noreply.github.com>2024-04-06 11:51:33 +1100
commitef264da91e1e7efc209bd49320fc5907f62312a7 (patch)
tree58bf2c9a31ef73b631643afa6bc1de154146a061 /assets
parente5495790aeba905505152ad3b6690f459a44df03 (diff)
add a skinned model example from gltf sample models.
Diffstat (limited to 'assets')
-rw-r--r--assets/models/gltf/SimpleSkin/LICENSE.md15
-rw-r--r--assets/models/gltf/SimpleSkin/README.body.md18
-rw-r--r--assets/models/gltf/SimpleSkin/README.md42
-rw-r--r--assets/models/gltf/SimpleSkin/glTF-Embedded/SimpleSkin.gltf131
-rw-r--r--assets/models/gltf/SimpleSkin/glTF/SimpleSkin.gltf131
-rw-r--r--assets/models/gltf/SimpleSkin/glTF/inverseBindMatrices.binbin0 -> 128 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/glTF/skinAnimation.binbin0 -> 240 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/glTF/skinGeometry.binbin0 -> 168 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/glTF/skinningData.binbin0 -> 320 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/metadata.json26
-rw-r--r--assets/models/gltf/SimpleSkin/screenshot/inverseBindMatrices.pngbin0 -> 43880 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/screenshot/screenshot.gifbin0 -> 2000860 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/screenshot/skinAnimation.pngbin0 -> 100791 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/screenshot/skinGeometry.pngbin0 -> 74566 bytes
-rw-r--r--assets/models/gltf/SimpleSkin/screenshot/skinningData.pngbin0 -> 86339 bytes
15 files changed, 363 insertions, 0 deletions
diff --git a/assets/models/gltf/SimpleSkin/LICENSE.md b/assets/models/gltf/SimpleSkin/LICENSE.md
new file mode 100644
index 0000000..e602203
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/LICENSE.md
@@ -0,0 +1,15 @@
+# LICENSE file for the model: Simple Skin
+
+All files in this directory tree are licensed as indicated below.
+
+* All files directly associated with the model including all text, image and binary files:
+
+ * [CC0 1.0 Universal]("https://creativecommons.org/publicdomain/zero/1.0/legalcode") [SPDX license identifier: "CC0-1.0"]
+
+* This file and all other metadocumentation files including "metadata.json":
+
+ * [Creative Commons Attribtution 4.0 International]("https://creativecommons.org/licenses/by/4.0/legalcode") [SPDX license identifier: "CC-BY-4.0"]
+
+Full license text of these licenses are available at the links above
+
+#### Generated by modelmetadata \ No newline at end of file
diff --git a/assets/models/gltf/SimpleSkin/README.body.md b/assets/models/gltf/SimpleSkin/README.body.md
new file mode 100644
index 0000000..00cd41e
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/README.body.md
@@ -0,0 +1,18 @@
+## Screenshot
+
+![screenshot](screenshot/screenshot.gif)
+
+## Notes
+
+Details about skinning using this particular model are explained in the
+[skinning section of the glTF tutorial](https://github.com/javagl/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_019_SimpleSkin.md).
+
+## Data layout
+
+The following images show the data layout of this sample:
+
+![skinGeometry](screenshot/skinGeometry.png)
+![skinAnimation](screenshot/skinAnimation.png)
+![inverseBindMatrices](screenshot/inverseBindMatrices.png)
+![skinningData](screenshot/skinningData.png)
+
diff --git a/assets/models/gltf/SimpleSkin/README.md b/assets/models/gltf/SimpleSkin/README.md
new file mode 100644
index 0000000..ec08353
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/README.md
@@ -0,0 +1,42 @@
+# Simple Skin
+
+## Tags
+
+[core](../../Models-core.md), [testing](../../Models-testing.md), [written](../../Models-written.md)
+
+## Summary
+
+A simple example of vertex skinning in glTF
+
+## Operations
+
+* [Display](https://github.khronos.org/glTF-Sample-Viewer-Release/?model=https://raw.GithubUserContent.com/KhronosGroup/glTF-Sample-Assets/main/./Models/SimpleSkin/glTF/SimpleSkin.gltf) in SampleViewer
+* [Model Directory](./)
+
+## Screenshot
+
+![screenshot](screenshot/screenshot.gif)
+
+## Notes
+
+Details about skinning using this particular model are explained in the
+[skinning section of the glTF tutorial](https://github.com/javagl/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_019_SimpleSkin.md).
+
+## Data layout
+
+The following images show the data layout of this sample:
+
+![skinGeometry](screenshot/skinGeometry.png)
+![skinAnimation](screenshot/skinAnimation.png)
+![inverseBindMatrices](screenshot/inverseBindMatrices.png)
+![skinningData](screenshot/skinningData.png)
+
+
+
+## Legal
+
+&copy; 2017, Public. [CC0 1.0 Universal](https://creativecommons.org/publicdomain/zero/1.0/legalcode)
+
+ - javagl for Everything
+
+#### Assembled by modelmetadata \ No newline at end of file
diff --git a/assets/models/gltf/SimpleSkin/glTF-Embedded/SimpleSkin.gltf b/assets/models/gltf/SimpleSkin/glTF-Embedded/SimpleSkin.gltf
new file mode 100644
index 0000000..e9f4e4d
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF-Embedded/SimpleSkin.gltf
@@ -0,0 +1,131 @@
+{
+ "scene" : 0,
+ "scenes" : [ {
+ "nodes" : [ 0, 1 ]
+ } ],
+
+ "nodes" : [ {
+ "skin" : 0,
+ "mesh" : 0
+ }, {
+ "children" : [ 2 ]
+ }, {
+ "translation" : [ 0.0, 1.0, 0.0 ],
+ "rotation" : [ 0.0, 0.0, 0.0, 1.0 ]
+ } ],
+
+ "meshes" : [ {
+ "primitives" : [ {
+ "attributes" : {
+ "POSITION" : 1,
+ "JOINTS_0" : 2,
+ "WEIGHTS_0" : 3
+ },
+ "indices" : 0
+ } ]
+ } ],
+
+ "skins" : [ {
+ "inverseBindMatrices" : 4,
+ "joints" : [ 1, 2 ]
+ } ],
+
+ "animations" : [ {
+ "channels" : [ {
+ "sampler" : 0,
+ "target" : {
+ "node" : 2,
+ "path" : "rotation"
+ }
+ } ],
+ "samplers" : [ {
+ "input" : 5,
+ "interpolation" : "LINEAR",
+ "output" : 6
+ } ]
+ } ],
+
+ "buffers" : [ {
+ "uri" : "data:application/gltf-buffer;base64,AAABAAMAAAADAAIAAgADAAUAAgAFAAQABAAFAAcABAAHAAYABgAHAAkABgAJAAgAAAAAvwAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAvwAAAD8AAAAAAAAAPwAAAD8AAAAAAAAAvwAAgD8AAAAAAAAAPwAAgD8AAAAAAAAAvwAAwD8AAAAAAAAAPwAAwD8AAAAAAAAAvwAAAEAAAAAAAAAAPwAAAEAAAAAA",
+ "byteLength" : 168
+ }, {
+ "uri" : "data:application/gltf-buffer;base64,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAABAPwAAgD4AAAAAAAAAAAAAQD8AAIA+AAAAAAAAAAAAAAA/AAAAPwAAAAAAAAAAAAAAPwAAAD8AAAAAAAAAAAAAgD4AAEA/AAAAAAAAAAAAAIA+AABAPwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAA=",
+ "byteLength" : 320
+ }, {
+ "uri" : "data:application/gltf-buffer;base64,AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8=",
+ "byteLength" : 128
+ }, {
+ "uri" : "data:application/gltf-buffer;base64,AAAAAAAAAD8AAIA/AADAPwAAAEAAACBAAABAQAAAYEAAAIBAAACQQAAAoEAAALBAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAkxjEPkSLbD8AAAAAAAAAAPT9ND/0/TQ/AAAAAAAAAAD0/TQ/9P00PwAAAAAAAAAAkxjEPkSLbD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAkxjEvkSLbD8AAAAAAAAAAPT9NL/0/TQ/AAAAAAAAAAD0/TS/9P00PwAAAAAAAAAAkxjEvkSLbD8AAAAAAAAAAAAAAAAAAIA/",
+ "byteLength" : 240
+ } ],
+
+ "bufferViews" : [ {
+ "buffer" : 0,
+ "byteLength" : 48,
+ "target" : 34963
+ }, {
+ "buffer" : 0,
+ "byteOffset" : 48,
+ "byteLength" : 120,
+ "target" : 34962
+ }, {
+ "buffer" : 1,
+ "byteLength" : 320,
+ "byteStride" : 16
+ }, {
+ "buffer" : 2,
+ "byteLength" : 128
+ }, {
+ "buffer" : 3,
+ "byteLength" : 240
+ } ],
+
+ "accessors" : [ {
+ "bufferView" : 0,
+ "componentType" : 5123,
+ "count" : 24,
+ "type" : "SCALAR"
+ }, {
+ "bufferView" : 1,
+ "componentType" : 5126,
+ "count" : 10,
+ "type" : "VEC3",
+ "max" : [ 0.5, 2.0, 0.0 ],
+ "min" : [ -0.5, 0.0, 0.0 ]
+ }, {
+ "bufferView" : 2,
+ "componentType" : 5123,
+ "count" : 10,
+ "type" : "VEC4"
+ }, {
+ "bufferView" : 2,
+ "byteOffset" : 160,
+ "componentType" : 5126,
+ "count" : 10,
+ "type" : "VEC4"
+ }, {
+ "bufferView" : 3,
+ "componentType" : 5126,
+ "count" : 2,
+ "type" : "MAT4"
+ }, {
+ "bufferView" : 4,
+ "componentType" : 5126,
+ "count" : 12,
+ "type" : "SCALAR",
+ "max" : [ 5.5 ],
+ "min" : [ 0.0 ]
+ }, {
+ "bufferView" : 4,
+ "byteOffset" : 48,
+ "componentType" : 5126,
+ "count" : 12,
+ "type" : "VEC4",
+ "max" : [ 0.0, 0.0, 0.707, 1.0 ],
+ "min" : [ 0.0, 0.0, -0.707, 0.707 ]
+ } ],
+
+ "asset" : {
+ "version" : "2.0"
+ }
+} \ No newline at end of file
diff --git a/assets/models/gltf/SimpleSkin/glTF/SimpleSkin.gltf b/assets/models/gltf/SimpleSkin/glTF/SimpleSkin.gltf
new file mode 100644
index 0000000..52f0aa0
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF/SimpleSkin.gltf
@@ -0,0 +1,131 @@
+{
+ "scene" : 0,
+ "scenes" : [ {
+ "nodes" : [ 0, 1 ]
+ } ],
+
+ "nodes" : [ {
+ "skin" : 0,
+ "mesh" : 0
+ }, {
+ "children" : [ 2 ]
+ }, {
+ "translation" : [ 0.0, 1.0, 0.0 ],
+ "rotation" : [ 0.0, 0.0, 0.0, 1.0 ]
+ } ],
+
+ "meshes" : [ {
+ "primitives" : [ {
+ "attributes" : {
+ "POSITION" : 1,
+ "JOINTS_0" : 2,
+ "WEIGHTS_0" : 3
+ },
+ "indices" : 0
+ } ]
+ } ],
+
+ "skins" : [ {
+ "inverseBindMatrices" : 4,
+ "joints" : [ 1, 2 ]
+ } ],
+
+ "animations" : [ {
+ "channels" : [ {
+ "sampler" : 0,
+ "target" : {
+ "node" : 2,
+ "path" : "rotation"
+ }
+ } ],
+ "samplers" : [ {
+ "input" : 5,
+ "interpolation" : "LINEAR",
+ "output" : 6
+ } ]
+ } ],
+
+ "buffers" : [ {
+ "uri" : "skinGeometry.bin",
+ "byteLength" : 168
+ }, {
+ "uri" : "skinningData.bin",
+ "byteLength" : 320
+ }, {
+ "uri" : "inverseBindMatrices.bin",
+ "byteLength" : 128
+ }, {
+ "uri" : "skinAnimation.bin",
+ "byteLength" : 240
+ } ],
+
+ "bufferViews" : [ {
+ "buffer" : 0,
+ "byteLength" : 48,
+ "target" : 34963
+ }, {
+ "buffer" : 0,
+ "byteOffset" : 48,
+ "byteLength" : 120,
+ "target" : 34962
+ }, {
+ "buffer" : 1,
+ "byteLength" : 320,
+ "byteStride" : 16
+ }, {
+ "buffer" : 2,
+ "byteLength" : 128
+ }, {
+ "buffer" : 3,
+ "byteLength" : 240
+ } ],
+
+ "accessors" : [ {
+ "bufferView" : 0,
+ "componentType" : 5123,
+ "count" : 24,
+ "type" : "SCALAR"
+ }, {
+ "bufferView" : 1,
+ "componentType" : 5126,
+ "count" : 10,
+ "type" : "VEC3",
+ "max" : [ 0.5, 2.0, 0.0 ],
+ "min" : [ -0.5, 0.0, 0.0 ]
+ }, {
+ "bufferView" : 2,
+ "componentType" : 5123,
+ "count" : 10,
+ "type" : "VEC4"
+ }, {
+ "bufferView" : 2,
+ "byteOffset" : 160,
+ "componentType" : 5126,
+ "count" : 10,
+ "type" : "VEC4"
+ }, {
+ "bufferView" : 3,
+ "componentType" : 5126,
+ "count" : 2,
+ "type" : "MAT4"
+ }, {
+ "bufferView" : 4,
+ "componentType" : 5126,
+ "count" : 12,
+ "type" : "SCALAR",
+ "max" : [ 5.5 ],
+ "min" : [ 0.0 ]
+ }, {
+ "bufferView" : 4,
+ "byteOffset" : 48,
+ "componentType" : 5126,
+ "count" : 12,
+ "type" : "VEC4",
+ "max" : [ 0.0, 0.0, 0.707, 1.0 ],
+ "min" : [ 0.0, 0.0, -0.707, 0.707 ]
+ } ],
+
+ "asset" : {
+ "version" : "2.0"
+ }
+} \ No newline at end of file
diff --git a/assets/models/gltf/SimpleSkin/glTF/inverseBindMatrices.bin b/assets/models/gltf/SimpleSkin/glTF/inverseBindMatrices.bin
new file mode 100644
index 0000000..5af0b5e
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF/inverseBindMatrices.bin
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/glTF/skinAnimation.bin b/assets/models/gltf/SimpleSkin/glTF/skinAnimation.bin
new file mode 100644
index 0000000..ff550c6
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF/skinAnimation.bin
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/glTF/skinGeometry.bin b/assets/models/gltf/SimpleSkin/glTF/skinGeometry.bin
new file mode 100644
index 0000000..15375c4
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF/skinGeometry.bin
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/glTF/skinningData.bin b/assets/models/gltf/SimpleSkin/glTF/skinningData.bin
new file mode 100644
index 0000000..fd0c165
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/glTF/skinningData.bin
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/metadata.json b/assets/models/gltf/SimpleSkin/metadata.json
new file mode 100644
index 0000000..764a837
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/metadata.json
@@ -0,0 +1,26 @@
+{
+ "version": 2,
+ "legal": [
+ {
+ "license": "CC0",
+ "licenseUrl": "https://creativecommons.org/publicdomain/zero/1.0/legalcode",
+ "artist": "javagl",
+ "year": "2017",
+ "owner": "Public",
+ "what": "Everything",
+ "text": "CC0 1.0 Universal",
+ "spdx": "CC0-1.0",
+ "icon": "https://licensebuttons.net/p/zero/1.0/88x31.png"
+ }
+ ],
+ "tags": [
+ "core",
+ "testing",
+ "written"
+ ],
+ "screenshot": "screenshot/screenshot.gif",
+ "name": "Simple Skin",
+ "path": "./Models/SimpleSkin",
+ "summary": "A simple example of vertex skinning in glTF",
+ "createReadme": true
+} \ No newline at end of file
diff --git a/assets/models/gltf/SimpleSkin/screenshot/inverseBindMatrices.png b/assets/models/gltf/SimpleSkin/screenshot/inverseBindMatrices.png
new file mode 100644
index 0000000..a069f59
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/screenshot/inverseBindMatrices.png
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/screenshot/screenshot.gif b/assets/models/gltf/SimpleSkin/screenshot/screenshot.gif
new file mode 100644
index 0000000..c8fb353
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/screenshot/screenshot.gif
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/screenshot/skinAnimation.png b/assets/models/gltf/SimpleSkin/screenshot/skinAnimation.png
new file mode 100644
index 0000000..20257e1
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/screenshot/skinAnimation.png
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/screenshot/skinGeometry.png b/assets/models/gltf/SimpleSkin/screenshot/skinGeometry.png
new file mode 100644
index 0000000..2569d9f
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/screenshot/skinGeometry.png
Binary files differ
diff --git a/assets/models/gltf/SimpleSkin/screenshot/skinningData.png b/assets/models/gltf/SimpleSkin/screenshot/skinningData.png
new file mode 100644
index 0000000..bd25b70
--- /dev/null
+++ b/assets/models/gltf/SimpleSkin/screenshot/skinningData.png
Binary files differ