@adobe/data-gpu 0.9.74 → 0.9.76

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 (383) hide show
  1. package/CLAUDE.md +9 -0
  2. package/README.md +36 -0
  3. package/dist/core/core-plugin.d.ts +1 -1
  4. package/dist/core/public.d.ts +2 -0
  5. package/dist/core/public.js +4 -0
  6. package/dist/core/public.js.map +1 -0
  7. package/dist/graphics/animation/animation-data-plugin.d.ts +8 -0
  8. package/dist/graphics/animation/animation-plugin.d.ts +10 -2
  9. package/dist/graphics/camera/camera-plugin.d.ts +3 -3
  10. package/dist/graphics/camera/orbit/attach-orbit-drag.d.ts +1 -21
  11. package/dist/graphics/camera/orbit/attach-orbit-drag.js +0 -10
  12. package/dist/graphics/camera/orbit/attach-orbit-drag.js.map +1 -1
  13. package/dist/graphics/camera/orbit/orbit-data-plugin.d.ts +6 -6
  14. package/dist/graphics/camera/orbit/orbit-data-plugin.js +1 -1
  15. package/dist/graphics/camera/orbit/orbit-data-plugin.js.map +1 -1
  16. package/dist/graphics/camera/orbit/orbit-drag-service.d.ts +11 -0
  17. package/dist/graphics/camera/orbit/orbit-drag-service.js +3 -0
  18. package/dist/graphics/camera/orbit/orbit-drag-service.js.map +1 -0
  19. package/dist/graphics/camera/orbit/orbit-plugin.d.ts +6 -6
  20. package/dist/graphics/camera/orbit/orbit-system-plugin.d.ts +8 -8
  21. package/dist/graphics/camera/orbit/orbit-system-plugin.js +6 -9
  22. package/dist/graphics/camera/orbit/orbit-system-plugin.js.map +1 -1
  23. package/dist/graphics/camera/orbit/orbit.d.ts +5 -5
  24. package/dist/graphics/camera/orbit/public.d.ts +2 -2
  25. package/dist/graphics/camera/orbit/public.js +2 -1
  26. package/dist/graphics/camera/orbit/public.js.map +1 -1
  27. package/dist/graphics/graphics-plugin.d.ts +1 -1
  28. package/dist/graphics/index.d.ts +1 -0
  29. package/dist/graphics/index.js +3 -0
  30. package/dist/graphics/index.js.map +1 -0
  31. package/dist/graphics/picking/picking-plugin.d.ts +9871 -1912
  32. package/dist/graphics/picking/picking-plugin.js +3 -3
  33. package/dist/graphics/picking/picking-plugin.js.map +1 -1
  34. package/dist/graphics/public.d.ts +38 -0
  35. package/dist/graphics/public.js +40 -0
  36. package/dist/graphics/public.js.map +1 -0
  37. package/dist/graphics/rendering/bone-collider-plugin.d.ts +2967 -486
  38. package/dist/graphics/rendering/bone-collider-plugin.js +13 -12
  39. package/dist/graphics/rendering/bone-collider-plugin.js.map +1 -1
  40. package/dist/graphics/rendering/display-transform-plugin.d.ts +2 -0
  41. package/dist/graphics/rendering/display-transform-plugin.js +2 -2
  42. package/dist/graphics/rendering/display-transform-plugin.js.map +1 -1
  43. package/dist/graphics/rendering/ibl-render/ibl-render-plugin.d.ts +2857 -403
  44. package/dist/graphics/rendering/ibl-render/ibl-render-plugin.js +9 -9
  45. package/dist/graphics/rendering/ibl-render/ibl-render-plugin.js.map +1 -1
  46. package/dist/graphics/rendering/interpolation-plugin.d.ts +1040 -156
  47. package/dist/graphics/rendering/jolt-ragdoll-plugin.d.ts +3017 -538
  48. package/dist/graphics/rendering/jolt-ragdoll-plugin.js +6 -6
  49. package/dist/graphics/rendering/jolt-ragdoll-plugin.js.map +1 -1
  50. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu-plugin.d.ts +1123 -0
  51. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu-plugin.js +79 -0
  52. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu-plugin.js.map +1 -0
  53. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu.test.d.ts +1 -0
  54. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu.test.js +18 -0
  55. package/dist/graphics/rendering/material-palette-gpu/material-palette-gpu.test.js.map +1 -0
  56. package/dist/graphics/rendering/material-palette-gpu/material-palette.d.ts +25 -0
  57. package/dist/graphics/rendering/material-palette-gpu/material-palette.js +27 -0
  58. package/dist/graphics/rendering/material-palette-gpu/material-palette.js.map +1 -0
  59. package/dist/graphics/rendering/material-palette-gpu/palette-bind-group.d.ts +3 -0
  60. package/dist/graphics/rendering/material-palette-gpu/palette-bind-group.js +22 -0
  61. package/dist/graphics/rendering/material-palette-gpu/palette-bind-group.js.map +1 -0
  62. package/dist/graphics/rendering/model-collider-plugin.d.ts +2903 -663
  63. package/dist/graphics/rendering/model-collider-plugin.js +11 -34
  64. package/dist/graphics/rendering/model-collider-plugin.js.map +1 -1
  65. package/dist/graphics/rendering/pbr-core-plugin.d.ts +16 -8
  66. package/dist/graphics/rendering/pbr-core-plugin.js +16 -19
  67. package/dist/graphics/rendering/pbr-core-plugin.js.map +1 -1
  68. package/dist/graphics/rendering/pbr-render/pbr-factor-render-plugin.d.ts +3514 -0
  69. package/dist/graphics/rendering/pbr-render/pbr-factor-render-plugin.js +189 -0
  70. package/dist/graphics/rendering/pbr-render/pbr-factor-render-plugin.js.map +1 -0
  71. package/dist/graphics/rendering/pbr-render/pbr-factor-shader.wgsl.d.ts +7 -0
  72. package/dist/graphics/rendering/pbr-render/pbr-factor-shader.wgsl.js +124 -0
  73. package/dist/graphics/rendering/pbr-render/pbr-factor-shader.wgsl.js.map +1 -0
  74. package/dist/graphics/rendering/pbr-render/physics-bridge-plugin.d.ts +769 -571
  75. package/dist/graphics/rendering/pbr-render/physics-bridge-plugin.js +98 -79
  76. package/dist/graphics/rendering/pbr-render/physics-bridge-plugin.js.map +1 -1
  77. package/dist/graphics/rendering/pbr-render/primitive-render-shared.d.ts +43 -0
  78. package/dist/graphics/rendering/pbr-render/primitive-render-shared.js +59 -0
  79. package/dist/graphics/rendering/pbr-render/primitive-render-shared.js.map +1 -0
  80. package/dist/graphics/rendering/skinning/skinning-plugin.d.ts +2930 -270
  81. package/dist/graphics/rendering/skinning/skinning-plugin.js +19 -40
  82. package/dist/graphics/rendering/skinning/skinning-plugin.js.map +1 -1
  83. package/dist/graphics/scene/model/geometry/public.d.ts +1 -0
  84. package/dist/graphics/scene/model/mesh/mesh.d.ts +13 -0
  85. package/dist/graphics/scene/model/mesh/mesh.js +3 -0
  86. package/dist/graphics/scene/model/mesh/mesh.js.map +1 -0
  87. package/dist/graphics/scene/model/mesh/public.d.ts +1 -0
  88. package/dist/graphics/scene/model/mesh/public.js +3 -0
  89. package/dist/graphics/scene/model/mesh/public.js.map +1 -0
  90. package/dist/graphics/scene/model/mesh-plugin.d.ts +5177 -0
  91. package/dist/graphics/scene/model/mesh-plugin.js +87 -0
  92. package/dist/graphics/scene/model/mesh-plugin.js.map +1 -0
  93. package/dist/graphics/scene/model/model-loader-plugin.d.ts +2728 -295
  94. package/dist/graphics/scene/model/model-loader-plugin.js +24 -42
  95. package/dist/graphics/scene/model/model-loader-plugin.js.map +1 -1
  96. package/dist/graphics/scene/model/model-plugin.d.ts +1 -352
  97. package/dist/graphics/scene/model/model-plugin.js +1 -37
  98. package/dist/graphics/scene/model/model-plugin.js.map +1 -1
  99. package/dist/graphics/scene/model/model.d.ts +2 -6
  100. package/dist/graphics/scene/model/model.js.map +1 -1
  101. package/dist/graphics/scene/model/public.d.ts +1 -1
  102. package/dist/graphics/scene/model/public.js +2 -1
  103. package/dist/graphics/scene/model/public.js.map +1 -1
  104. package/dist/graphics/scene/model/shape/bounds-from-shape-mesh.d.ts +4 -0
  105. package/dist/graphics/scene/model/shape/bounds-from-shape-mesh.js +25 -0
  106. package/dist/graphics/scene/model/shape/bounds-from-shape-mesh.js.map +1 -0
  107. package/dist/graphics/scene/model/shape/shape-geometry-plugin.d.ts +233 -386
  108. package/dist/graphics/scene/model/shape/shape-geometry-plugin.js +87 -18
  109. package/dist/graphics/scene/model/shape/shape-geometry-plugin.js.map +1 -1
  110. package/dist/graphics/scene/model/shape/shape-spec.d.ts +17 -0
  111. package/dist/graphics/scene/model/shape/shape-spec.js +3 -0
  112. package/dist/graphics/scene/model/shape/shape-spec.js.map +1 -0
  113. package/dist/graphics/scene/model/world-bounds-plugin.d.ts +2670 -245
  114. package/dist/graphics/scene/model/world-bounds-plugin.js +6 -25
  115. package/dist/graphics/scene/model/world-bounds-plugin.js.map +1 -1
  116. package/dist/graphics/scene/node/node-data-plugin.d.ts +15 -4
  117. package/dist/graphics/scene/node/node-data-plugin.js +12 -5
  118. package/dist/graphics/scene/node/node-data-plugin.js.map +1 -1
  119. package/dist/graphics/scene/node/node-data-plugin.test.d.ts +1 -0
  120. package/dist/graphics/scene/node/node-data-plugin.test.js +40 -0
  121. package/dist/graphics/scene/node/node-data-plugin.test.js.map +1 -0
  122. package/dist/graphics/scene/node/node-plugin.d.ts +8 -1
  123. package/dist/graphics/scene/node/transform-plugin.d.ts +8 -1
  124. package/dist/graphics/scene/scene-plugin.d.ts +2353 -100
  125. package/dist/graphics/scene/scene-plugin.js +3 -3
  126. package/dist/graphics/scene/scene-plugin.js.map +1 -1
  127. package/dist/graphics/scene/scene-uniforms/scene-uniforms-plugin.d.ts +3 -3
  128. package/dist/index.d.ts +1 -53
  129. package/dist/index.js +1 -54
  130. package/dist/index.js.map +1 -1
  131. package/dist/material/assemble-material-row.d.ts +4 -0
  132. package/dist/material/assemble-material-row.js +22 -0
  133. package/dist/material/assemble-material-row.js.map +1 -0
  134. package/dist/material/definitions.d.ts +833 -0
  135. package/dist/material/definitions.js +423 -0
  136. package/dist/material/definitions.js.map +1 -0
  137. package/dist/material/emission-mode.d.ts +8 -0
  138. package/dist/material/emission-mode.js +9 -0
  139. package/dist/material/emission-mode.js.map +1 -0
  140. package/dist/material/index.d.ts +1 -0
  141. package/dist/material/index.js +3 -0
  142. package/dist/material/index.js.map +1 -0
  143. package/dist/material/json/from-json-string.d.ts +2 -0
  144. package/dist/material/json/from-json-string.js +12 -0
  145. package/dist/material/json/from-json-string.js.map +1 -0
  146. package/dist/material/json/from-json.d.ts +10 -0
  147. package/dist/material/json/from-json.js +16 -0
  148. package/dist/material/json/from-json.js.map +1 -0
  149. package/dist/material/json/from-json.test.d.ts +1 -0
  150. package/dist/material/json/from-json.test.js +46 -0
  151. package/dist/material/json/from-json.test.js.map +1 -0
  152. package/dist/material/json/is-properties-json.d.ts +2 -0
  153. package/dist/material/json/is-properties-json.js +65 -0
  154. package/dist/material/json/is-properties-json.js.map +1 -0
  155. package/dist/material/json/library-json.d.ts +3 -0
  156. package/dist/material/json/library-json.js +2 -0
  157. package/dist/material/json/library-json.js.map +1 -0
  158. package/dist/material/json/load-json.d.ts +7 -0
  159. package/dist/material/json/load-json.js +10 -0
  160. package/dist/material/json/load-json.js.map +1 -0
  161. package/dist/material/json/properties-json.d.ts +25 -0
  162. package/dist/material/json/properties-json.js +2 -0
  163. package/dist/material/json/properties-json.js.map +1 -0
  164. package/dist/material/json/public.d.ts +9 -0
  165. package/dist/material/json/public.js +6 -0
  166. package/dist/material/json/public.js.map +1 -0
  167. package/dist/material/json/to-definition.d.ts +5 -0
  168. package/dist/material/json/to-definition.js +65 -0
  169. package/dist/material/json/to-definition.js.map +1 -0
  170. package/dist/material/material-by-name-lookup.d.ts +11 -0
  171. package/dist/material/material-by-name-lookup.js +3 -0
  172. package/dist/material/material-by-name-lookup.js.map +1 -0
  173. package/dist/material/material-defaults.d.ts +23 -0
  174. package/dist/material/material-defaults.js +25 -0
  175. package/dist/material/material-defaults.js.map +1 -0
  176. package/dist/material/material-definition.d.ts +3 -0
  177. package/dist/material/material-definition.js +2 -0
  178. package/dist/material/material-definition.js.map +1 -0
  179. package/dist/material/material-name.d.ts +2 -0
  180. package/dist/material/material-name.js +2 -0
  181. package/dist/material/material-name.js.map +1 -0
  182. package/dist/material/material-plugin.d.ts +891 -22
  183. package/dist/material/material-plugin.js +46 -21
  184. package/dist/material/material-plugin.js.map +1 -1
  185. package/dist/material/material-plugin.test.d.ts +1 -0
  186. package/dist/material/material-plugin.test.js +87 -0
  187. package/dist/material/material-plugin.test.js.map +1 -0
  188. package/dist/material/material.d.ts +27 -29
  189. package/dist/material/material.js +0 -1
  190. package/dist/material/material.js.map +1 -1
  191. package/dist/material/public.d.ts +12 -2
  192. package/dist/material/public.js +12 -2
  193. package/dist/material/public.js.map +1 -1
  194. package/dist/material/require-material.d.ts +4 -0
  195. package/dist/material/require-material.js +10 -0
  196. package/dist/material/require-material.js.map +1 -0
  197. package/dist/material/standard-material-names.d.ts +2 -0
  198. package/dist/material/standard-material-names.js +4 -0
  199. package/dist/material/standard-material-names.js.map +1 -0
  200. package/dist/material/standard-materials.d.ts +1 -1
  201. package/dist/material/standard-materials.js +17 -24
  202. package/dist/material/standard-materials.js.map +1 -1
  203. package/dist/material/stress-strain-curve/create.d.ts +8 -0
  204. package/dist/material/stress-strain-curve/create.js +2 -0
  205. package/dist/material/stress-strain-curve/create.js.map +1 -0
  206. package/dist/material/stress-strain-curve/public.d.ts +2 -0
  207. package/dist/material/stress-strain-curve/public.js +3 -0
  208. package/dist/material/stress-strain-curve/public.js.map +1 -0
  209. package/dist/material/stress-strain-curve/schema.d.ts +52 -0
  210. package/dist/material/stress-strain-curve/schema.js +19 -0
  211. package/dist/material/stress-strain-curve/schema.js.map +1 -0
  212. package/dist/material/stress-strain-curve/schema.test.d.ts +1 -0
  213. package/dist/material/stress-strain-curve/schema.test.js +18 -0
  214. package/dist/material/stress-strain-curve/schema.test.js.map +1 -0
  215. package/dist/material/stress-strain-curve/stress-strain-curve.d.ts +4 -0
  216. package/dist/material/stress-strain-curve/stress-strain-curve.js +2 -0
  217. package/dist/material/stress-strain-curve/stress-strain-curve.js.map +1 -0
  218. package/dist/physics/body/collider-shape/mass-from-volume.d.ts +2 -0
  219. package/dist/physics/body/collider-shape/mass-from-volume.js +4 -0
  220. package/dist/physics/body/collider-shape/mass-from-volume.js.map +1 -0
  221. package/dist/physics/body/collider-shape/mass-from-volume.test.d.ts +1 -0
  222. package/dist/physics/body/collider-shape/mass-from-volume.test.js +8 -0
  223. package/dist/physics/body/collider-shape/mass-from-volume.test.js.map +1 -0
  224. package/dist/physics/collider-primitive-render-archetype.d.ts +2 -0
  225. package/dist/physics/collider-primitive-render-archetype.js +3 -0
  226. package/dist/physics/collider-primitive-render-archetype.js.map +1 -0
  227. package/dist/physics/collider-primitive-render-archetypes.d.ts +2 -0
  228. package/dist/physics/collider-primitive-render-archetypes.js +9 -0
  229. package/dist/physics/collider-primitive-render-archetypes.js.map +1 -0
  230. package/dist/physics/index.d.ts +1 -0
  231. package/dist/physics/index.js +3 -0
  232. package/dist/physics/index.js.map +1 -0
  233. package/dist/physics/is-voxel-shape-physics-pending.d.ts +3 -0
  234. package/dist/physics/is-voxel-shape-physics-pending.js +7 -0
  235. package/dist/physics/is-voxel-shape-physics-pending.js.map +1 -0
  236. package/dist/physics/physics-clock/physics-clock.d.ts +15 -0
  237. package/dist/physics/physics-clock/physics-clock.js +3 -0
  238. package/dist/physics/physics-clock/physics-clock.js.map +1 -0
  239. package/dist/physics/physics-clock-plugin.d.ts +2 -22
  240. package/dist/physics/physics-clock-plugin.js +0 -2
  241. package/dist/physics/physics-clock-plugin.js.map +1 -1
  242. package/dist/physics/physics-clock.test.js.map +1 -1
  243. package/dist/physics/physics-data-plugin.d.ts +889 -13
  244. package/dist/physics/physics-data-plugin.js +8 -6
  245. package/dist/physics/physics-data-plugin.js.map +1 -1
  246. package/dist/physics/public.d.ts +21 -0
  247. package/dist/physics/public.js +23 -0
  248. package/dist/physics/public.js.map +1 -0
  249. package/dist/physics/ragdoll/bone-capsule.d.ts +8 -0
  250. package/dist/physics/ragdoll/bone-capsule.js +3 -0
  251. package/dist/physics/ragdoll/bone-capsule.js.map +1 -0
  252. package/dist/physics/ragdoll/fit-bone-capsules-input.d.ts +11 -0
  253. package/dist/physics/ragdoll/fit-bone-capsules-input.js +3 -0
  254. package/dist/physics/ragdoll/fit-bone-capsules-input.js.map +1 -0
  255. package/dist/physics/ragdoll/fit-bone-capsules.d.ts +2 -38
  256. package/dist/physics/ragdoll/fit-bone-capsules.js +13 -0
  257. package/dist/physics/ragdoll/fit-bone-capsules.js.map +1 -1
  258. package/dist/physics/ragdoll/fit-bone-capsules.test.js.map +1 -1
  259. package/dist/physics/ragdoll/skin-vertices.d.ts +6 -0
  260. package/dist/physics/ragdoll/skin-vertices.js +3 -0
  261. package/dist/physics/ragdoll/skin-vertices.js.map +1 -0
  262. package/dist/physics/rigid-body-components.d.ts +2 -0
  263. package/dist/physics/rigid-body-components.js +13 -0
  264. package/dist/physics/rigid-body-components.js.map +1 -0
  265. package/dist/physics/solvers/jolt-solver-plugin.d.ts +918 -41
  266. package/dist/physics/solvers/jolt-solver-plugin.js +19 -3
  267. package/dist/physics/solvers/jolt-solver-plugin.js.map +1 -1
  268. package/dist/physics/solvers/rapier-solver-plugin.d.ts +918 -41
  269. package/dist/physics/solvers/rapier-solver-plugin.js +7 -2
  270. package/dist/physics/solvers/rapier-solver-plugin.js.map +1 -1
  271. package/dist/physics/solvers/solver-benchmark-options.d.ts +14 -0
  272. package/dist/physics/solvers/solver-benchmark-options.js +3 -0
  273. package/dist/physics/solvers/solver-benchmark-options.js.map +1 -0
  274. package/dist/physics/solvers/solver-benchmark-result.d.ts +15 -0
  275. package/dist/physics/solvers/solver-benchmark-result.js +3 -0
  276. package/dist/physics/solvers/solver-benchmark-result.js.map +1 -0
  277. package/dist/physics/solvers/solver-benchmark.d.ts +2 -43
  278. package/dist/physics/solvers/solver-benchmark.js.map +1 -1
  279. package/dist/physics/static-collider-components.d.ts +2 -0
  280. package/dist/physics/static-collider-components.js +10 -0
  281. package/dist/physics/static-collider-components.js.map +1 -0
  282. package/package.json +14 -2
  283. package/src/core/public.ts +4 -0
  284. package/src/graphics/camera/orbit/attach-orbit-drag.ts +7 -27
  285. package/src/graphics/camera/orbit/orbit-data-plugin.ts +1 -1
  286. package/src/graphics/camera/orbit/orbit-drag-service.ts +13 -0
  287. package/src/graphics/camera/orbit/orbit-system-plugin.ts +6 -9
  288. package/src/graphics/camera/orbit/orbit.ts +5 -5
  289. package/src/graphics/camera/orbit/public.ts +2 -2
  290. package/src/graphics/index.ts +3 -0
  291. package/src/graphics/picking/picking-plugin.ts +4 -4
  292. package/src/graphics/public.ts +40 -0
  293. package/src/graphics/rendering/bone-collider-plugin.ts +16 -12
  294. package/src/graphics/rendering/display-transform-plugin.ts +2 -2
  295. package/src/graphics/rendering/ibl-render/ibl-render-plugin.ts +9 -9
  296. package/src/graphics/rendering/interpolation.test.ts +1 -1
  297. package/src/graphics/rendering/jolt-ragdoll-plugin.ts +11 -7
  298. package/src/graphics/rendering/material-palette-gpu/material-palette-gpu-plugin.ts +86 -0
  299. package/src/graphics/rendering/material-palette-gpu/material-palette-gpu.test.ts +20 -0
  300. package/src/graphics/rendering/material-palette-gpu/material-palette.ts +41 -0
  301. package/src/graphics/rendering/material-palette-gpu/palette-bind-group.ts +24 -0
  302. package/src/graphics/rendering/model-collider-plugin.ts +19 -35
  303. package/src/graphics/rendering/pbr-core-plugin.ts +16 -19
  304. package/src/graphics/rendering/pbr-render/{pbr-render-plugin.ts → pbr-factor-render-plugin.ts} +60 -111
  305. package/src/graphics/rendering/pbr-render/{pbr-array-shader.wgsl.ts → pbr-factor-shader.wgsl.ts} +19 -40
  306. package/src/graphics/rendering/pbr-render/physics-bridge-plugin.ts +95 -69
  307. package/src/graphics/rendering/pbr-render/primitive-render-shared.ts +76 -0
  308. package/src/graphics/rendering/skinning/skinning-plugin.ts +23 -41
  309. package/src/graphics/scene/model/geometry/public.ts +1 -1
  310. package/src/graphics/scene/model/mesh/mesh.ts +18 -0
  311. package/src/graphics/scene/model/mesh/public.ts +3 -0
  312. package/src/graphics/scene/model/mesh-plugin.ts +102 -0
  313. package/src/graphics/scene/model/model-loader-plugin.ts +25 -43
  314. package/src/graphics/scene/model/model-plugin.ts +1 -44
  315. package/src/graphics/scene/model/model.ts +2 -6
  316. package/src/graphics/scene/model/public.ts +3 -1
  317. package/src/graphics/scene/model/shape/bounds-from-shape-mesh.ts +20 -0
  318. package/src/graphics/scene/model/shape/shape-geometry-plugin.ts +97 -18
  319. package/src/graphics/scene/model/shape/shape-spec.ts +9 -0
  320. package/src/graphics/scene/model/world-bounds-plugin.ts +6 -25
  321. package/src/graphics/scene/node/node-data-plugin.test.ts +47 -0
  322. package/src/graphics/scene/node/node-data-plugin.ts +12 -5
  323. package/src/graphics/scene/scene-plugin.ts +3 -3
  324. package/src/index.ts +1 -70
  325. package/src/material/assemble-material-row.ts +26 -0
  326. package/src/material/definitions.ts +427 -0
  327. package/src/material/emission-mode.ts +11 -0
  328. package/src/material/index.ts +3 -0
  329. package/src/material/json/from-json-string.ts +11 -0
  330. package/src/material/json/from-json.test.ts +50 -0
  331. package/src/material/json/from-json.ts +23 -0
  332. package/src/material/json/is-properties-json.ts +77 -0
  333. package/src/material/json/library-json.ts +4 -0
  334. package/src/material/json/load-json.ts +15 -0
  335. package/src/material/json/properties-json.ts +25 -0
  336. package/src/material/json/public.ts +9 -0
  337. package/src/material/json/to-definition.ts +70 -0
  338. package/src/material/material-by-name-lookup.ts +10 -0
  339. package/src/material/material-defaults.ts +26 -0
  340. package/src/material/material-definition.ts +4 -0
  341. package/src/material/material-name.ts +3 -0
  342. package/src/material/material-plugin.test.ts +97 -0
  343. package/src/material/material-plugin.ts +67 -39
  344. package/src/material/material.ts +35 -34
  345. package/src/material/public.ts +12 -2
  346. package/src/material/require-material.ts +15 -0
  347. package/src/material/standard-material-names.ts +4 -0
  348. package/src/material/standard-materials.ts +21 -27
  349. package/src/material/stress-strain-curve/create.ts +9 -0
  350. package/src/material/stress-strain-curve/public.ts +2 -0
  351. package/src/material/stress-strain-curve/schema.test.ts +20 -0
  352. package/src/material/stress-strain-curve/schema.ts +20 -0
  353. package/src/material/stress-strain-curve/stress-strain-curve.ts +11 -0
  354. package/src/physics/README.md +9 -1
  355. package/src/physics/body/collider-shape/mass-from-volume.test.ts +8 -0
  356. package/src/physics/body/collider-shape/mass-from-volume.ts +4 -0
  357. package/src/physics/collider-primitive-render-archetype.ts +5 -0
  358. package/src/physics/collider-primitive-render-archetypes.ts +9 -0
  359. package/src/physics/index.ts +3 -0
  360. package/src/physics/is-voxel-shape-physics-pending.ts +9 -0
  361. package/src/physics/physics-clock/physics-clock.ts +17 -0
  362. package/src/physics/physics-clock-plugin.ts +1 -24
  363. package/src/physics/physics-clock.test.ts +2 -1
  364. package/src/physics/physics-data-plugin.ts +8 -6
  365. package/src/physics/public.ts +23 -0
  366. package/src/physics/ragdoll/bone-capsule.ts +11 -0
  367. package/src/physics/ragdoll/fit-bone-capsules-input.ts +14 -0
  368. package/src/physics/ragdoll/fit-bone-capsules.test.ts +2 -1
  369. package/src/physics/ragdoll/fit-bone-capsules.ts +2 -27
  370. package/src/physics/ragdoll/skin-vertices.ts +8 -0
  371. package/src/physics/rigid-body-components.ts +13 -0
  372. package/src/physics/solvers/README.md +4 -0
  373. package/src/physics/solvers/jolt-solver-plugin.ts +19 -5
  374. package/src/physics/solvers/rapier-solver-plugin.ts +5 -2
  375. package/src/physics/solvers/solver-benchmark-options.ts +16 -0
  376. package/src/physics/solvers/solver-benchmark-result.ts +17 -0
  377. package/src/physics/solvers/solver-benchmark.ts +2 -35
  378. package/src/physics/static-collider-components.ts +10 -0
  379. package/tsconfig.tsbuildinfo +1 -1
  380. package/src/graphics/rendering/material-gpu/material-arrays.ts +0 -113
  381. package/src/graphics/rendering/material-gpu/material-bind-group.ts +0 -61
  382. package/src/graphics/rendering/material-gpu/material-gpu-plugin.ts +0 -95
  383. package/src/graphics/scene/model/geometry/geometry.ts +0 -12
@@ -0,0 +1,1123 @@
1
+ import { Material } from "../../../material/material.js";
2
+ /**
3
+ * materialPaletteGpu — uploads factor-only materials into a shared palette buffer.
4
+ * Materials with any map URL are skipped (no map upload path — use factor rows or glTF).
5
+ * Each factor material gets `_paletteIndex`; no texture arrays are allocated.
6
+ */
7
+ export declare const materialPaletteGpu: {
8
+ readonly components: {
9
+ readonly material: {
10
+ readonly type: "integer";
11
+ readonly minimum: -2147483648;
12
+ readonly maximum: 2147483647;
13
+ readonly default: number;
14
+ };
15
+ readonly name: {
16
+ readonly type: "string";
17
+ };
18
+ readonly density: {
19
+ readonly type: "number";
20
+ readonly precision: 1;
21
+ readonly default: number;
22
+ };
23
+ readonly restitution: {
24
+ readonly type: "number";
25
+ readonly precision: 1;
26
+ readonly default: number;
27
+ };
28
+ readonly friction: {
29
+ readonly type: "number";
30
+ readonly precision: 1;
31
+ readonly default: number;
32
+ };
33
+ readonly compliance: {
34
+ readonly type: "number";
35
+ readonly precision: 1;
36
+ readonly default: number;
37
+ };
38
+ readonly heatCapacity: {
39
+ readonly type: "number";
40
+ readonly precision: 1;
41
+ readonly default: number;
42
+ };
43
+ readonly viscosity: {
44
+ readonly type: "number";
45
+ readonly precision: 1;
46
+ readonly default: number;
47
+ };
48
+ readonly thermalConductivity: {
49
+ readonly type: "number";
50
+ readonly precision: 1;
51
+ readonly default: number;
52
+ };
53
+ readonly stressStrainCurve: {
54
+ readonly type: "object";
55
+ readonly layout: "packed";
56
+ readonly properties: {
57
+ readonly tensileYieldStrainStress: {
58
+ readonly type: "array";
59
+ readonly items: {
60
+ readonly type: "number";
61
+ readonly precision: 1;
62
+ readonly default: number;
63
+ };
64
+ readonly minItems: 2;
65
+ readonly maxItems: 2;
66
+ readonly default: readonly [0, 0];
67
+ };
68
+ readonly tensileFractureStrainStress: {
69
+ readonly type: "array";
70
+ readonly items: {
71
+ readonly type: "number";
72
+ readonly precision: 1;
73
+ readonly default: number;
74
+ };
75
+ readonly minItems: 2;
76
+ readonly maxItems: 2;
77
+ readonly default: readonly [0, 0];
78
+ };
79
+ readonly compressiveYieldStrainStress: {
80
+ readonly type: "array";
81
+ readonly items: {
82
+ readonly type: "number";
83
+ readonly precision: 1;
84
+ readonly default: number;
85
+ };
86
+ readonly minItems: 2;
87
+ readonly maxItems: 2;
88
+ readonly default: readonly [0, 0];
89
+ };
90
+ readonly compressiveFractureStrainStress: {
91
+ readonly type: "array";
92
+ readonly items: {
93
+ readonly type: "number";
94
+ readonly precision: 1;
95
+ readonly default: number;
96
+ };
97
+ readonly minItems: 2;
98
+ readonly maxItems: 2;
99
+ readonly default: readonly [0, 0];
100
+ };
101
+ };
102
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
103
+ };
104
+ readonly baseColorFactor: {
105
+ readonly type: "array";
106
+ readonly items: {
107
+ readonly type: "number";
108
+ readonly precision: 1;
109
+ readonly default: number;
110
+ };
111
+ readonly minItems: 4;
112
+ readonly maxItems: 4;
113
+ readonly default: readonly [0, 0, 0, 0];
114
+ };
115
+ readonly emissiveFactor: {
116
+ readonly type: "array";
117
+ readonly items: {
118
+ readonly type: "number";
119
+ readonly precision: 1;
120
+ readonly default: number;
121
+ };
122
+ readonly minItems: 3;
123
+ readonly maxItems: 3;
124
+ readonly default: readonly [0, 0, 0];
125
+ };
126
+ readonly metallicFactor: {
127
+ readonly type: "number";
128
+ readonly precision: 1;
129
+ readonly default: number;
130
+ };
131
+ readonly roughnessFactor: {
132
+ readonly type: "number";
133
+ readonly precision: 1;
134
+ readonly default: number;
135
+ };
136
+ readonly normalScale: {
137
+ readonly type: "number";
138
+ readonly precision: 1;
139
+ readonly default: number;
140
+ };
141
+ readonly occlusionStrength: {
142
+ readonly type: "number";
143
+ readonly precision: 1;
144
+ readonly default: number;
145
+ };
146
+ readonly irReflectance: {
147
+ readonly type: "number";
148
+ readonly precision: 1;
149
+ readonly default: number;
150
+ };
151
+ readonly irEmission: {
152
+ readonly type: "number";
153
+ readonly precision: 1;
154
+ readonly default: number;
155
+ };
156
+ readonly emissionMode: {
157
+ readonly type: "integer";
158
+ readonly minimum: 0;
159
+ readonly maximum: 4294967295;
160
+ readonly default: number;
161
+ };
162
+ readonly baseColorUrl: {
163
+ readonly type: "string";
164
+ };
165
+ readonly metallicRoughnessUrl: {
166
+ readonly type: "string";
167
+ };
168
+ readonly normalUrl: {
169
+ readonly type: "string";
170
+ };
171
+ readonly occlusionUrl: {
172
+ readonly type: "string";
173
+ };
174
+ readonly emissiveUrl: {
175
+ readonly type: "string";
176
+ };
177
+ } & {} & {
178
+ readonly _paletteIndex: {
179
+ readonly nonPersistent: true;
180
+ readonly type: "integer";
181
+ readonly minimum: 0;
182
+ readonly maximum: 4294967295;
183
+ readonly default: number;
184
+ };
185
+ };
186
+ readonly resources: {} & {
187
+ readonly frameTime: {
188
+ readonly default: import("../../../core/frame-time/public.js");
189
+ readonly nonPersistent: true;
190
+ };
191
+ } & {
192
+ readonly schedulerState: {
193
+ readonly default: import("@adobe/data/ecs").SchedulerState;
194
+ };
195
+ } & {
196
+ readonly device: {
197
+ readonly default: GPUDevice | null;
198
+ readonly nonPersistent: true;
199
+ };
200
+ readonly commandEncoder: {
201
+ readonly default: GPUCommandEncoder | null;
202
+ readonly nonPersistent: true;
203
+ };
204
+ } & {
205
+ readonly _factorPalette: {
206
+ readonly default: GPUBuffer | null;
207
+ readonly nonPersistent: true;
208
+ };
209
+ readonly _factorPaletteBindGroup: {
210
+ readonly default: GPUBindGroup | null;
211
+ readonly nonPersistent: true;
212
+ };
213
+ };
214
+ readonly archetypes: {
215
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
216
+ } & {} & {};
217
+ readonly transactions: {
218
+ readonly insertMaterial: (t: import("@adobe/data/ecs").TransactionContext<import("@adobe/data/schema").FromSchemas<{
219
+ readonly material: {
220
+ readonly type: "integer";
221
+ readonly minimum: -2147483648;
222
+ readonly maximum: 2147483647;
223
+ readonly default: number;
224
+ };
225
+ readonly name: {
226
+ readonly type: "string";
227
+ };
228
+ readonly density: {
229
+ readonly type: "number";
230
+ readonly precision: 1;
231
+ readonly default: number;
232
+ };
233
+ readonly restitution: {
234
+ readonly type: "number";
235
+ readonly precision: 1;
236
+ readonly default: number;
237
+ };
238
+ readonly friction: {
239
+ readonly type: "number";
240
+ readonly precision: 1;
241
+ readonly default: number;
242
+ };
243
+ readonly compliance: {
244
+ readonly type: "number";
245
+ readonly precision: 1;
246
+ readonly default: number;
247
+ };
248
+ readonly heatCapacity: {
249
+ readonly type: "number";
250
+ readonly precision: 1;
251
+ readonly default: number;
252
+ };
253
+ readonly viscosity: {
254
+ readonly type: "number";
255
+ readonly precision: 1;
256
+ readonly default: number;
257
+ };
258
+ readonly thermalConductivity: {
259
+ readonly type: "number";
260
+ readonly precision: 1;
261
+ readonly default: number;
262
+ };
263
+ readonly stressStrainCurve: {
264
+ readonly type: "object";
265
+ readonly layout: "packed";
266
+ readonly properties: {
267
+ readonly tensileYieldStrainStress: {
268
+ readonly type: "array";
269
+ readonly items: {
270
+ readonly type: "number";
271
+ readonly precision: 1;
272
+ readonly default: number;
273
+ };
274
+ readonly minItems: 2;
275
+ readonly maxItems: 2;
276
+ readonly default: readonly [0, 0];
277
+ };
278
+ readonly tensileFractureStrainStress: {
279
+ readonly type: "array";
280
+ readonly items: {
281
+ readonly type: "number";
282
+ readonly precision: 1;
283
+ readonly default: number;
284
+ };
285
+ readonly minItems: 2;
286
+ readonly maxItems: 2;
287
+ readonly default: readonly [0, 0];
288
+ };
289
+ readonly compressiveYieldStrainStress: {
290
+ readonly type: "array";
291
+ readonly items: {
292
+ readonly type: "number";
293
+ readonly precision: 1;
294
+ readonly default: number;
295
+ };
296
+ readonly minItems: 2;
297
+ readonly maxItems: 2;
298
+ readonly default: readonly [0, 0];
299
+ };
300
+ readonly compressiveFractureStrainStress: {
301
+ readonly type: "array";
302
+ readonly items: {
303
+ readonly type: "number";
304
+ readonly precision: 1;
305
+ readonly default: number;
306
+ };
307
+ readonly minItems: 2;
308
+ readonly maxItems: 2;
309
+ readonly default: readonly [0, 0];
310
+ };
311
+ };
312
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
313
+ };
314
+ readonly baseColorFactor: {
315
+ readonly type: "array";
316
+ readonly items: {
317
+ readonly type: "number";
318
+ readonly precision: 1;
319
+ readonly default: number;
320
+ };
321
+ readonly minItems: 4;
322
+ readonly maxItems: 4;
323
+ readonly default: readonly [0, 0, 0, 0];
324
+ };
325
+ readonly emissiveFactor: {
326
+ readonly type: "array";
327
+ readonly items: {
328
+ readonly type: "number";
329
+ readonly precision: 1;
330
+ readonly default: number;
331
+ };
332
+ readonly minItems: 3;
333
+ readonly maxItems: 3;
334
+ readonly default: readonly [0, 0, 0];
335
+ };
336
+ readonly metallicFactor: {
337
+ readonly type: "number";
338
+ readonly precision: 1;
339
+ readonly default: number;
340
+ };
341
+ readonly roughnessFactor: {
342
+ readonly type: "number";
343
+ readonly precision: 1;
344
+ readonly default: number;
345
+ };
346
+ readonly normalScale: {
347
+ readonly type: "number";
348
+ readonly precision: 1;
349
+ readonly default: number;
350
+ };
351
+ readonly occlusionStrength: {
352
+ readonly type: "number";
353
+ readonly precision: 1;
354
+ readonly default: number;
355
+ };
356
+ readonly irReflectance: {
357
+ readonly type: "number";
358
+ readonly precision: 1;
359
+ readonly default: number;
360
+ };
361
+ readonly irEmission: {
362
+ readonly type: "number";
363
+ readonly precision: 1;
364
+ readonly default: number;
365
+ };
366
+ readonly emissionMode: {
367
+ readonly type: "integer";
368
+ readonly minimum: 0;
369
+ readonly maximum: 4294967295;
370
+ readonly default: number;
371
+ };
372
+ readonly baseColorUrl: {
373
+ readonly type: "string";
374
+ };
375
+ readonly metallicRoughnessUrl: {
376
+ readonly type: "string";
377
+ };
378
+ readonly normalUrl: {
379
+ readonly type: "string";
380
+ };
381
+ readonly occlusionUrl: {
382
+ readonly type: "string";
383
+ };
384
+ readonly emissiveUrl: {
385
+ readonly type: "string";
386
+ };
387
+ }>, import("@adobe/data/schema").FromSchemas<{}>, {
388
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
389
+ }, {
390
+ readonly materialByName: {
391
+ readonly key: "name";
392
+ readonly unique: true;
393
+ readonly archetype: "Material";
394
+ };
395
+ }>, row: Material) => number;
396
+ readonly insertMaterialDefinition: (t: import("@adobe/data/ecs").TransactionContext<import("@adobe/data/schema").FromSchemas<{
397
+ readonly material: {
398
+ readonly type: "integer";
399
+ readonly minimum: -2147483648;
400
+ readonly maximum: 2147483647;
401
+ readonly default: number;
402
+ };
403
+ readonly name: {
404
+ readonly type: "string";
405
+ };
406
+ readonly density: {
407
+ readonly type: "number";
408
+ readonly precision: 1;
409
+ readonly default: number;
410
+ };
411
+ readonly restitution: {
412
+ readonly type: "number";
413
+ readonly precision: 1;
414
+ readonly default: number;
415
+ };
416
+ readonly friction: {
417
+ readonly type: "number";
418
+ readonly precision: 1;
419
+ readonly default: number;
420
+ };
421
+ readonly compliance: {
422
+ readonly type: "number";
423
+ readonly precision: 1;
424
+ readonly default: number;
425
+ };
426
+ readonly heatCapacity: {
427
+ readonly type: "number";
428
+ readonly precision: 1;
429
+ readonly default: number;
430
+ };
431
+ readonly viscosity: {
432
+ readonly type: "number";
433
+ readonly precision: 1;
434
+ readonly default: number;
435
+ };
436
+ readonly thermalConductivity: {
437
+ readonly type: "number";
438
+ readonly precision: 1;
439
+ readonly default: number;
440
+ };
441
+ readonly stressStrainCurve: {
442
+ readonly type: "object";
443
+ readonly layout: "packed";
444
+ readonly properties: {
445
+ readonly tensileYieldStrainStress: {
446
+ readonly type: "array";
447
+ readonly items: {
448
+ readonly type: "number";
449
+ readonly precision: 1;
450
+ readonly default: number;
451
+ };
452
+ readonly minItems: 2;
453
+ readonly maxItems: 2;
454
+ readonly default: readonly [0, 0];
455
+ };
456
+ readonly tensileFractureStrainStress: {
457
+ readonly type: "array";
458
+ readonly items: {
459
+ readonly type: "number";
460
+ readonly precision: 1;
461
+ readonly default: number;
462
+ };
463
+ readonly minItems: 2;
464
+ readonly maxItems: 2;
465
+ readonly default: readonly [0, 0];
466
+ };
467
+ readonly compressiveYieldStrainStress: {
468
+ readonly type: "array";
469
+ readonly items: {
470
+ readonly type: "number";
471
+ readonly precision: 1;
472
+ readonly default: number;
473
+ };
474
+ readonly minItems: 2;
475
+ readonly maxItems: 2;
476
+ readonly default: readonly [0, 0];
477
+ };
478
+ readonly compressiveFractureStrainStress: {
479
+ readonly type: "array";
480
+ readonly items: {
481
+ readonly type: "number";
482
+ readonly precision: 1;
483
+ readonly default: number;
484
+ };
485
+ readonly minItems: 2;
486
+ readonly maxItems: 2;
487
+ readonly default: readonly [0, 0];
488
+ };
489
+ };
490
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
491
+ };
492
+ readonly baseColorFactor: {
493
+ readonly type: "array";
494
+ readonly items: {
495
+ readonly type: "number";
496
+ readonly precision: 1;
497
+ readonly default: number;
498
+ };
499
+ readonly minItems: 4;
500
+ readonly maxItems: 4;
501
+ readonly default: readonly [0, 0, 0, 0];
502
+ };
503
+ readonly emissiveFactor: {
504
+ readonly type: "array";
505
+ readonly items: {
506
+ readonly type: "number";
507
+ readonly precision: 1;
508
+ readonly default: number;
509
+ };
510
+ readonly minItems: 3;
511
+ readonly maxItems: 3;
512
+ readonly default: readonly [0, 0, 0];
513
+ };
514
+ readonly metallicFactor: {
515
+ readonly type: "number";
516
+ readonly precision: 1;
517
+ readonly default: number;
518
+ };
519
+ readonly roughnessFactor: {
520
+ readonly type: "number";
521
+ readonly precision: 1;
522
+ readonly default: number;
523
+ };
524
+ readonly normalScale: {
525
+ readonly type: "number";
526
+ readonly precision: 1;
527
+ readonly default: number;
528
+ };
529
+ readonly occlusionStrength: {
530
+ readonly type: "number";
531
+ readonly precision: 1;
532
+ readonly default: number;
533
+ };
534
+ readonly irReflectance: {
535
+ readonly type: "number";
536
+ readonly precision: 1;
537
+ readonly default: number;
538
+ };
539
+ readonly irEmission: {
540
+ readonly type: "number";
541
+ readonly precision: 1;
542
+ readonly default: number;
543
+ };
544
+ readonly emissionMode: {
545
+ readonly type: "integer";
546
+ readonly minimum: 0;
547
+ readonly maximum: 4294967295;
548
+ readonly default: number;
549
+ };
550
+ readonly baseColorUrl: {
551
+ readonly type: "string";
552
+ };
553
+ readonly metallicRoughnessUrl: {
554
+ readonly type: "string";
555
+ };
556
+ readonly normalUrl: {
557
+ readonly type: "string";
558
+ };
559
+ readonly occlusionUrl: {
560
+ readonly type: "string";
561
+ };
562
+ readonly emissiveUrl: {
563
+ readonly type: "string";
564
+ };
565
+ }>, import("@adobe/data/schema").FromSchemas<{}>, {
566
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
567
+ }, {
568
+ readonly materialByName: {
569
+ readonly key: "name";
570
+ readonly unique: true;
571
+ readonly archetype: "Material";
572
+ };
573
+ }>, args: {
574
+ name: string;
575
+ definition: import("../../../material/material-definition.js").MaterialDefinition;
576
+ }) => number;
577
+ readonly insertMaterialDefinitions: (t: import("@adobe/data/ecs").TransactionContext<import("@adobe/data/schema").FromSchemas<{
578
+ readonly material: {
579
+ readonly type: "integer";
580
+ readonly minimum: -2147483648;
581
+ readonly maximum: 2147483647;
582
+ readonly default: number;
583
+ };
584
+ readonly name: {
585
+ readonly type: "string";
586
+ };
587
+ readonly density: {
588
+ readonly type: "number";
589
+ readonly precision: 1;
590
+ readonly default: number;
591
+ };
592
+ readonly restitution: {
593
+ readonly type: "number";
594
+ readonly precision: 1;
595
+ readonly default: number;
596
+ };
597
+ readonly friction: {
598
+ readonly type: "number";
599
+ readonly precision: 1;
600
+ readonly default: number;
601
+ };
602
+ readonly compliance: {
603
+ readonly type: "number";
604
+ readonly precision: 1;
605
+ readonly default: number;
606
+ };
607
+ readonly heatCapacity: {
608
+ readonly type: "number";
609
+ readonly precision: 1;
610
+ readonly default: number;
611
+ };
612
+ readonly viscosity: {
613
+ readonly type: "number";
614
+ readonly precision: 1;
615
+ readonly default: number;
616
+ };
617
+ readonly thermalConductivity: {
618
+ readonly type: "number";
619
+ readonly precision: 1;
620
+ readonly default: number;
621
+ };
622
+ readonly stressStrainCurve: {
623
+ readonly type: "object";
624
+ readonly layout: "packed";
625
+ readonly properties: {
626
+ readonly tensileYieldStrainStress: {
627
+ readonly type: "array";
628
+ readonly items: {
629
+ readonly type: "number";
630
+ readonly precision: 1;
631
+ readonly default: number;
632
+ };
633
+ readonly minItems: 2;
634
+ readonly maxItems: 2;
635
+ readonly default: readonly [0, 0];
636
+ };
637
+ readonly tensileFractureStrainStress: {
638
+ readonly type: "array";
639
+ readonly items: {
640
+ readonly type: "number";
641
+ readonly precision: 1;
642
+ readonly default: number;
643
+ };
644
+ readonly minItems: 2;
645
+ readonly maxItems: 2;
646
+ readonly default: readonly [0, 0];
647
+ };
648
+ readonly compressiveYieldStrainStress: {
649
+ readonly type: "array";
650
+ readonly items: {
651
+ readonly type: "number";
652
+ readonly precision: 1;
653
+ readonly default: number;
654
+ };
655
+ readonly minItems: 2;
656
+ readonly maxItems: 2;
657
+ readonly default: readonly [0, 0];
658
+ };
659
+ readonly compressiveFractureStrainStress: {
660
+ readonly type: "array";
661
+ readonly items: {
662
+ readonly type: "number";
663
+ readonly precision: 1;
664
+ readonly default: number;
665
+ };
666
+ readonly minItems: 2;
667
+ readonly maxItems: 2;
668
+ readonly default: readonly [0, 0];
669
+ };
670
+ };
671
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
672
+ };
673
+ readonly baseColorFactor: {
674
+ readonly type: "array";
675
+ readonly items: {
676
+ readonly type: "number";
677
+ readonly precision: 1;
678
+ readonly default: number;
679
+ };
680
+ readonly minItems: 4;
681
+ readonly maxItems: 4;
682
+ readonly default: readonly [0, 0, 0, 0];
683
+ };
684
+ readonly emissiveFactor: {
685
+ readonly type: "array";
686
+ readonly items: {
687
+ readonly type: "number";
688
+ readonly precision: 1;
689
+ readonly default: number;
690
+ };
691
+ readonly minItems: 3;
692
+ readonly maxItems: 3;
693
+ readonly default: readonly [0, 0, 0];
694
+ };
695
+ readonly metallicFactor: {
696
+ readonly type: "number";
697
+ readonly precision: 1;
698
+ readonly default: number;
699
+ };
700
+ readonly roughnessFactor: {
701
+ readonly type: "number";
702
+ readonly precision: 1;
703
+ readonly default: number;
704
+ };
705
+ readonly normalScale: {
706
+ readonly type: "number";
707
+ readonly precision: 1;
708
+ readonly default: number;
709
+ };
710
+ readonly occlusionStrength: {
711
+ readonly type: "number";
712
+ readonly precision: 1;
713
+ readonly default: number;
714
+ };
715
+ readonly irReflectance: {
716
+ readonly type: "number";
717
+ readonly precision: 1;
718
+ readonly default: number;
719
+ };
720
+ readonly irEmission: {
721
+ readonly type: "number";
722
+ readonly precision: 1;
723
+ readonly default: number;
724
+ };
725
+ readonly emissionMode: {
726
+ readonly type: "integer";
727
+ readonly minimum: 0;
728
+ readonly maximum: 4294967295;
729
+ readonly default: number;
730
+ };
731
+ readonly baseColorUrl: {
732
+ readonly type: "string";
733
+ };
734
+ readonly metallicRoughnessUrl: {
735
+ readonly type: "string";
736
+ };
737
+ readonly normalUrl: {
738
+ readonly type: "string";
739
+ };
740
+ readonly occlusionUrl: {
741
+ readonly type: "string";
742
+ };
743
+ readonly emissiveUrl: {
744
+ readonly type: "string";
745
+ };
746
+ }>, import("@adobe/data/schema").FromSchemas<{}>, {
747
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
748
+ }, {
749
+ readonly materialByName: {
750
+ readonly key: "name";
751
+ readonly unique: true;
752
+ readonly archetype: "Material";
753
+ };
754
+ }>, defs: Readonly<Record<string, import("../../../material/material-definition.js").MaterialDefinition>>) => void;
755
+ readonly seedStandardMaterials: (t: import("@adobe/data/ecs").TransactionContext<import("@adobe/data/schema").FromSchemas<{
756
+ readonly material: {
757
+ readonly type: "integer";
758
+ readonly minimum: -2147483648;
759
+ readonly maximum: 2147483647;
760
+ readonly default: number;
761
+ };
762
+ readonly name: {
763
+ readonly type: "string";
764
+ };
765
+ readonly density: {
766
+ readonly type: "number";
767
+ readonly precision: 1;
768
+ readonly default: number;
769
+ };
770
+ readonly restitution: {
771
+ readonly type: "number";
772
+ readonly precision: 1;
773
+ readonly default: number;
774
+ };
775
+ readonly friction: {
776
+ readonly type: "number";
777
+ readonly precision: 1;
778
+ readonly default: number;
779
+ };
780
+ readonly compliance: {
781
+ readonly type: "number";
782
+ readonly precision: 1;
783
+ readonly default: number;
784
+ };
785
+ readonly heatCapacity: {
786
+ readonly type: "number";
787
+ readonly precision: 1;
788
+ readonly default: number;
789
+ };
790
+ readonly viscosity: {
791
+ readonly type: "number";
792
+ readonly precision: 1;
793
+ readonly default: number;
794
+ };
795
+ readonly thermalConductivity: {
796
+ readonly type: "number";
797
+ readonly precision: 1;
798
+ readonly default: number;
799
+ };
800
+ readonly stressStrainCurve: {
801
+ readonly type: "object";
802
+ readonly layout: "packed";
803
+ readonly properties: {
804
+ readonly tensileYieldStrainStress: {
805
+ readonly type: "array";
806
+ readonly items: {
807
+ readonly type: "number";
808
+ readonly precision: 1;
809
+ readonly default: number;
810
+ };
811
+ readonly minItems: 2;
812
+ readonly maxItems: 2;
813
+ readonly default: readonly [0, 0];
814
+ };
815
+ readonly tensileFractureStrainStress: {
816
+ readonly type: "array";
817
+ readonly items: {
818
+ readonly type: "number";
819
+ readonly precision: 1;
820
+ readonly default: number;
821
+ };
822
+ readonly minItems: 2;
823
+ readonly maxItems: 2;
824
+ readonly default: readonly [0, 0];
825
+ };
826
+ readonly compressiveYieldStrainStress: {
827
+ readonly type: "array";
828
+ readonly items: {
829
+ readonly type: "number";
830
+ readonly precision: 1;
831
+ readonly default: number;
832
+ };
833
+ readonly minItems: 2;
834
+ readonly maxItems: 2;
835
+ readonly default: readonly [0, 0];
836
+ };
837
+ readonly compressiveFractureStrainStress: {
838
+ readonly type: "array";
839
+ readonly items: {
840
+ readonly type: "number";
841
+ readonly precision: 1;
842
+ readonly default: number;
843
+ };
844
+ readonly minItems: 2;
845
+ readonly maxItems: 2;
846
+ readonly default: readonly [0, 0];
847
+ };
848
+ };
849
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
850
+ };
851
+ readonly baseColorFactor: {
852
+ readonly type: "array";
853
+ readonly items: {
854
+ readonly type: "number";
855
+ readonly precision: 1;
856
+ readonly default: number;
857
+ };
858
+ readonly minItems: 4;
859
+ readonly maxItems: 4;
860
+ readonly default: readonly [0, 0, 0, 0];
861
+ };
862
+ readonly emissiveFactor: {
863
+ readonly type: "array";
864
+ readonly items: {
865
+ readonly type: "number";
866
+ readonly precision: 1;
867
+ readonly default: number;
868
+ };
869
+ readonly minItems: 3;
870
+ readonly maxItems: 3;
871
+ readonly default: readonly [0, 0, 0];
872
+ };
873
+ readonly metallicFactor: {
874
+ readonly type: "number";
875
+ readonly precision: 1;
876
+ readonly default: number;
877
+ };
878
+ readonly roughnessFactor: {
879
+ readonly type: "number";
880
+ readonly precision: 1;
881
+ readonly default: number;
882
+ };
883
+ readonly normalScale: {
884
+ readonly type: "number";
885
+ readonly precision: 1;
886
+ readonly default: number;
887
+ };
888
+ readonly occlusionStrength: {
889
+ readonly type: "number";
890
+ readonly precision: 1;
891
+ readonly default: number;
892
+ };
893
+ readonly irReflectance: {
894
+ readonly type: "number";
895
+ readonly precision: 1;
896
+ readonly default: number;
897
+ };
898
+ readonly irEmission: {
899
+ readonly type: "number";
900
+ readonly precision: 1;
901
+ readonly default: number;
902
+ };
903
+ readonly emissionMode: {
904
+ readonly type: "integer";
905
+ readonly minimum: 0;
906
+ readonly maximum: 4294967295;
907
+ readonly default: number;
908
+ };
909
+ readonly baseColorUrl: {
910
+ readonly type: "string";
911
+ };
912
+ readonly metallicRoughnessUrl: {
913
+ readonly type: "string";
914
+ };
915
+ readonly normalUrl: {
916
+ readonly type: "string";
917
+ };
918
+ readonly occlusionUrl: {
919
+ readonly type: "string";
920
+ };
921
+ readonly emissiveUrl: {
922
+ readonly type: "string";
923
+ };
924
+ }>, import("@adobe/data/schema").FromSchemas<{}>, {
925
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
926
+ }, {
927
+ readonly materialByName: {
928
+ readonly key: "name";
929
+ readonly unique: true;
930
+ readonly archetype: "Material";
931
+ };
932
+ }>) => void;
933
+ readonly seedDefinitionMaterials: (t: import("@adobe/data/ecs").TransactionContext<import("@adobe/data/schema").FromSchemas<{
934
+ readonly material: {
935
+ readonly type: "integer";
936
+ readonly minimum: -2147483648;
937
+ readonly maximum: 2147483647;
938
+ readonly default: number;
939
+ };
940
+ readonly name: {
941
+ readonly type: "string";
942
+ };
943
+ readonly density: {
944
+ readonly type: "number";
945
+ readonly precision: 1;
946
+ readonly default: number;
947
+ };
948
+ readonly restitution: {
949
+ readonly type: "number";
950
+ readonly precision: 1;
951
+ readonly default: number;
952
+ };
953
+ readonly friction: {
954
+ readonly type: "number";
955
+ readonly precision: 1;
956
+ readonly default: number;
957
+ };
958
+ readonly compliance: {
959
+ readonly type: "number";
960
+ readonly precision: 1;
961
+ readonly default: number;
962
+ };
963
+ readonly heatCapacity: {
964
+ readonly type: "number";
965
+ readonly precision: 1;
966
+ readonly default: number;
967
+ };
968
+ readonly viscosity: {
969
+ readonly type: "number";
970
+ readonly precision: 1;
971
+ readonly default: number;
972
+ };
973
+ readonly thermalConductivity: {
974
+ readonly type: "number";
975
+ readonly precision: 1;
976
+ readonly default: number;
977
+ };
978
+ readonly stressStrainCurve: {
979
+ readonly type: "object";
980
+ readonly layout: "packed";
981
+ readonly properties: {
982
+ readonly tensileYieldStrainStress: {
983
+ readonly type: "array";
984
+ readonly items: {
985
+ readonly type: "number";
986
+ readonly precision: 1;
987
+ readonly default: number;
988
+ };
989
+ readonly minItems: 2;
990
+ readonly maxItems: 2;
991
+ readonly default: readonly [0, 0];
992
+ };
993
+ readonly tensileFractureStrainStress: {
994
+ readonly type: "array";
995
+ readonly items: {
996
+ readonly type: "number";
997
+ readonly precision: 1;
998
+ readonly default: number;
999
+ };
1000
+ readonly minItems: 2;
1001
+ readonly maxItems: 2;
1002
+ readonly default: readonly [0, 0];
1003
+ };
1004
+ readonly compressiveYieldStrainStress: {
1005
+ readonly type: "array";
1006
+ readonly items: {
1007
+ readonly type: "number";
1008
+ readonly precision: 1;
1009
+ readonly default: number;
1010
+ };
1011
+ readonly minItems: 2;
1012
+ readonly maxItems: 2;
1013
+ readonly default: readonly [0, 0];
1014
+ };
1015
+ readonly compressiveFractureStrainStress: {
1016
+ readonly type: "array";
1017
+ readonly items: {
1018
+ readonly type: "number";
1019
+ readonly precision: 1;
1020
+ readonly default: number;
1021
+ };
1022
+ readonly minItems: 2;
1023
+ readonly maxItems: 2;
1024
+ readonly default: readonly [0, 0];
1025
+ };
1026
+ };
1027
+ readonly required: readonly ["tensileYieldStrainStress", "tensileFractureStrainStress", "compressiveYieldStrainStress", "compressiveFractureStrainStress"];
1028
+ };
1029
+ readonly baseColorFactor: {
1030
+ readonly type: "array";
1031
+ readonly items: {
1032
+ readonly type: "number";
1033
+ readonly precision: 1;
1034
+ readonly default: number;
1035
+ };
1036
+ readonly minItems: 4;
1037
+ readonly maxItems: 4;
1038
+ readonly default: readonly [0, 0, 0, 0];
1039
+ };
1040
+ readonly emissiveFactor: {
1041
+ readonly type: "array";
1042
+ readonly items: {
1043
+ readonly type: "number";
1044
+ readonly precision: 1;
1045
+ readonly default: number;
1046
+ };
1047
+ readonly minItems: 3;
1048
+ readonly maxItems: 3;
1049
+ readonly default: readonly [0, 0, 0];
1050
+ };
1051
+ readonly metallicFactor: {
1052
+ readonly type: "number";
1053
+ readonly precision: 1;
1054
+ readonly default: number;
1055
+ };
1056
+ readonly roughnessFactor: {
1057
+ readonly type: "number";
1058
+ readonly precision: 1;
1059
+ readonly default: number;
1060
+ };
1061
+ readonly normalScale: {
1062
+ readonly type: "number";
1063
+ readonly precision: 1;
1064
+ readonly default: number;
1065
+ };
1066
+ readonly occlusionStrength: {
1067
+ readonly type: "number";
1068
+ readonly precision: 1;
1069
+ readonly default: number;
1070
+ };
1071
+ readonly irReflectance: {
1072
+ readonly type: "number";
1073
+ readonly precision: 1;
1074
+ readonly default: number;
1075
+ };
1076
+ readonly irEmission: {
1077
+ readonly type: "number";
1078
+ readonly precision: 1;
1079
+ readonly default: number;
1080
+ };
1081
+ readonly emissionMode: {
1082
+ readonly type: "integer";
1083
+ readonly minimum: 0;
1084
+ readonly maximum: 4294967295;
1085
+ readonly default: number;
1086
+ };
1087
+ readonly baseColorUrl: {
1088
+ readonly type: "string";
1089
+ };
1090
+ readonly metallicRoughnessUrl: {
1091
+ readonly type: "string";
1092
+ };
1093
+ readonly normalUrl: {
1094
+ readonly type: "string";
1095
+ };
1096
+ readonly occlusionUrl: {
1097
+ readonly type: "string";
1098
+ };
1099
+ readonly emissiveUrl: {
1100
+ readonly type: "string";
1101
+ };
1102
+ }>, import("@adobe/data/schema").FromSchemas<{}>, {
1103
+ readonly Material: readonly ["name", "density", "restitution", "friction", "compliance", "heatCapacity", "viscosity", "thermalConductivity", "stressStrainCurve", "baseColorFactor", "emissiveFactor", "metallicFactor", "roughnessFactor", "normalScale", "occlusionStrength", "irReflectance", "irEmission", "emissionMode", "baseColorUrl", "metallicRoughnessUrl", "normalUrl", "occlusionUrl", "emissiveUrl"];
1104
+ }, {
1105
+ readonly materialByName: {
1106
+ readonly key: "name";
1107
+ readonly unique: true;
1108
+ readonly archetype: "Material";
1109
+ };
1110
+ }>) => void;
1111
+ } & {} & {} & {};
1112
+ readonly systems: import("@adobe/data/ecs").SystemDeclarations<"update" | "_frameTime" | "schedulerSystem" | "input" | "preUpdate" | "postUpdate" | "physics" | "preRender" | "render" | "postRender" | "materialPaletteGpuBuilder">;
1113
+ readonly actions: {};
1114
+ readonly services: {};
1115
+ readonly computed: {};
1116
+ readonly indexes: {
1117
+ readonly materialByName: {
1118
+ readonly key: "name";
1119
+ readonly unique: true;
1120
+ readonly archetype: "Material";
1121
+ };
1122
+ } & {} & {};
1123
+ };