chorama 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/.configs/tsconfig.lib.json +43 -0
  2. package/.configs/tsconfig.website.json +34 -0
  3. package/.github/workflows/static.yml +88 -0
  4. package/.vscode/launch.json +29 -0
  5. package/.vscode/tasks.json +19 -0
  6. package/README.md +127 -0
  7. package/assets/images/disappointed.jpg +0 -0
  8. package/assets/images/skybox/grimmnight_back.png +0 -0
  9. package/assets/images/skybox/grimmnight_bottom.png +0 -0
  10. package/assets/images/skybox/grimmnight_front.png +0 -0
  11. package/assets/images/skybox/grimmnight_left.png +0 -0
  12. package/assets/images/skybox/grimmnight_right.png +0 -0
  13. package/assets/images/skybox/grimmnight_top.png +0 -0
  14. package/assets/images/skybox/miramar_back.png +0 -0
  15. package/assets/images/skybox/miramar_bottom.png +0 -0
  16. package/assets/images/skybox/miramar_front.png +0 -0
  17. package/assets/images/skybox/miramar_left.png +0 -0
  18. package/assets/images/skybox/miramar_right.png +0 -0
  19. package/assets/images/skybox/miramar_top.png +0 -0
  20. package/assets/images/uv.jpg +0 -0
  21. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_GlassPlasticMat_BaseColor.png +0 -0
  22. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_GlassPlasticMat_Normal.png +0 -0
  23. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_GlassPlasticMat_OcclusionRoughMetal.png +0 -0
  24. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LeatherPartsMat_BaseColor.png +0 -0
  25. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LeatherPartsMat_Normal.png +0 -0
  26. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LeatherPartsMat_OcclusionRoughMetal.png +0 -0
  27. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LensesMat_BaseColor.png +0 -0
  28. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LensesMat_Normal.png +0 -0
  29. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_LensesMat_OcclusionRoughMetal.png +0 -0
  30. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_MetalPartsMat_BaseColor.png +0 -0
  31. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_MetalPartsMat_Normal.png +0 -0
  32. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_MetalPartsMat_OcclusionRoughMetal.png +0 -0
  33. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_RubberWoodMat_BaseColor.png +0 -0
  34. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_RubberWoodMat_Normal.png +0 -0
  35. package/assets/models/gltf/flight_helmet/FlightHelmet_Materials_RubberWoodMat_OcclusionRoughMetal.png +0 -0
  36. package/assets/models/gltf/flight_helmet/index.bin +0 -0
  37. package/assets/models/gltf/flight_helmet/index.gltf +705 -0
  38. package/assets/models/gltf/object.gltf +23 -0
  39. package/assets/models/gltf/pirate_girl/index.bin +0 -0
  40. package/assets/models/gltf/pirate_girl/index.gltf +2082 -0
  41. package/assets/models/obj/pirate_girl/pirate_girl.obj +18459 -0
  42. package/assets/models/obj/pirate_girl/pirate_girl.png +0 -0
  43. package/astro.config.mjs +45 -0
  44. package/content/guide/api-map.md +89 -0
  45. package/content/guide/camera-and-controls.md +98 -0
  46. package/content/guide/first-scene.md +176 -0
  47. package/content/guide/index.md +72 -0
  48. package/content/guide/installation.md +179 -0
  49. package/content/guide/materials-and-lighting.md +138 -0
  50. package/content/guide/plugins-and-render-pipeline.md +124 -0
  51. package/content/guide/render-targets-and-views.md +147 -0
  52. package/content/guide/scene-graph-and-transforms.md +113 -0
  53. package/content/guide/textures-and-assets.md +120 -0
  54. package/content/guide/troubleshooting.md +49 -0
  55. package/env.d.ts +19 -0
  56. package/examples/addons/rendergraph_gui.js +580 -0
  57. package/examples/camera/orthographic.js +120 -0
  58. package/examples/camera/perspective.js +138 -0
  59. package/examples/lights/directional.js +397 -0
  60. package/examples/lights/multiple_spot_lights.js +304 -0
  61. package/examples/lights/point.js +337 -0
  62. package/examples/lights/spot.js +366 -0
  63. package/examples/loader/gltf_material.js +111 -0
  64. package/examples/loader/gltfloader.js +78 -0
  65. package/examples/loader/objloader.js +95 -0
  66. package/examples/material/cullface.js +111 -0
  67. package/examples/material/materials.js +126 -0
  68. package/examples/material/standard/basic.js +164 -0
  69. package/examples/mesh/circle.js +117 -0
  70. package/examples/mesh/cuboid.js +151 -0
  71. package/examples/mesh/cylinder.js +139 -0
  72. package/examples/mesh/geometries.js +108 -0
  73. package/examples/mesh/meshTopology.js +103 -0
  74. package/examples/mesh/plane.js +117 -0
  75. package/examples/mesh/skinning.js +136 -0
  76. package/examples/mesh/uvsphere.js +113 -0
  77. package/examples/other/rotatingCube.js +93 -0
  78. package/examples/other/rotatingSphere.js +96 -0
  79. package/examples/rendertarget/basic_canvas.js +130 -0
  80. package/examples/rendertarget/depth_texture.js +130 -0
  81. package/examples/rendertarget/image_target.js +140 -0
  82. package/examples/rendertarget/multiple_views.js +158 -0
  83. package/examples/rendertarget/render_masks.js +173 -0
  84. package/examples/rendertarget/split_screen.js +123 -0
  85. package/examples/rendertarget/split_view.js +137 -0
  86. package/examples/skybox/skybox.js +111 -0
  87. package/examples/texture/arrays.js +156 -0
  88. package/examples/texture/textureWrap.js +118 -0
  89. package/examples/transform/propagation.js +92 -0
  90. package/package.json +55 -0
  91. package/rollup.config.js +66 -0
  92. package/scripts/stage-chorama.mjs +29 -0
  93. package/src/caches/cache.js +420 -0
  94. package/src/caches/index.js +2 -0
  95. package/src/caches/uniformbuffers.js +104 -0
  96. package/src/cameracontrols/index.js +258 -0
  97. package/src/constants/index.js +3 -0
  98. package/src/constants/mesh.js +197 -0
  99. package/src/constants/others.js +218 -0
  100. package/src/constants/texture.js +183 -0
  101. package/src/core/constants.js +14 -0
  102. package/src/core/extensions.js +42 -0
  103. package/src/core/index.js +7 -0
  104. package/src/core/layouts/index.js +4 -0
  105. package/src/core/layouts/meshvertex.js +60 -0
  106. package/src/core/layouts/uniform.js +21 -0
  107. package/src/core/layouts/uniformbuffer.js +15 -0
  108. package/src/core/layouts/vertexbuffer.js +43 -0
  109. package/src/core/limits.js +247 -0
  110. package/src/core/resources/blendparams.js +89 -0
  111. package/src/core/resources/framebuffer.js +127 -0
  112. package/src/core/resources/gpubuffer.js +32 -0
  113. package/src/core/resources/gpumesh.js +43 -0
  114. package/src/core/resources/gputexture.js +73 -0
  115. package/src/core/resources/index.js +5 -0
  116. package/src/core/shader.js +62 -0
  117. package/src/core/webgl/bindgroup.js +89 -0
  118. package/src/core/webgl/descriptors.js +104 -0
  119. package/src/core/webgl/index.js +5 -0
  120. package/src/core/webgl/renderpassencoder.js +96 -0
  121. package/src/core/webgl/renderpipeline.js +54 -0
  122. package/src/core/webgl/utils.js +371 -0
  123. package/src/core/webgl/webglrenderdevice.js +235 -0
  124. package/src/function.js +358 -0
  125. package/src/index.js +15 -0
  126. package/src/loader/gltf.js +2172 -0
  127. package/src/loader/index.js +3 -0
  128. package/src/loader/loader.js +174 -0
  129. package/src/loader/obj.js +188 -0
  130. package/src/loader/texture.js +85 -0
  131. package/src/loader/utils.js +16 -0
  132. package/src/material/basic.js +75 -0
  133. package/src/material/depth.js +73 -0
  134. package/src/material/index.js +8 -0
  135. package/src/material/lambert.js +73 -0
  136. package/src/material/material.js +106 -0
  137. package/src/material/normal.js +30 -0
  138. package/src/material/phong.js +86 -0
  139. package/src/material/raw.js +52 -0
  140. package/src/material/standard.js +221 -0
  141. package/src/math/index.js +3 -0
  142. package/src/math/transform.js +38 -0
  143. package/src/mesh/attribute/attribute.js +79 -0
  144. package/src/mesh/attribute/index.js +1 -0
  145. package/src/mesh/attributedata/index.js +1 -0
  146. package/src/mesh/attributedata/separate.js +180 -0
  147. package/src/mesh/builders/base.js +41 -0
  148. package/src/mesh/builders/circle.js +63 -0
  149. package/src/mesh/builders/cuboid.js +135 -0
  150. package/src/mesh/builders/cylinder.js +131 -0
  151. package/src/mesh/builders/index.js +7 -0
  152. package/src/mesh/builders/plane.js +73 -0
  153. package/src/mesh/builders/utils.js +20 -0
  154. package/src/mesh/builders/uvsphere.js +80 -0
  155. package/src/mesh/builders/wireframe.js +62 -0
  156. package/src/mesh/index.js +4 -0
  157. package/src/mesh/mesh.js +149 -0
  158. package/src/objects/bone.js +17 -0
  159. package/src/objects/camera/camera.js +56 -0
  160. package/src/objects/camera/index.js +2 -0
  161. package/src/objects/camera/projection.js +203 -0
  162. package/src/objects/debug/index.js +1 -0
  163. package/src/objects/debug/skeleton.js +28 -0
  164. package/src/objects/index.js +7 -0
  165. package/src/objects/light/ambient.js +20 -0
  166. package/src/objects/light/directional.js +29 -0
  167. package/src/objects/light/index.js +5 -0
  168. package/src/objects/light/point.js +32 -0
  169. package/src/objects/light/shadow/index.js +1 -0
  170. package/src/objects/light/shadow/shadow.js +67 -0
  171. package/src/objects/light/spot.js +56 -0
  172. package/src/objects/mesh.js +141 -0
  173. package/src/objects/object3d.js +167 -0
  174. package/src/objects/skybox.js +38 -0
  175. package/src/plugins/camera/camera.js +19 -0
  176. package/src/plugins/camera/index.js +2 -0
  177. package/src/plugins/camera/nodes/cameraview.js +46 -0
  178. package/src/plugins/camera/nodes/index.js +2 -0
  179. package/src/plugins/camera/nodes/opaquepass.js +79 -0
  180. package/src/plugins/index.js +6 -0
  181. package/src/plugins/light/index.js +2 -0
  182. package/src/plugins/light/light.js +23 -0
  183. package/src/plugins/light/nodes/index.js +1 -0
  184. package/src/plugins/light/nodes/light.js +127 -0
  185. package/src/plugins/meshmaterial/index.js +3 -0
  186. package/src/plugins/meshmaterial/meshmaterial.js +381 -0
  187. package/src/plugins/meshmaterial/nodes/index.js +1 -0
  188. package/src/plugins/meshmaterial/nodes/meshmaterial.js +50 -0
  189. package/src/plugins/meshmaterial/resources/index.js +1 -0
  190. package/src/plugins/meshmaterial/resources/meshmaterialpipelines.js +50 -0
  191. package/src/plugins/shadow/index.js +3 -0
  192. package/src/plugins/shadow/nodes/index.js +3 -0
  193. package/src/plugins/shadow/nodes/shadow.js +272 -0
  194. package/src/plugins/shadow/nodes/shadowOccluder.js +112 -0
  195. package/src/plugins/shadow/nodes/shadowOpaquePass.js +73 -0
  196. package/src/plugins/shadow/resources/ShadowMap.js +99 -0
  197. package/src/plugins/shadow/resources/index.js +2 -0
  198. package/src/plugins/shadow/resources/shadowpipelines.js +25 -0
  199. package/src/plugins/shadow/shadow.js +31 -0
  200. package/src/plugins/skeletonhelper/index.js +1 -0
  201. package/src/plugins/skeletonhelper/skeletonhelper.js +160 -0
  202. package/src/plugins/skybox/index.js +3 -0
  203. package/src/plugins/skybox/nodes/index.js +1 -0
  204. package/src/plugins/skybox/nodes/skybox.js +143 -0
  205. package/src/plugins/skybox/resources/index.js +2 -0
  206. package/src/plugins/skybox/resources/skyboxmesh.js +14 -0
  207. package/src/plugins/skybox/resources/skyboxpipeline.js +6 -0
  208. package/src/plugins/skybox/skybox.js +137 -0
  209. package/src/renderer/core/index.js +179 -0
  210. package/src/renderer/graph/index.js +3 -0
  211. package/src/renderer/graph/nodes.js +34 -0
  212. package/src/renderer/graph/rendergraph.js +182 -0
  213. package/src/renderer/index.js +5 -0
  214. package/src/renderer/plugin.js +36 -0
  215. package/src/renderer/renderer.js +179 -0
  216. package/src/renderer/views.js +28 -0
  217. package/src/rendertarget/canvastarget.js +30 -0
  218. package/src/rendertarget/image.js +132 -0
  219. package/src/rendertarget/index.js +3 -0
  220. package/src/rendertarget/rendertarget.js +89 -0
  221. package/src/shader/basicFragment.glsl +30 -0
  222. package/src/shader/basicVertex.glsl +87 -0
  223. package/src/shader/common/color.glsl +7 -0
  224. package/src/shader/common/common.glsl +25 -0
  225. package/src/shader/common/index.js +4 -0
  226. package/src/shader/common/light.glsl +437 -0
  227. package/src/shader/common/math.glsl +12 -0
  228. package/src/shader/debug/index.js +2 -0
  229. package/src/shader/debug/skeletonFragment.glsl +8 -0
  230. package/src/shader/debug/skeletonVertex.glsl +27 -0
  231. package/src/shader/depthFragment.glsl +37 -0
  232. package/src/shader/index.js +11 -0
  233. package/src/shader/lambertFragment.glsl +126 -0
  234. package/src/shader/normalFragment.glsl +25 -0
  235. package/src/shader/phongFragment.glsl +140 -0
  236. package/src/shader/skyboxFragment.glsl +16 -0
  237. package/src/shader/skyboxVertex.glsl +20 -0
  238. package/src/shader/standardFragment.glsl +274 -0
  239. package/src/texture/index.js +2 -0
  240. package/src/texture/sampler.js +111 -0
  241. package/src/texture/texture.js +234 -0
  242. package/src/utils/index.js +115 -0
  243. package/tsconfig.json +11 -0
  244. package/website/config/index.ts +1 -0
  245. package/website/config/navigation.ts +53 -0
  246. package/website/content.config.ts +92 -0
  247. package/website/layouts/DocLayout.astro +501 -0
  248. package/website/layouts/Example.astro +91 -0
  249. package/website/pages/examples/[...slug].astro +77 -0
  250. package/website/pages/examples/index.astro +98 -0
  251. package/website/pages/examples/samples/[...slug].astro +17 -0
  252. package/website/pages/guide/[slug].astro +30 -0
  253. package/website/pages/guide/index.astro +21 -0
  254. package/website/pages/index.astro +9 -0
  255. package/website/plugins/remark-link-base.js +23 -0
  256. package/website/utils/url.ts +30 -0
@@ -0,0 +1,705 @@
1
+ {
2
+ "asset": {
3
+ "version": "2.0",
4
+ "generator": "babylon.js glTF exporter for Maya 2018 v20200228.3 (with minor hand modifications)"
5
+ },
6
+ "scene": 0,
7
+ "scenes": [
8
+ {
9
+ "nodes": [
10
+ 0,
11
+ 1,
12
+ 2,
13
+ 3,
14
+ 4,
15
+ 5
16
+ ]
17
+ }
18
+ ],
19
+ "nodes": [
20
+ {
21
+ "mesh": 0,
22
+ "name": "Hose_low"
23
+ },
24
+ {
25
+ "mesh": 1,
26
+ "name": "RubberWood_low"
27
+ },
28
+ {
29
+ "mesh": 2,
30
+ "name": "GlassPlastic_low"
31
+ },
32
+ {
33
+ "mesh": 3,
34
+ "name": "MetalParts_low"
35
+ },
36
+ {
37
+ "mesh": 4,
38
+ "name": "LeatherParts_low"
39
+ },
40
+ {
41
+ "mesh": 5,
42
+ "name": "Lenses_low"
43
+ }
44
+ ],
45
+ "meshes": [
46
+ {
47
+ "primitives": [
48
+ {
49
+ "attributes": {
50
+ "POSITION": 1,
51
+ "TANGENT": 2,
52
+ "NORMAL": 3,
53
+ "TEXCOORD_0": 4
54
+ },
55
+ "indices": 0,
56
+ "material": 0
57
+ }
58
+ ],
59
+ "name": "Hose_low"
60
+ },
61
+ {
62
+ "primitives": [
63
+ {
64
+ "attributes": {
65
+ "POSITION": 6,
66
+ "TANGENT": 7,
67
+ "NORMAL": 8,
68
+ "TEXCOORD_0": 9
69
+ },
70
+ "indices": 5,
71
+ "material": 1
72
+ }
73
+ ],
74
+ "name": "RubberWood_low"
75
+ },
76
+ {
77
+ "primitives": [
78
+ {
79
+ "attributes": {
80
+ "POSITION": 11,
81
+ "TANGENT": 12,
82
+ "NORMAL": 13,
83
+ "TEXCOORD_0": 14
84
+ },
85
+ "indices": 10,
86
+ "material": 2
87
+ }
88
+ ],
89
+ "name": "GlassPlastic_low"
90
+ },
91
+ {
92
+ "primitives": [
93
+ {
94
+ "attributes": {
95
+ "POSITION": 16,
96
+ "TANGENT": 17,
97
+ "NORMAL": 18,
98
+ "TEXCOORD_0": 19
99
+ },
100
+ "indices": 15,
101
+ "material": 3
102
+ }
103
+ ],
104
+ "name": "MetalParts_low"
105
+ },
106
+ {
107
+ "primitives": [
108
+ {
109
+ "attributes": {
110
+ "POSITION": 21,
111
+ "TANGENT": 22,
112
+ "NORMAL": 23,
113
+ "TEXCOORD_0": 24
114
+ },
115
+ "indices": 20,
116
+ "material": 4
117
+ }
118
+ ],
119
+ "name": "LeatherParts_low"
120
+ },
121
+ {
122
+ "primitives": [
123
+ {
124
+ "attributes": {
125
+ "POSITION": 26,
126
+ "TANGENT": 27,
127
+ "NORMAL": 28,
128
+ "TEXCOORD_0": 29
129
+ },
130
+ "indices": 25,
131
+ "material": 5
132
+ }
133
+ ],
134
+ "name": "Lenses_low"
135
+ }
136
+ ],
137
+ "accessors": [
138
+ {
139
+ "bufferView": 0,
140
+ "componentType": 5123,
141
+ "count": 59040,
142
+ "type": "SCALAR",
143
+ "name": "accessorIndices"
144
+ },
145
+ {
146
+ "bufferView": 1,
147
+ "componentType": 5126,
148
+ "count": 10472,
149
+ "max": [
150
+ 0.10810829,
151
+ 0.356580257,
152
+ 0.190409869
153
+ ],
154
+ "min": [
155
+ -0.07221258,
156
+ 0.104120225,
157
+ -0.088394776
158
+ ],
159
+ "type": "VEC3",
160
+ "name": "accessorPositions"
161
+ },
162
+ {
163
+ "bufferView": 2,
164
+ "componentType": 5126,
165
+ "count": 10472,
166
+ "type": "VEC4",
167
+ "name": "accessorTangents"
168
+ },
169
+ {
170
+ "bufferView": 1,
171
+ "byteOffset": 125664,
172
+ "componentType": 5126,
173
+ "count": 10472,
174
+ "type": "VEC3",
175
+ "name": "accessorNormals"
176
+ },
177
+ {
178
+ "bufferView": 3,
179
+ "componentType": 5126,
180
+ "count": 10472,
181
+ "type": "VEC2",
182
+ "name": "accessorUVs"
183
+ },
184
+ {
185
+ "bufferView": 0,
186
+ "byteOffset": 118080,
187
+ "componentType": 5123,
188
+ "count": 72534,
189
+ "type": "SCALAR",
190
+ "name": "accessorIndices"
191
+ },
192
+ {
193
+ "bufferView": 1,
194
+ "byteOffset": 251328,
195
+ "componentType": 5126,
196
+ "count": 13638,
197
+ "max": [
198
+ 0.162940636,
199
+ 0.7025226,
200
+ 0.200029165
201
+ ],
202
+ "min": [
203
+ -0.158857465,
204
+ -2.14242937E-05,
205
+ -0.171545789
206
+ ],
207
+ "type": "VEC3",
208
+ "name": "accessorPositions"
209
+ },
210
+ {
211
+ "bufferView": 2,
212
+ "byteOffset": 167552,
213
+ "componentType": 5126,
214
+ "count": 13638,
215
+ "type": "VEC4",
216
+ "name": "accessorTangents"
217
+ },
218
+ {
219
+ "bufferView": 1,
220
+ "byteOffset": 414984,
221
+ "componentType": 5126,
222
+ "count": 13638,
223
+ "type": "VEC3",
224
+ "name": "accessorNormals"
225
+ },
226
+ {
227
+ "bufferView": 3,
228
+ "byteOffset": 83776,
229
+ "componentType": 5126,
230
+ "count": 13638,
231
+ "type": "VEC2",
232
+ "name": "accessorUVs"
233
+ },
234
+ {
235
+ "bufferView": 0,
236
+ "byteOffset": 263148,
237
+ "componentType": 5123,
238
+ "count": 24408,
239
+ "type": "SCALAR",
240
+ "name": "accessorIndices"
241
+ },
242
+ {
243
+ "bufferView": 1,
244
+ "byteOffset": 578640,
245
+ "componentType": 5126,
246
+ "count": 4676,
247
+ "max": [
248
+ 0.140494063,
249
+ 0.61828655,
250
+ 0.147373646
251
+ ],
252
+ "min": [
253
+ -0.140846014,
254
+ 0.440957,
255
+ -0.107818365
256
+ ],
257
+ "type": "VEC3",
258
+ "name": "accessorPositions"
259
+ },
260
+ {
261
+ "bufferView": 2,
262
+ "byteOffset": 385760,
263
+ "componentType": 5126,
264
+ "count": 4676,
265
+ "type": "VEC4",
266
+ "name": "accessorTangents"
267
+ },
268
+ {
269
+ "bufferView": 1,
270
+ "byteOffset": 634752,
271
+ "componentType": 5126,
272
+ "count": 4676,
273
+ "type": "VEC3",
274
+ "name": "accessorNormals"
275
+ },
276
+ {
277
+ "bufferView": 3,
278
+ "byteOffset": 192880,
279
+ "componentType": 5126,
280
+ "count": 4676,
281
+ "type": "VEC2",
282
+ "name": "accessorUVs"
283
+ },
284
+ {
285
+ "bufferView": 0,
286
+ "byteOffset": 311964,
287
+ "componentType": 5123,
288
+ "count": 60288,
289
+ "type": "SCALAR",
290
+ "name": "accessorIndices"
291
+ },
292
+ {
293
+ "bufferView": 1,
294
+ "byteOffset": 690864,
295
+ "componentType": 5126,
296
+ "count": 13636,
297
+ "max": [
298
+ 0.132708371,
299
+ 0.6024364,
300
+ 0.199477077
301
+ ],
302
+ "min": [
303
+ -0.203642711,
304
+ 0.02116075,
305
+ -0.147512689
306
+ ],
307
+ "type": "VEC3",
308
+ "name": "accessorPositions"
309
+ },
310
+ {
311
+ "bufferView": 2,
312
+ "byteOffset": 460576,
313
+ "componentType": 5126,
314
+ "count": 13636,
315
+ "type": "VEC4",
316
+ "name": "accessorTangents"
317
+ },
318
+ {
319
+ "bufferView": 1,
320
+ "byteOffset": 854496,
321
+ "componentType": 5126,
322
+ "count": 13636,
323
+ "type": "VEC3",
324
+ "name": "accessorNormals"
325
+ },
326
+ {
327
+ "bufferView": 3,
328
+ "byteOffset": 230288,
329
+ "componentType": 5126,
330
+ "count": 13636,
331
+ "type": "VEC2",
332
+ "name": "accessorUVs"
333
+ },
334
+ {
335
+ "bufferView": 0,
336
+ "byteOffset": 432540,
337
+ "componentType": 5123,
338
+ "count": 65688,
339
+ "type": "SCALAR",
340
+ "name": "accessorIndices"
341
+ },
342
+ {
343
+ "bufferView": 1,
344
+ "byteOffset": 1018128,
345
+ "componentType": 5126,
346
+ "count": 12534,
347
+ "max": [
348
+ 0.124933377,
349
+ 0.716000438,
350
+ 0.129168555
351
+ ],
352
+ "min": [
353
+ -0.125863016,
354
+ 0.2958266,
355
+ -0.1541516
356
+ ],
357
+ "type": "VEC3",
358
+ "name": "accessorPositions"
359
+ },
360
+ {
361
+ "bufferView": 2,
362
+ "byteOffset": 678752,
363
+ "componentType": 5126,
364
+ "count": 12534,
365
+ "type": "VEC4",
366
+ "name": "accessorTangents"
367
+ },
368
+ {
369
+ "bufferView": 1,
370
+ "byteOffset": 1168536,
371
+ "componentType": 5126,
372
+ "count": 12534,
373
+ "type": "VEC3",
374
+ "name": "accessorNormals"
375
+ },
376
+ {
377
+ "bufferView": 3,
378
+ "byteOffset": 339376,
379
+ "componentType": 5126,
380
+ "count": 12534,
381
+ "type": "VEC2",
382
+ "name": "accessorUVs"
383
+ },
384
+ {
385
+ "bufferView": 0,
386
+ "byteOffset": 563916,
387
+ "componentType": 5123,
388
+ "count": 2208,
389
+ "type": "SCALAR",
390
+ "name": "accessorIndices"
391
+ },
392
+ {
393
+ "bufferView": 1,
394
+ "byteOffset": 1318944,
395
+ "componentType": 5126,
396
+ "count": 436,
397
+ "max": [
398
+ 0.101920746,
399
+ 0.5936986,
400
+ 0.152926728
401
+ ],
402
+ "min": [
403
+ -0.101920947,
404
+ 0.5300429,
405
+ 0.090174824
406
+ ],
407
+ "type": "VEC3",
408
+ "name": "accessorPositions"
409
+ },
410
+ {
411
+ "bufferView": 2,
412
+ "byteOffset": 879296,
413
+ "componentType": 5126,
414
+ "count": 436,
415
+ "type": "VEC4",
416
+ "name": "accessorTangents"
417
+ },
418
+ {
419
+ "bufferView": 1,
420
+ "byteOffset": 1324176,
421
+ "componentType": 5126,
422
+ "count": 436,
423
+ "type": "VEC3",
424
+ "name": "accessorNormals"
425
+ },
426
+ {
427
+ "bufferView": 3,
428
+ "byteOffset": 439648,
429
+ "componentType": 5126,
430
+ "count": 436,
431
+ "type": "VEC2",
432
+ "name": "accessorUVs"
433
+ }
434
+ ],
435
+ "bufferViews": [
436
+ {
437
+ "buffer": 0,
438
+ "byteLength": 568332,
439
+ "name": "bufferViewScalar"
440
+ },
441
+ {
442
+ "buffer": 0,
443
+ "byteOffset": 568332,
444
+ "byteLength": 1329408,
445
+ "byteStride": 12,
446
+ "name": "bufferViewFloatVec3"
447
+ },
448
+ {
449
+ "buffer": 0,
450
+ "byteOffset": 1897740,
451
+ "byteLength": 886272,
452
+ "byteStride": 16,
453
+ "name": "bufferViewFloatVec4"
454
+ },
455
+ {
456
+ "buffer": 0,
457
+ "byteOffset": 2784012,
458
+ "byteLength": 443136,
459
+ "byteStride": 8,
460
+ "name": "bufferViewFloatVec2"
461
+ }
462
+ ],
463
+ "buffers": [
464
+ {
465
+ "uri": "index.bin",
466
+ "byteLength": 3227148
467
+ }
468
+ ],
469
+ "materials": [
470
+ {
471
+ "pbrMetallicRoughness": {
472
+ "baseColorTexture": {
473
+ "index": 2
474
+ },
475
+ "metallicRoughnessTexture": {
476
+ "index": 1
477
+ }
478
+ },
479
+ "normalTexture": {
480
+ "index": 0
481
+ },
482
+ "occlusionTexture": {
483
+ "index": 1
484
+ },
485
+ "doubleSided": true,
486
+ "name": "HoseMat"
487
+ },
488
+ {
489
+ "pbrMetallicRoughness": {
490
+ "baseColorTexture": {
491
+ "index": 2
492
+ },
493
+ "metallicRoughnessTexture": {
494
+ "index": 1
495
+ }
496
+ },
497
+ "normalTexture": {
498
+ "index": 0
499
+ },
500
+ "occlusionTexture": {
501
+ "index": 1
502
+ },
503
+ "name": "RubberWoodMat"
504
+ },
505
+ {
506
+ "pbrMetallicRoughness": {
507
+ "baseColorTexture": {
508
+ "index": 5
509
+ },
510
+ "metallicRoughnessTexture": {
511
+ "index": 4
512
+ }
513
+ },
514
+ "normalTexture": {
515
+ "index": 3
516
+ },
517
+ "occlusionTexture": {
518
+ "index": 4
519
+ },
520
+ "name": "GlassPlasticMat"
521
+ },
522
+ {
523
+ "pbrMetallicRoughness": {
524
+ "baseColorTexture": {
525
+ "index": 8
526
+ },
527
+ "metallicRoughnessTexture": {
528
+ "index": 7
529
+ }
530
+ },
531
+ "normalTexture": {
532
+ "index": 6
533
+ },
534
+ "occlusionTexture": {
535
+ "index": 7
536
+ },
537
+ "name": "MetalPartsMat"
538
+ },
539
+ {
540
+ "pbrMetallicRoughness": {
541
+ "baseColorTexture": {
542
+ "index": 11
543
+ },
544
+ "metallicRoughnessTexture": {
545
+ "index": 10
546
+ }
547
+ },
548
+ "normalTexture": {
549
+ "index": 9
550
+ },
551
+ "occlusionTexture": {
552
+ "index": 10
553
+ },
554
+ "name": "LeatherPartsMat"
555
+ },
556
+ {
557
+ "pbrMetallicRoughness": {
558
+ "baseColorTexture": {
559
+ "index": 14
560
+ },
561
+ "metallicRoughnessTexture": {
562
+ "index": 13
563
+ }
564
+ },
565
+ "normalTexture": {
566
+ "index": 12
567
+ },
568
+ "occlusionTexture": {
569
+ "index": 13
570
+ },
571
+ "alphaMode": "BLEND",
572
+ "name": "LensesMat"
573
+ }
574
+ ],
575
+ "textures": [
576
+ {
577
+ "sampler": 0,
578
+ "source": 0,
579
+ "name": "FlightHelmet_Materials_RubberWoodMat_Normal.png"
580
+ },
581
+ {
582
+ "sampler": 0,
583
+ "source": 1,
584
+ "name": "FlightHelmet_Materials_RubberWoodMat_OcclusionRoughMetal.png"
585
+ },
586
+ {
587
+ "sampler": 0,
588
+ "source": 2,
589
+ "name": "FlightHelmet_Materials_RubberWoodMat_BaseColor.png"
590
+ },
591
+ {
592
+ "sampler": 0,
593
+ "source": 3,
594
+ "name": "FlightHelmet_Materials_GlassPlasticMat_Normal.png"
595
+ },
596
+ {
597
+ "sampler": 0,
598
+ "source": 4,
599
+ "name": "FlightHelmet_Materials_GlassPlasticMat_OcclusionRoughMetal.png"
600
+ },
601
+ {
602
+ "sampler": 0,
603
+ "source": 5,
604
+ "name": "FlightHelmet_Materials_GlassPlasticMat_BaseColor.png"
605
+ },
606
+ {
607
+ "sampler": 0,
608
+ "source": 6,
609
+ "name": "FlightHelmet_Materials_MetalPartsMat_Normal.png"
610
+ },
611
+ {
612
+ "sampler": 0,
613
+ "source": 7,
614
+ "name": "FlightHelmet_Materials_MetalPartsMat_OcclusionRoughMetal.png"
615
+ },
616
+ {
617
+ "sampler": 0,
618
+ "source": 8,
619
+ "name": "FlightHelmet_Materials_MetalPartsMat_BaseColor.png"
620
+ },
621
+ {
622
+ "sampler": 0,
623
+ "source": 9,
624
+ "name": "FlightHelmet_Materials_LeatherPartsMat_Normal.png"
625
+ },
626
+ {
627
+ "sampler": 0,
628
+ "source": 10,
629
+ "name": "FlightHelmet_Materials_LeatherPartsMat_OcclusionRoughMetal.png"
630
+ },
631
+ {
632
+ "sampler": 0,
633
+ "source": 11,
634
+ "name": "FlightHelmet_Materials_LeatherPartsMat_BaseColor.png"
635
+ },
636
+ {
637
+ "sampler": 0,
638
+ "source": 12,
639
+ "name": "FlightHelmet_Materials_LensesMat_Normal.png"
640
+ },
641
+ {
642
+ "sampler": 0,
643
+ "source": 13,
644
+ "name": "FlightHelmet_Materials_LensesMat_OcclusionRoughMetal.png"
645
+ },
646
+ {
647
+ "sampler": 0,
648
+ "source": 14,
649
+ "name": "FlightHelmet_Materials_LensesMat_BaseColor.png"
650
+ }
651
+ ],
652
+ "images": [
653
+ {
654
+ "uri": "FlightHelmet_Materials_RubberWoodMat_Normal.png"
655
+ },
656
+ {
657
+ "uri": "FlightHelmet_Materials_RubberWoodMat_OcclusionRoughMetal.png"
658
+ },
659
+ {
660
+ "uri": "FlightHelmet_Materials_RubberWoodMat_BaseColor.png"
661
+ },
662
+ {
663
+ "uri": "FlightHelmet_Materials_GlassPlasticMat_Normal.png"
664
+ },
665
+ {
666
+ "uri": "FlightHelmet_Materials_GlassPlasticMat_OcclusionRoughMetal.png"
667
+ },
668
+ {
669
+ "uri": "FlightHelmet_Materials_GlassPlasticMat_BaseColor.png"
670
+ },
671
+ {
672
+ "uri": "FlightHelmet_Materials_MetalPartsMat_Normal.png"
673
+ },
674
+ {
675
+ "uri": "FlightHelmet_Materials_MetalPartsMat_OcclusionRoughMetal.png"
676
+ },
677
+ {
678
+ "uri": "FlightHelmet_Materials_MetalPartsMat_BaseColor.png"
679
+ },
680
+ {
681
+ "uri": "FlightHelmet_Materials_LeatherPartsMat_Normal.png"
682
+ },
683
+ {
684
+ "uri": "FlightHelmet_Materials_LeatherPartsMat_OcclusionRoughMetal.png"
685
+ },
686
+ {
687
+ "uri": "FlightHelmet_Materials_LeatherPartsMat_BaseColor.png"
688
+ },
689
+ {
690
+ "uri": "FlightHelmet_Materials_LensesMat_Normal.png"
691
+ },
692
+ {
693
+ "uri": "FlightHelmet_Materials_LensesMat_OcclusionRoughMetal.png"
694
+ },
695
+ {
696
+ "uri": "FlightHelmet_Materials_LensesMat_BaseColor.png"
697
+ }
698
+ ],
699
+ "samplers": [
700
+ {
701
+ "magFilter": 9729,
702
+ "minFilter": 9987
703
+ }
704
+ ]
705
+ }