@vgai/engine 0.5.0 → 0.5.1

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 (538) hide show
  1. package/package.json +1 -1
  2. package/schemas/engine-capabilities.json +4 -4
  3. package/schemas/vgai-game.schema.json +2 -2
  4. package/src/adapter/authoring.ts +42 -0
  5. package/src/adapter/index.ts +3 -0
  6. package/src/adapter/ingest/overlay-apply.ts +50 -6
  7. package/src/adapter/ingest/scene-capture.ts +51 -2
  8. package/src/adapter/vgai-scene-game-adapter.ts +24 -0
  9. package/src/manifest/schema.ts +7 -3
  10. package/src/runtime/create-runtime.ts +97 -0
  11. package/src/runtime/game.ts +11 -1
  12. package/src/scene/asset-ref-check.ts +1 -1
  13. package/src/scene/scene-loader.ts +2 -2
  14. package/src/scene/user-data.ts +18 -0
  15. package/src/world3d-react/behavior.tsx +19 -11
  16. package/src/world3d-react/r3f-adapter.tsx +8 -0
  17. package/dist/adapter/adapter-surface.d.ts +0 -30
  18. package/dist/adapter/adapter-surface.d.ts.map +0 -1
  19. package/dist/adapter/adapter-surface.js +0 -18
  20. package/dist/adapter/authoring.d.ts +0 -461
  21. package/dist/adapter/authoring.d.ts.map +0 -1
  22. package/dist/adapter/authoring.js +0 -22
  23. package/dist/adapter/colyseus-networking-adapter.d.ts +0 -43
  24. package/dist/adapter/colyseus-networking-adapter.d.ts.map +0 -1
  25. package/dist/adapter/colyseus-networking-adapter.js +0 -38
  26. package/dist/adapter/first-party-systems.d.ts +0 -38
  27. package/dist/adapter/first-party-systems.d.ts.map +0 -1
  28. package/dist/adapter/first-party-systems.js +0 -77
  29. package/dist/adapter/game-adapter.d.ts +0 -133
  30. package/dist/adapter/game-adapter.d.ts.map +0 -1
  31. package/dist/adapter/game-adapter.js +0 -10
  32. package/dist/adapter/host-context.d.ts +0 -71
  33. package/dist/adapter/host-context.d.ts.map +0 -1
  34. package/dist/adapter/host-context.js +0 -16
  35. package/dist/adapter/index.d.ts +0 -22
  36. package/dist/adapter/index.d.ts.map +0 -1
  37. package/dist/adapter/index.js +0 -15
  38. package/dist/adapter/ingest/game-contract.d.ts +0 -53
  39. package/dist/adapter/ingest/game-contract.d.ts.map +0 -1
  40. package/dist/adapter/ingest/game-contract.js +0 -30
  41. package/dist/adapter/ingest/overlay-applier.d.ts +0 -118
  42. package/dist/adapter/ingest/overlay-applier.d.ts.map +0 -1
  43. package/dist/adapter/ingest/overlay-applier.js +0 -132
  44. package/dist/adapter/ingest/overlay-apply.d.ts +0 -60
  45. package/dist/adapter/ingest/overlay-apply.d.ts.map +0 -1
  46. package/dist/adapter/ingest/overlay-apply.js +0 -101
  47. package/dist/adapter/ingest/overlay-file.d.ts +0 -79
  48. package/dist/adapter/ingest/overlay-file.d.ts.map +0 -1
  49. package/dist/adapter/ingest/overlay-file.js +0 -66
  50. package/dist/adapter/ingest/overlay-report.d.ts +0 -113
  51. package/dist/adapter/ingest/overlay-report.d.ts.map +0 -1
  52. package/dist/adapter/ingest/overlay-report.js +0 -103
  53. package/dist/adapter/ingest/scene-capture.d.ts +0 -97
  54. package/dist/adapter/ingest/scene-capture.d.ts.map +0 -1
  55. package/dist/adapter/ingest/scene-capture.js +0 -248
  56. package/dist/adapter/ingest/upstream-pin.d.ts +0 -47
  57. package/dist/adapter/ingest/upstream-pin.d.ts.map +0 -1
  58. package/dist/adapter/ingest/upstream-pin.js +0 -50
  59. package/dist/adapter/loop-gate-report.d.ts +0 -34
  60. package/dist/adapter/loop-gate-report.d.ts.map +0 -1
  61. package/dist/adapter/loop-gate-report.js +0 -37
  62. package/dist/adapter/rapier-physics-adapter.d.ts +0 -12
  63. package/dist/adapter/rapier-physics-adapter.d.ts.map +0 -1
  64. package/dist/adapter/rapier-physics-adapter.js +0 -46
  65. package/dist/adapter/system-adapter.d.ts +0 -206
  66. package/dist/adapter/system-adapter.d.ts.map +0 -1
  67. package/dist/adapter/system-adapter.js +0 -13
  68. package/dist/adapter/transform.d.ts +0 -18
  69. package/dist/adapter/transform.d.ts.map +0 -1
  70. package/dist/adapter/transform.js +0 -1
  71. package/dist/adapter/vgai-scene-game-adapter.d.ts +0 -108
  72. package/dist/adapter/vgai-scene-game-adapter.d.ts.map +0 -1
  73. package/dist/adapter/vgai-scene-game-adapter.js +0 -762
  74. package/dist/ai/navigation.d.ts +0 -64
  75. package/dist/ai/navigation.d.ts.map +0 -1
  76. package/dist/ai/navigation.js +0 -133
  77. package/dist/animation/anim-graph-types.d.ts +0 -25
  78. package/dist/animation/anim-graph-types.d.ts.map +0 -1
  79. package/dist/animation/anim-graph-types.js +0 -1
  80. package/dist/animation/animation-clock.d.ts +0 -213
  81. package/dist/animation/animation-clock.d.ts.map +0 -1
  82. package/dist/animation/animation-clock.js +0 -301
  83. package/dist/animation/blend-node.d.ts +0 -22
  84. package/dist/animation/blend-node.d.ts.map +0 -1
  85. package/dist/animation/blend-node.js +0 -97
  86. package/dist/animation/camera-ownership.d.ts +0 -250
  87. package/dist/animation/camera-ownership.d.ts.map +0 -1
  88. package/dist/animation/camera-ownership.js +0 -169
  89. package/dist/animation/cinematic-cues.d.ts +0 -200
  90. package/dist/animation/cinematic-cues.d.ts.map +0 -1
  91. package/dist/animation/cinematic-cues.js +0 -213
  92. package/dist/animation/clip-map.d.ts +0 -12
  93. package/dist/animation/clip-map.d.ts.map +0 -1
  94. package/dist/animation/clip-map.js +0 -37
  95. package/dist/animation/gsap-registration.d.ts +0 -119
  96. package/dist/animation/gsap-registration.d.ts.map +0 -1
  97. package/dist/animation/gsap-registration.js +0 -92
  98. package/dist/animation/theatre-clock-binding.d.ts +0 -89
  99. package/dist/animation/theatre-clock-binding.d.ts.map +0 -1
  100. package/dist/animation/theatre-clock-binding.js +0 -29
  101. package/dist/animation/theatre-director.d.ts +0 -242
  102. package/dist/animation/theatre-director.d.ts.map +0 -1
  103. package/dist/animation/theatre-director.js +0 -235
  104. package/dist/animation/theatre-object-binding.d.ts +0 -305
  105. package/dist/animation/theatre-object-binding.d.ts.map +0 -1
  106. package/dist/animation/theatre-object-binding.js +0 -351
  107. package/dist/animation/xstate-animation-binding.d.ts +0 -56
  108. package/dist/animation/xstate-animation-binding.d.ts.map +0 -1
  109. package/dist/animation/xstate-animation-binding.js +0 -331
  110. package/dist/animation/xstate-animation-meta.d.ts +0 -266
  111. package/dist/animation/xstate-animation-meta.d.ts.map +0 -1
  112. package/dist/animation/xstate-animation-meta.js +0 -252
  113. package/dist/assets.d.ts +0 -26
  114. package/dist/assets.d.ts.map +0 -1
  115. package/dist/assets.js +0 -55
  116. package/dist/audio/index.d.ts +0 -4
  117. package/dist/audio/index.d.ts.map +0 -1
  118. package/dist/audio/index.js +0 -24
  119. package/dist/audio/tone-clock-binding.d.ts +0 -75
  120. package/dist/audio/tone-clock-binding.d.ts.map +0 -1
  121. package/dist/audio/tone-clock-binding.js +0 -29
  122. package/dist/audio/tone-context.d.ts +0 -114
  123. package/dist/audio/tone-context.d.ts.map +0 -1
  124. package/dist/audio/tone-context.js +0 -39
  125. package/dist/audio/tone-offline-render.d.ts +0 -90
  126. package/dist/audio/tone-offline-render.d.ts.map +0 -1
  127. package/dist/audio/tone-offline-render.js +0 -56
  128. package/dist/audio/wav-encode.d.ts +0 -38
  129. package/dist/audio/wav-encode.d.ts.map +0 -1
  130. package/dist/audio/wav-encode.js +0 -97
  131. package/dist/character/cloth-sim.d.ts +0 -179
  132. package/dist/character/cloth-sim.d.ts.map +0 -1
  133. package/dist/character/cloth-sim.js +0 -334
  134. package/dist/character/spring-chain.d.ts +0 -135
  135. package/dist/character/spring-chain.d.ts.map +0 -1
  136. package/dist/character/spring-chain.js +0 -165
  137. package/dist/core/game-loop.d.ts +0 -42
  138. package/dist/core/game-loop.d.ts.map +0 -1
  139. package/dist/core/game-loop.js +0 -167
  140. package/dist/core/seeded-random.d.ts +0 -69
  141. package/dist/core/seeded-random.d.ts.map +0 -1
  142. package/dist/core/seeded-random.js +0 -121
  143. package/dist/core/system-runner.d.ts +0 -120
  144. package/dist/core/system-runner.d.ts.map +0 -1
  145. package/dist/core/system-runner.js +0 -297
  146. package/dist/core/types.d.ts +0 -92
  147. package/dist/core/types.d.ts.map +0 -1
  148. package/dist/core/types.js +0 -25
  149. package/dist/data/data-asset.d.ts +0 -101
  150. package/dist/data/data-asset.d.ts.map +0 -1
  151. package/dist/data/data-asset.js +0 -122
  152. package/dist/data/data-check-core.d.ts +0 -110
  153. package/dist/data/data-check-core.d.ts.map +0 -1
  154. package/dist/data/data-check-core.js +0 -178
  155. package/dist/data/data-ref.d.ts +0 -79
  156. package/dist/data/data-ref.d.ts.map +0 -1
  157. package/dist/data/data-ref.js +0 -130
  158. package/dist/data/vite-plugin-data.d.ts +0 -79
  159. package/dist/data/vite-plugin-data.d.ts.map +0 -1
  160. package/dist/data/vite-plugin-data.js +0 -217
  161. package/dist/dev/console-bridge.d.ts +0 -22
  162. package/dist/dev/console-bridge.d.ts.map +0 -1
  163. package/dist/dev/console-bridge.js +0 -71
  164. package/dist/dev/debug-draw.d.ts +0 -24
  165. package/dist/dev/debug-draw.d.ts.map +0 -1
  166. package/dist/dev/debug-draw.js +0 -73
  167. package/dist/dev/logger.d.ts +0 -30
  168. package/dist/dev/logger.d.ts.map +0 -1
  169. package/dist/dev/logger.js +0 -90
  170. package/dist/dev/performance-profiler.d.ts +0 -60
  171. package/dist/dev/performance-profiler.d.ts.map +0 -1
  172. package/dist/dev/performance-profiler.js +0 -181
  173. package/dist/dev/webgl-gpu-timer.d.ts +0 -8
  174. package/dist/dev/webgl-gpu-timer.d.ts.map +0 -1
  175. package/dist/dev/webgl-gpu-timer.js +0 -52
  176. package/dist/ecs/component-manager.d.ts +0 -205
  177. package/dist/ecs/component-manager.d.ts.map +0 -1
  178. package/dist/ecs/component-manager.js +0 -706
  179. package/dist/ecs/game-component.d.ts +0 -146
  180. package/dist/ecs/game-component.d.ts.map +0 -1
  181. package/dist/ecs/game-component.js +0 -141
  182. package/dist/ecs/hmr-swap-report.d.ts +0 -53
  183. package/dist/ecs/hmr-swap-report.d.ts.map +0 -1
  184. package/dist/ecs/hmr-swap-report.js +0 -55
  185. package/dist/humanoid/bake.operation.d.ts +0 -119
  186. package/dist/humanoid/bake.operation.d.ts.map +0 -1
  187. package/dist/humanoid/bake.operation.js +0 -228
  188. package/dist/humanoid/body.d.ts +0 -101
  189. package/dist/humanoid/body.d.ts.map +0 -1
  190. package/dist/humanoid/body.js +0 -530
  191. package/dist/humanoid/clips.d.ts +0 -62
  192. package/dist/humanoid/clips.d.ts.map +0 -1
  193. package/dist/humanoid/clips.js +0 -121
  194. package/dist/humanoid/compose.d.ts +0 -75
  195. package/dist/humanoid/compose.d.ts.map +0 -1
  196. package/dist/humanoid/compose.js +0 -176
  197. package/dist/humanoid/generate.d.ts +0 -92
  198. package/dist/humanoid/generate.d.ts.map +0 -1
  199. package/dist/humanoid/generate.js +0 -124
  200. package/dist/humanoid/index.d.ts +0 -24
  201. package/dist/humanoid/index.d.ts.map +0 -1
  202. package/dist/humanoid/index.js +0 -18
  203. package/dist/humanoid/schema.d.ts +0 -35
  204. package/dist/humanoid/schema.d.ts.map +0 -1
  205. package/dist/humanoid/schema.js +0 -87
  206. package/dist/humanoid/skeleton.d.ts +0 -103
  207. package/dist/humanoid/skeleton.d.ts.map +0 -1
  208. package/dist/humanoid/skeleton.js +0 -289
  209. package/dist/index.d.ts +0 -37
  210. package/dist/index.d.ts.map +0 -1
  211. package/dist/index.js +0 -30
  212. package/dist/input/input-manager.d.ts +0 -945
  213. package/dist/input/input-manager.d.ts.map +0 -1
  214. package/dist/input/input-manager.js +0 -2207
  215. package/dist/input/input-types.d.ts +0 -174
  216. package/dist/input/input-types.d.ts.map +0 -1
  217. package/dist/input/input-types.js +0 -1
  218. package/dist/input/prompt-labels.d.ts +0 -21
  219. package/dist/input/prompt-labels.d.ts.map +0 -1
  220. package/dist/input/prompt-labels.js +0 -121
  221. package/dist/input/rebind-controller.d.ts +0 -59
  222. package/dist/input/rebind-controller.d.ts.map +0 -1
  223. package/dist/input/rebind-controller.js +0 -85
  224. package/dist/input/schema.d.ts +0 -16
  225. package/dist/input/schema.d.ts.map +0 -1
  226. package/dist/input/schema.js +0 -228
  227. package/dist/loader.d.ts +0 -43
  228. package/dist/loader.d.ts.map +0 -1
  229. package/dist/loader.js +0 -59
  230. package/dist/manifest/index.d.ts +0 -5
  231. package/dist/manifest/index.d.ts.map +0 -1
  232. package/dist/manifest/index.js +0 -8
  233. package/dist/manifest/load-file.d.ts +0 -4
  234. package/dist/manifest/load-file.d.ts.map +0 -1
  235. package/dist/manifest/load-file.js +0 -14
  236. package/dist/manifest/load.d.ts +0 -144
  237. package/dist/manifest/load.d.ts.map +0 -1
  238. package/dist/manifest/load.js +0 -273
  239. package/dist/manifest/schema.d.ts +0 -230
  240. package/dist/manifest/schema.d.ts.map +0 -1
  241. package/dist/manifest/schema.js +0 -394
  242. package/dist/physics/collision-system.d.ts +0 -41
  243. package/dist/physics/collision-system.d.ts.map +0 -1
  244. package/dist/physics/collision-system.js +0 -64
  245. package/dist/physics/physics-registry.d.ts +0 -45
  246. package/dist/physics/physics-registry.d.ts.map +0 -1
  247. package/dist/physics/physics-registry.js +0 -65
  248. package/dist/physics/transform-writer.d.ts +0 -16
  249. package/dist/physics/transform-writer.d.ts.map +0 -1
  250. package/dist/physics/transform-writer.js +0 -38
  251. package/dist/physics/trigger-dispatch.d.ts +0 -24
  252. package/dist/physics/trigger-dispatch.d.ts.map +0 -1
  253. package/dist/physics/trigger-dispatch.js +0 -80
  254. package/dist/react/game-state.d.ts +0 -156
  255. package/dist/react/game-state.d.ts.map +0 -1
  256. package/dist/react/game-state.js +0 -222
  257. package/dist/react/root-adapter.d.ts +0 -11
  258. package/dist/react/root-adapter.d.ts.map +0 -1
  259. package/dist/react/root-adapter.js +0 -41
  260. package/dist/react/unmanaged-root-detector.d.ts +0 -12
  261. package/dist/react/unmanaged-root-detector.d.ts.map +0 -1
  262. package/dist/react/unmanaged-root-detector.js +0 -45
  263. package/dist/react/use-data.d.ts +0 -60
  264. package/dist/react/use-data.d.ts.map +0 -1
  265. package/dist/react/use-data.js +0 -101
  266. package/dist/react/use-selection.d.ts +0 -75
  267. package/dist/react/use-selection.d.ts.map +0 -1
  268. package/dist/react/use-selection.js +0 -90
  269. package/dist/render/auto-batcher.d.ts +0 -34
  270. package/dist/render/auto-batcher.d.ts.map +0 -1
  271. package/dist/render/auto-batcher.js +0 -140
  272. package/dist/render/render-batch-system.d.ts +0 -33
  273. package/dist/render/render-batch-system.d.ts.map +0 -1
  274. package/dist/render/render-batch-system.js +0 -230
  275. package/dist/render/render-features.d.ts +0 -47
  276. package/dist/render/render-features.d.ts.map +0 -1
  277. package/dist/render/render-features.js +0 -105
  278. package/dist/render/render-settings.d.ts +0 -36
  279. package/dist/render/render-settings.d.ts.map +0 -1
  280. package/dist/render/render-settings.js +0 -51
  281. package/dist/runtime/create-runtime.d.ts +0 -249
  282. package/dist/runtime/create-runtime.d.ts.map +0 -1
  283. package/dist/runtime/create-runtime.js +0 -641
  284. package/dist/runtime/debug-bridge.d.ts +0 -257
  285. package/dist/runtime/debug-bridge.d.ts.map +0 -1
  286. package/dist/runtime/debug-bridge.js +0 -224
  287. package/dist/runtime/debug-registry.d.ts +0 -288
  288. package/dist/runtime/debug-registry.d.ts.map +0 -1
  289. package/dist/runtime/debug-registry.js +0 -513
  290. package/dist/runtime/frame-selector-cache.d.ts +0 -41
  291. package/dist/runtime/frame-selector-cache.d.ts.map +0 -1
  292. package/dist/runtime/frame-selector-cache.js +0 -65
  293. package/dist/runtime/game.d.ts +0 -496
  294. package/dist/runtime/game.d.ts.map +0 -1
  295. package/dist/runtime/game.js +0 -741
  296. package/dist/runtime/gameplay-rng-trap.d.ts +0 -48
  297. package/dist/runtime/gameplay-rng-trap.d.ts.map +0 -1
  298. package/dist/runtime/gameplay-rng-trap.js +0 -96
  299. package/dist/runtime/input-router.d.ts +0 -78
  300. package/dist/runtime/input-router.d.ts.map +0 -1
  301. package/dist/runtime/input-router.js +0 -171
  302. package/dist/runtime/mount-game.d.ts +0 -129
  303. package/dist/runtime/mount-game.d.ts.map +0 -1
  304. package/dist/runtime/mount-game.js +0 -152
  305. package/dist/runtime/mount-manifest.d.ts +0 -173
  306. package/dist/runtime/mount-manifest.d.ts.map +0 -1
  307. package/dist/runtime/mount-manifest.js +0 -297
  308. package/dist/runtime/render-audio-control.d.ts +0 -110
  309. package/dist/runtime/render-audio-control.d.ts.map +0 -1
  310. package/dist/runtime/render-audio-control.js +0 -111
  311. package/dist/runtime/render-control.d.ts +0 -291
  312. package/dist/runtime/render-control.d.ts.map +0 -1
  313. package/dist/runtime/render-control.js +0 -264
  314. package/dist/runtime/render-seed.d.ts +0 -57
  315. package/dist/runtime/render-seed.d.ts.map +0 -1
  316. package/dist/runtime/render-seed.js +0 -74
  317. package/dist/runtime/state-bridge.d.ts +0 -61
  318. package/dist/runtime/state-bridge.d.ts.map +0 -1
  319. package/dist/runtime/state-bridge.js +0 -63
  320. package/dist/runtime/types.d.ts +0 -253
  321. package/dist/runtime/types.d.ts.map +0 -1
  322. package/dist/runtime/types.js +0 -1
  323. package/dist/scene/asset-loaders.d.ts +0 -79
  324. package/dist/scene/asset-loaders.d.ts.map +0 -1
  325. package/dist/scene/asset-loaders.js +0 -141
  326. package/dist/scene/asset-paths.d.ts +0 -11
  327. package/dist/scene/asset-paths.d.ts.map +0 -1
  328. package/dist/scene/asset-paths.js +0 -108
  329. package/dist/scene/asset-ref-check.d.ts +0 -88
  330. package/dist/scene/asset-ref-check.d.ts.map +0 -1
  331. package/dist/scene/asset-ref-check.js +0 -214
  332. package/dist/scene/asset-registry.d.ts +0 -38
  333. package/dist/scene/asset-registry.d.ts.map +0 -1
  334. package/dist/scene/asset-registry.js +0 -66
  335. package/dist/scene/collider-dimensions.d.ts +0 -63
  336. package/dist/scene/collider-dimensions.d.ts.map +0 -1
  337. package/dist/scene/collider-dimensions.js +0 -98
  338. package/dist/scene/component-registry.d.ts +0 -22
  339. package/dist/scene/component-registry.d.ts.map +0 -1
  340. package/dist/scene/component-registry.js +0 -37
  341. package/dist/scene/defaults.d.ts +0 -252
  342. package/dist/scene/defaults.d.ts.map +0 -1
  343. package/dist/scene/defaults.js +0 -151
  344. package/dist/scene/geometries/index.d.ts +0 -8
  345. package/dist/scene/geometries/index.d.ts.map +0 -1
  346. package/dist/scene/geometries/index.js +0 -7
  347. package/dist/scene/geometries/terrain.d.ts +0 -2
  348. package/dist/scene/geometries/terrain.d.ts.map +0 -1
  349. package/dist/scene/geometries/terrain.js +0 -37
  350. package/dist/scene/geometry-registry.d.ts +0 -24
  351. package/dist/scene/geometry-registry.d.ts.map +0 -1
  352. package/dist/scene/geometry-registry.js +0 -20
  353. package/dist/scene/instance-registry.d.ts +0 -36
  354. package/dist/scene/instance-registry.d.ts.map +0 -1
  355. package/dist/scene/instance-registry.js +0 -55
  356. package/dist/scene/instancers/grid.d.ts +0 -2
  357. package/dist/scene/instancers/grid.d.ts.map +0 -1
  358. package/dist/scene/instancers/grid.js +0 -36
  359. package/dist/scene/instancers/index.d.ts +0 -8
  360. package/dist/scene/instancers/index.d.ts.map +0 -1
  361. package/dist/scene/instancers/index.js +0 -7
  362. package/dist/scene/light-camera-factory.d.ts +0 -23
  363. package/dist/scene/light-camera-factory.d.ts.map +0 -1
  364. package/dist/scene/light-camera-factory.js +0 -68
  365. package/dist/scene/material-factory.d.ts +0 -17
  366. package/dist/scene/material-factory.d.ts.map +0 -1
  367. package/dist/scene/material-factory.js +0 -197
  368. package/dist/scene/material-registry.d.ts +0 -40
  369. package/dist/scene/material-registry.d.ts.map +0 -1
  370. package/dist/scene/material-registry.js +0 -44
  371. package/dist/scene/materials/index.d.ts +0 -8
  372. package/dist/scene/materials/index.d.ts.map +0 -1
  373. package/dist/scene/materials/index.js +0 -7
  374. package/dist/scene/materials/water.d.ts +0 -2
  375. package/dist/scene/materials/water.d.ts.map +0 -1
  376. package/dist/scene/materials/water.js +0 -54
  377. package/dist/scene/parse.d.ts +0 -23
  378. package/dist/scene/parse.d.ts.map +0 -1
  379. package/dist/scene/parse.js +0 -179
  380. package/dist/scene/particles-factory.d.ts +0 -33
  381. package/dist/scene/particles-factory.d.ts.map +0 -1
  382. package/dist/scene/particles-factory.js +0 -282
  383. package/dist/scene/scene-apply.d.ts +0 -109
  384. package/dist/scene/scene-apply.d.ts.map +0 -1
  385. package/dist/scene/scene-apply.js +0 -370
  386. package/dist/scene/scene-diff-schema.d.ts +0 -285
  387. package/dist/scene/scene-diff-schema.d.ts.map +0 -1
  388. package/dist/scene/scene-diff-schema.js +0 -92
  389. package/dist/scene/scene-diff-types.d.ts +0 -40
  390. package/dist/scene/scene-diff-types.d.ts.map +0 -1
  391. package/dist/scene/scene-diff-types.js +0 -14
  392. package/dist/scene/scene-loader.d.ts +0 -167
  393. package/dist/scene/scene-loader.d.ts.map +0 -1
  394. package/dist/scene/scene-loader.js +0 -1211
  395. package/dist/scene/scene-query.d.ts +0 -11
  396. package/dist/scene/scene-query.d.ts.map +0 -1
  397. package/dist/scene/scene-query.js +0 -63
  398. package/dist/scene/scene-types.d.ts +0 -10
  399. package/dist/scene/scene-types.d.ts.map +0 -1
  400. package/dist/scene/scene-types.js +0 -8
  401. package/dist/scene/scene-version.d.ts +0 -26
  402. package/dist/scene/scene-version.d.ts.map +0 -1
  403. package/dist/scene/scene-version.js +0 -34
  404. package/dist/scene/schema/animation.d.ts +0 -8
  405. package/dist/scene/schema/animation.d.ts.map +0 -1
  406. package/dist/scene/schema/animation.js +0 -42
  407. package/dist/scene/schema/audio.d.ts +0 -13
  408. package/dist/scene/schema/audio.d.ts.map +0 -1
  409. package/dist/scene/schema/audio.js +0 -22
  410. package/dist/scene/schema/camera.d.ts +0 -28
  411. package/dist/scene/schema/camera.d.ts.map +0 -1
  412. package/dist/scene/schema/camera.js +0 -17
  413. package/dist/scene/schema/collider.d.ts +0 -40
  414. package/dist/scene/schema/collider.d.ts.map +0 -1
  415. package/dist/scene/schema/collider.js +0 -55
  416. package/dist/scene/schema/entity-ref.d.ts +0 -31
  417. package/dist/scene/schema/entity-ref.d.ts.map +0 -1
  418. package/dist/scene/schema/entity-ref.js +0 -61
  419. package/dist/scene/schema/entity.d.ts +0 -1036
  420. package/dist/scene/schema/entity.d.ts.map +0 -1
  421. package/dist/scene/schema/entity.js +0 -153
  422. package/dist/scene/schema/environment.d.ts +0 -425
  423. package/dist/scene/schema/environment.d.ts.map +0 -1
  424. package/dist/scene/schema/environment.js +0 -357
  425. package/dist/scene/schema/index.d.ts +0 -37
  426. package/dist/scene/schema/index.d.ts.map +0 -1
  427. package/dist/scene/schema/index.js +0 -19
  428. package/dist/scene/schema/instances.d.ts +0 -14
  429. package/dist/scene/schema/instances.d.ts.map +0 -1
  430. package/dist/scene/schema/instances.js +0 -28
  431. package/dist/scene/schema/joint.d.ts +0 -23
  432. package/dist/scene/schema/joint.d.ts.map +0 -1
  433. package/dist/scene/schema/joint.js +0 -23
  434. package/dist/scene/schema/light.d.ts +0 -38
  435. package/dist/scene/schema/light.d.ts.map +0 -1
  436. package/dist/scene/schema/light.js +0 -26
  437. package/dist/scene/schema/material.d.ts +0 -199
  438. package/dist/scene/schema/material.d.ts.map +0 -1
  439. package/dist/scene/schema/material.js +0 -103
  440. package/dist/scene/schema/mesh.d.ts +0 -48
  441. package/dist/scene/schema/mesh.d.ts.map +0 -1
  442. package/dist/scene/schema/mesh.js +0 -82
  443. package/dist/scene/schema/particles.d.ts +0 -2178
  444. package/dist/scene/schema/particles.d.ts.map +0 -1
  445. package/dist/scene/schema/particles.js +0 -321
  446. package/dist/scene/schema/physics.d.ts +0 -56
  447. package/dist/scene/schema/physics.d.ts.map +0 -1
  448. package/dist/scene/schema/physics.js +0 -37
  449. package/dist/scene/schema/scene-file.d.ts +0 -303
  450. package/dist/scene/schema/scene-file.d.ts.map +0 -1
  451. package/dist/scene/schema/scene-file.js +0 -256
  452. package/dist/scene/schema/shadow.d.ts +0 -28
  453. package/dist/scene/schema/shadow.d.ts.map +0 -1
  454. package/dist/scene/schema/shadow.js +0 -20
  455. package/dist/scene/schema/spline.d.ts +0 -25
  456. package/dist/scene/schema/spline.d.ts.map +0 -1
  457. package/dist/scene/schema/spline.js +0 -15
  458. package/dist/scene/schema/tuples.d.ts +0 -12
  459. package/dist/scene/schema/tuples.d.ts.map +0 -1
  460. package/dist/scene/schema/tuples.js +0 -14
  461. package/dist/scene/user-data.d.ts +0 -185
  462. package/dist/scene/user-data.d.ts.map +0 -1
  463. package/dist/scene/user-data.js +0 -144
  464. package/dist/setup/setup-audio.d.ts +0 -20
  465. package/dist/setup/setup-audio.d.ts.map +0 -1
  466. package/dist/setup/setup-audio.js +0 -41
  467. package/dist/setup/setup-particles.d.ts +0 -17
  468. package/dist/setup/setup-particles.d.ts.map +0 -1
  469. package/dist/setup/setup-particles.js +0 -16
  470. package/dist/setup/setup-physics.d.ts +0 -25
  471. package/dist/setup/setup-physics.d.ts.map +0 -1
  472. package/dist/setup/setup-physics.js +0 -51
  473. package/dist/setup/setup-renderer.d.ts +0 -69
  474. package/dist/setup/setup-renderer.d.ts.map +0 -1
  475. package/dist/setup/setup-renderer.js +0 -363
  476. package/dist/tools/define-tool.d.ts +0 -130
  477. package/dist/tools/define-tool.d.ts.map +0 -1
  478. package/dist/tools/define-tool.js +0 -96
  479. package/dist/world2d/authoring-2d.d.ts +0 -80
  480. package/dist/world2d/authoring-2d.d.ts.map +0 -1
  481. package/dist/world2d/authoring-2d.js +0 -195
  482. package/dist/world2d/capture-to-scene2d.d.ts +0 -5
  483. package/dist/world2d/capture-to-scene2d.d.ts.map +0 -1
  484. package/dist/world2d/capture-to-scene2d.js +0 -49
  485. package/dist/world2d/collision-2d.d.ts +0 -52
  486. package/dist/world2d/collision-2d.d.ts.map +0 -1
  487. package/dist/world2d/collision-2d.js +0 -70
  488. package/dist/world2d/components-2d.d.ts +0 -47
  489. package/dist/world2d/components-2d.d.ts.map +0 -1
  490. package/dist/world2d/components-2d.js +0 -77
  491. package/dist/world2d/index.d.ts +0 -34
  492. package/dist/world2d/index.d.ts.map +0 -1
  493. package/dist/world2d/index.js +0 -32
  494. package/dist/world2d/ingest-iframe-2d.d.ts +0 -82
  495. package/dist/world2d/ingest-iframe-2d.d.ts.map +0 -1
  496. package/dist/world2d/ingest-iframe-2d.js +0 -166
  497. package/dist/world2d/ingest2d.d.ts +0 -97
  498. package/dist/world2d/ingest2d.d.ts.map +0 -1
  499. package/dist/world2d/ingest2d.js +0 -40
  500. package/dist/world2d/physics2d-registry.d.ts +0 -24
  501. package/dist/world2d/physics2d-registry.d.ts.map +0 -1
  502. package/dist/world2d/physics2d-registry.js +0 -38
  503. package/dist/world2d/pixi-game-adapter.d.ts +0 -107
  504. package/dist/world2d/pixi-game-adapter.d.ts.map +0 -1
  505. package/dist/world2d/pixi-game-adapter.js +0 -210
  506. package/dist/world2d/pixi-surface.d.ts +0 -39
  507. package/dist/world2d/pixi-surface.d.ts.map +0 -1
  508. package/dist/world2d/pixi-surface.js +0 -47
  509. package/dist/world2d/scene-capture-2d.d.ts +0 -43
  510. package/dist/world2d/scene-capture-2d.d.ts.map +0 -1
  511. package/dist/world2d/scene-capture-2d.js +0 -92
  512. package/dist/world2d/scene2d-loader.d.ts +0 -27
  513. package/dist/world2d/scene2d-loader.d.ts.map +0 -1
  514. package/dist/world2d/scene2d-loader.js +0 -275
  515. package/dist/world2d/schema/entity2d.d.ts +0 -102
  516. package/dist/world2d/schema/entity2d.d.ts.map +0 -1
  517. package/dist/world2d/schema/entity2d.js +0 -119
  518. package/dist/world2d/schema/physics2d.d.ts +0 -46
  519. package/dist/world2d/schema/physics2d.d.ts.map +0 -1
  520. package/dist/world2d/schema/physics2d.js +0 -45
  521. package/dist/world2d/schema/sprite.d.ts +0 -42
  522. package/dist/world2d/schema/sprite.d.ts.map +0 -1
  523. package/dist/world2d/schema/sprite.js +0 -63
  524. package/dist/world2d/schema/tilemap.d.ts +0 -15
  525. package/dist/world2d/schema/tilemap.d.ts.map +0 -1
  526. package/dist/world2d/schema/tilemap.js +0 -19
  527. package/dist/world2d/schema/tuples2d.d.ts +0 -20
  528. package/dist/world2d/schema/tuples2d.d.ts.map +0 -1
  529. package/dist/world2d/schema/tuples2d.js +0 -19
  530. package/dist/world2d/system-adapters-2d.d.ts +0 -16
  531. package/dist/world2d/system-adapters-2d.d.ts.map +0 -1
  532. package/dist/world2d/system-adapters-2d.js +0 -37
  533. package/dist/world2d/transform-writer-2d.d.ts +0 -16
  534. package/dist/world2d/transform-writer-2d.d.ts.map +0 -1
  535. package/dist/world2d/transform-writer-2d.js +0 -22
  536. package/dist/world2d/types.d.ts +0 -59
  537. package/dist/world2d/types.d.ts.map +0 -1
  538. package/dist/world2d/types.js +0 -1
@@ -1,199 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const SceneMaterialSchema: z.ZodObject<{
3
- type: z.ZodEnum<{
4
- custom: "custom";
5
- standard: "standard";
6
- physical: "physical";
7
- basic: "basic";
8
- toon: "toon";
9
- }>;
10
- def: z.ZodOptional<z.ZodString>;
11
- uniforms: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodArray<z.ZodNumber>]>>>;
12
- color: z.ZodOptional<z.ZodString>;
13
- metalness: z.ZodOptional<z.ZodNumber>;
14
- roughness: z.ZodOptional<z.ZodNumber>;
15
- map: z.ZodOptional<z.ZodString>;
16
- normalMap: z.ZodOptional<z.ZodString>;
17
- emissive: z.ZodOptional<z.ZodString>;
18
- emissiveIntensity: z.ZodOptional<z.ZodNumber>;
19
- emissiveMap: z.ZodOptional<z.ZodString>;
20
- aoMap: z.ZodOptional<z.ZodString>;
21
- lightMap: z.ZodOptional<z.ZodString>;
22
- lightMapIntensity: z.ZodOptional<z.ZodNumber>;
23
- roughnessMap: z.ZodOptional<z.ZodString>;
24
- metalnessMap: z.ZodOptional<z.ZodString>;
25
- opacity: z.ZodOptional<z.ZodNumber>;
26
- transparent: z.ZodOptional<z.ZodBoolean>;
27
- side: z.ZodOptional<z.ZodEnum<{
28
- front: "front";
29
- back: "back";
30
- double: "double";
31
- }>>;
32
- flatShading: z.ZodOptional<z.ZodBoolean>;
33
- clearcoat: z.ZodOptional<z.ZodObject<{
34
- clearcoat: z.ZodNumber;
35
- clearcoatRoughness: z.ZodOptional<z.ZodNumber>;
36
- clearcoatMap: z.ZodOptional<z.ZodString>;
37
- clearcoatRoughnessMap: z.ZodOptional<z.ZodString>;
38
- }, z.core.$strip>>;
39
- transmission: z.ZodOptional<z.ZodObject<{
40
- transmission: z.ZodNumber;
41
- ior: z.ZodOptional<z.ZodNumber>;
42
- thickness: z.ZodOptional<z.ZodNumber>;
43
- attenuationColor: z.ZodOptional<z.ZodString>;
44
- attenuationDistance: z.ZodOptional<z.ZodNumber>;
45
- transmissionMap: z.ZodOptional<z.ZodString>;
46
- }, z.core.$strip>>;
47
- sheen: z.ZodOptional<z.ZodObject<{
48
- sheen: z.ZodNumber;
49
- sheenColor: z.ZodOptional<z.ZodString>;
50
- sheenRoughness: z.ZodOptional<z.ZodNumber>;
51
- sheenColorMap: z.ZodOptional<z.ZodString>;
52
- sheenRoughnessMap: z.ZodOptional<z.ZodString>;
53
- }, z.core.$strip>>;
54
- iridescence: z.ZodOptional<z.ZodObject<{
55
- iridescence: z.ZodNumber;
56
- iridescenceIOR: z.ZodOptional<z.ZodNumber>;
57
- iridescenceThicknessRange: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
58
- iridescenceMap: z.ZodOptional<z.ZodString>;
59
- iridescenceThicknessMap: z.ZodOptional<z.ZodString>;
60
- }, z.core.$strip>>;
61
- displacementMap: z.ZodOptional<z.ZodString>;
62
- displacementScale: z.ZodOptional<z.ZodNumber>;
63
- displacementBias: z.ZodOptional<z.ZodNumber>;
64
- }, z.core.$strip>;
65
- /** Partial schema for prefab instance overrides (type not required). */
66
- export declare const SceneMaterialOverrideSchema: z.ZodObject<{
67
- type: z.ZodOptional<z.ZodEnum<{
68
- custom: "custom";
69
- standard: "standard";
70
- physical: "physical";
71
- basic: "basic";
72
- toon: "toon";
73
- }>>;
74
- def: z.ZodOptional<z.ZodOptional<z.ZodString>>;
75
- uniforms: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodArray<z.ZodNumber>]>>>>;
76
- color: z.ZodOptional<z.ZodOptional<z.ZodString>>;
77
- metalness: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
78
- roughness: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
79
- map: z.ZodOptional<z.ZodOptional<z.ZodString>>;
80
- normalMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
81
- emissive: z.ZodOptional<z.ZodOptional<z.ZodString>>;
82
- emissiveIntensity: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
83
- emissiveMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
84
- aoMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
85
- lightMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
86
- lightMapIntensity: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
87
- roughnessMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
88
- metalnessMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
89
- opacity: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
90
- transparent: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
91
- side: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
92
- front: "front";
93
- back: "back";
94
- double: "double";
95
- }>>>;
96
- flatShading: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
97
- clearcoat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
98
- clearcoat: z.ZodNumber;
99
- clearcoatRoughness: z.ZodOptional<z.ZodNumber>;
100
- clearcoatMap: z.ZodOptional<z.ZodString>;
101
- clearcoatRoughnessMap: z.ZodOptional<z.ZodString>;
102
- }, z.core.$strip>>>;
103
- transmission: z.ZodOptional<z.ZodOptional<z.ZodObject<{
104
- transmission: z.ZodNumber;
105
- ior: z.ZodOptional<z.ZodNumber>;
106
- thickness: z.ZodOptional<z.ZodNumber>;
107
- attenuationColor: z.ZodOptional<z.ZodString>;
108
- attenuationDistance: z.ZodOptional<z.ZodNumber>;
109
- transmissionMap: z.ZodOptional<z.ZodString>;
110
- }, z.core.$strip>>>;
111
- sheen: z.ZodOptional<z.ZodOptional<z.ZodObject<{
112
- sheen: z.ZodNumber;
113
- sheenColor: z.ZodOptional<z.ZodString>;
114
- sheenRoughness: z.ZodOptional<z.ZodNumber>;
115
- sheenColorMap: z.ZodOptional<z.ZodString>;
116
- sheenRoughnessMap: z.ZodOptional<z.ZodString>;
117
- }, z.core.$strip>>>;
118
- iridescence: z.ZodOptional<z.ZodOptional<z.ZodObject<{
119
- iridescence: z.ZodNumber;
120
- iridescenceIOR: z.ZodOptional<z.ZodNumber>;
121
- iridescenceThicknessRange: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
122
- iridescenceMap: z.ZodOptional<z.ZodString>;
123
- iridescenceThicknessMap: z.ZodOptional<z.ZodString>;
124
- }, z.core.$strip>>>;
125
- displacementMap: z.ZodOptional<z.ZodOptional<z.ZodString>>;
126
- displacementScale: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
127
- displacementBias: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
128
- }, z.core.$strip>;
129
- export type SceneMaterial = z.infer<typeof SceneMaterialSchema>;
130
- /** .mat.json file format for shared/reusable material assets. */
131
- export declare const MaterialFileSchema: z.ZodObject<{
132
- version: z.ZodNumber;
133
- name: z.ZodString;
134
- material: z.ZodObject<{
135
- type: z.ZodEnum<{
136
- custom: "custom";
137
- standard: "standard";
138
- physical: "physical";
139
- basic: "basic";
140
- toon: "toon";
141
- }>;
142
- def: z.ZodOptional<z.ZodString>;
143
- uniforms: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodArray<z.ZodNumber>]>>>;
144
- color: z.ZodOptional<z.ZodString>;
145
- metalness: z.ZodOptional<z.ZodNumber>;
146
- roughness: z.ZodOptional<z.ZodNumber>;
147
- map: z.ZodOptional<z.ZodString>;
148
- normalMap: z.ZodOptional<z.ZodString>;
149
- emissive: z.ZodOptional<z.ZodString>;
150
- emissiveIntensity: z.ZodOptional<z.ZodNumber>;
151
- emissiveMap: z.ZodOptional<z.ZodString>;
152
- aoMap: z.ZodOptional<z.ZodString>;
153
- lightMap: z.ZodOptional<z.ZodString>;
154
- lightMapIntensity: z.ZodOptional<z.ZodNumber>;
155
- roughnessMap: z.ZodOptional<z.ZodString>;
156
- metalnessMap: z.ZodOptional<z.ZodString>;
157
- opacity: z.ZodOptional<z.ZodNumber>;
158
- transparent: z.ZodOptional<z.ZodBoolean>;
159
- side: z.ZodOptional<z.ZodEnum<{
160
- front: "front";
161
- back: "back";
162
- double: "double";
163
- }>>;
164
- flatShading: z.ZodOptional<z.ZodBoolean>;
165
- clearcoat: z.ZodOptional<z.ZodObject<{
166
- clearcoat: z.ZodNumber;
167
- clearcoatRoughness: z.ZodOptional<z.ZodNumber>;
168
- clearcoatMap: z.ZodOptional<z.ZodString>;
169
- clearcoatRoughnessMap: z.ZodOptional<z.ZodString>;
170
- }, z.core.$strip>>;
171
- transmission: z.ZodOptional<z.ZodObject<{
172
- transmission: z.ZodNumber;
173
- ior: z.ZodOptional<z.ZodNumber>;
174
- thickness: z.ZodOptional<z.ZodNumber>;
175
- attenuationColor: z.ZodOptional<z.ZodString>;
176
- attenuationDistance: z.ZodOptional<z.ZodNumber>;
177
- transmissionMap: z.ZodOptional<z.ZodString>;
178
- }, z.core.$strip>>;
179
- sheen: z.ZodOptional<z.ZodObject<{
180
- sheen: z.ZodNumber;
181
- sheenColor: z.ZodOptional<z.ZodString>;
182
- sheenRoughness: z.ZodOptional<z.ZodNumber>;
183
- sheenColorMap: z.ZodOptional<z.ZodString>;
184
- sheenRoughnessMap: z.ZodOptional<z.ZodString>;
185
- }, z.core.$strip>>;
186
- iridescence: z.ZodOptional<z.ZodObject<{
187
- iridescence: z.ZodNumber;
188
- iridescenceIOR: z.ZodOptional<z.ZodNumber>;
189
- iridescenceThicknessRange: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
190
- iridescenceMap: z.ZodOptional<z.ZodString>;
191
- iridescenceThicknessMap: z.ZodOptional<z.ZodString>;
192
- }, z.core.$strip>>;
193
- displacementMap: z.ZodOptional<z.ZodString>;
194
- displacementScale: z.ZodOptional<z.ZodNumber>;
195
- displacementBias: z.ZodOptional<z.ZodNumber>;
196
- }, z.core.$strip>;
197
- }, z.core.$strip>;
198
- export type MaterialFile = z.infer<typeof MaterialFileSchema>;
199
- //# sourceMappingURL=material.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"material.d.ts","sourceRoot":"","sources":["../../../src/scene/schema/material.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA6FxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQa,CAAC;AAE9C,wEAAwE;AACxE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAsC,CAAC;AAE/E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,iEAAiE;AACjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMsB,CAAC;AAEtD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -1,103 +0,0 @@
1
- import { z } from 'zod';
2
- const SceneMaterialObjectSchema = z.object({
3
- type: z
4
- .enum(['standard', 'physical', 'basic', 'toon', 'custom'])
5
- .describe('Material shading model. "custom" resolves `def` against the material registry'),
6
- def: z
7
- .string()
8
- .optional()
9
- .describe('Registered custom-material name (required when type is "custom")'),
10
- uniforms: z
11
- .record(z.string(), z.union([z.number(), z.string(), z.boolean(), z.array(z.number())]))
12
- .optional()
13
- .describe('Authored uniform values for a custom material, keyed by uniform name'),
14
- color: z.string().optional().describe('Base color as CSS hex string (e.g. "#ff0000")'),
15
- metalness: z.number().optional().describe('Metalness factor 0–1 (standard/physical only)'),
16
- roughness: z.number().optional().describe('Roughness factor 0–1 (standard/physical only)'),
17
- map: z.string().optional().describe('Path to albedo/diffuse texture image'),
18
- normalMap: z.string().optional().describe('Path to normal map texture image'),
19
- emissive: z.string().optional().describe('Emissive color as CSS hex string'),
20
- emissiveIntensity: z.number().optional().describe('Emissive light intensity multiplier'),
21
- emissiveMap: z.string().optional().describe('Path to emissive map texture image'),
22
- aoMap: z.string().optional().describe('Path to ambient occlusion map texture image'),
23
- lightMap: z
24
- .string()
25
- .optional()
26
- .describe("Path to a baked lightmap texture (uses the mesh's second UV set). Applies the pre-baked GI/shadow result on top of the material."),
27
- lightMapIntensity: z.number().optional().describe('Lightmap intensity multiplier (default 1).'),
28
- roughnessMap: z.string().optional().describe('Path to roughness map texture image'),
29
- metalnessMap: z.string().optional().describe('Path to metalness map texture image'),
30
- opacity: z.number().optional().describe('Opacity 0–1. Set transparent: true to enable'),
31
- transparent: z.boolean().optional().describe('Enable alpha blending for this material'),
32
- side: z.enum(['front', 'back', 'double']).optional().describe('Which face sides to render'),
33
- flatShading: z.boolean().optional().describe('Use flat (faceted) shading instead of smooth'),
34
- // Physical material feature groups (physical only, all optional)
35
- clearcoat: z
36
- .object({
37
- clearcoat: z.number().describe('Clearcoat layer intensity 0–1'),
38
- clearcoatRoughness: z.number().optional().describe('Clearcoat roughness 0–1'),
39
- clearcoatMap: z.string().optional().describe('Path to clearcoat intensity map'),
40
- clearcoatRoughnessMap: z.string().optional().describe('Path to clearcoat roughness map'),
41
- })
42
- .optional()
43
- .describe('Clearcoat layer (physical only)'),
44
- transmission: z
45
- .object({
46
- transmission: z.number().describe('Transmission intensity 0–1 (glass, liquid)'),
47
- ior: z.number().optional().describe('Index of refraction (default 1.5)'),
48
- thickness: z.number().optional().describe('Volume thickness for refraction'),
49
- attenuationColor: z.string().optional().describe('Color absorbed over distance'),
50
- attenuationDistance: z
51
- .number()
52
- .optional()
53
- .describe('Distance at which attenuation color takes full effect'),
54
- transmissionMap: z.string().optional().describe('Path to transmission map'),
55
- })
56
- .optional()
57
- .describe('Light transmission (physical only)'),
58
- sheen: z
59
- .object({
60
- sheen: z.number().describe('Sheen intensity 0–1 (fabric, velvet)'),
61
- sheenColor: z.string().optional().describe('Sheen tint color'),
62
- sheenRoughness: z.number().optional().describe('Sheen roughness 0–1'),
63
- sheenColorMap: z.string().optional().describe('Path to sheen color map'),
64
- sheenRoughnessMap: z.string().optional().describe('Path to sheen roughness map'),
65
- })
66
- .optional()
67
- .describe('Sheen layer (physical only)'),
68
- iridescence: z
69
- .object({
70
- iridescence: z.number().describe('Iridescence intensity 0–1 (soap bubbles, oil slick)'),
71
- iridescenceIOR: z.number().optional().describe('Thin-film IOR (default 1.3)'),
72
- iridescenceThicknessRange: z
73
- .tuple([z.number(), z.number()])
74
- .optional()
75
- .describe('Min/max thin-film thickness in nm'),
76
- iridescenceMap: z.string().optional().describe('Path to iridescence intensity map'),
77
- iridescenceThicknessMap: z.string().optional().describe('Path to iridescence thickness map'),
78
- })
79
- .optional()
80
- .describe('Iridescence thin-film (physical only)'),
81
- displacementMap: z.string().optional().describe('Path to displacement/height map'),
82
- displacementScale: z.number().optional().describe('Displacement height multiplier'),
83
- displacementBias: z.number().optional().describe('Displacement offset'),
84
- });
85
- export const SceneMaterialSchema = SceneMaterialObjectSchema.superRefine((material, ctx) => {
86
- if (material.type === 'custom' && !material.def?.trim()) {
87
- ctx.addIssue({
88
- code: 'custom',
89
- path: ['def'],
90
- message: 'Custom material requires a non-empty registered definition name',
91
- });
92
- }
93
- }).describe('Material appearance properties');
94
- /** Partial schema for prefab instance overrides (type not required). */
95
- export const SceneMaterialOverrideSchema = SceneMaterialObjectSchema.partial();
96
- /** .mat.json file format for shared/reusable material assets. */
97
- export const MaterialFileSchema = z
98
- .object({
99
- version: z.number().describe('File format version'),
100
- name: z.string().describe('Human-readable material name'),
101
- material: SceneMaterialSchema.describe('Material definition'),
102
- })
103
- .describe('Shared material asset file (.mat.json)');
@@ -1,48 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const SceneMeshSchema: z.ZodObject<{
3
- type: z.ZodEnum<{
4
- box: "box";
5
- capsule: "capsule";
6
- sphere: "sphere";
7
- plane: "plane";
8
- cylinder: "cylinder";
9
- gltf: "gltf";
10
- }>;
11
- args: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
12
- src: z.ZodOptional<z.ZodString>;
13
- node: z.ZodOptional<z.ZodString>;
14
- instances: z.ZodOptional<z.ZodString>;
15
- instancer: z.ZodOptional<z.ZodString>;
16
- instancerParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean]>>>;
17
- generator: z.ZodOptional<z.ZodString>;
18
- generatorParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean]>>>;
19
- lod: z.ZodOptional<z.ZodArray<z.ZodObject<{
20
- distance: z.ZodNumber;
21
- node: z.ZodString;
22
- }, z.core.$strip>>>;
23
- }, z.core.$strip>;
24
- /** Partial schema for prefab instance overrides (type not required). */
25
- export declare const SceneMeshOverrideSchema: z.ZodObject<{
26
- type: z.ZodOptional<z.ZodEnum<{
27
- box: "box";
28
- capsule: "capsule";
29
- sphere: "sphere";
30
- plane: "plane";
31
- cylinder: "cylinder";
32
- gltf: "gltf";
33
- }>>;
34
- args: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodNumber>>>;
35
- src: z.ZodOptional<z.ZodOptional<z.ZodString>>;
36
- node: z.ZodOptional<z.ZodOptional<z.ZodString>>;
37
- instances: z.ZodOptional<z.ZodOptional<z.ZodString>>;
38
- instancer: z.ZodOptional<z.ZodOptional<z.ZodString>>;
39
- instancerParams: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean]>>>>;
40
- generator: z.ZodOptional<z.ZodOptional<z.ZodString>>;
41
- generatorParams: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBoolean]>>>>;
42
- lod: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
43
- distance: z.ZodNumber;
44
- node: z.ZodString;
45
- }, z.core.$strip>>>>;
46
- }, z.core.$strip>;
47
- export type SceneMesh = z.infer<typeof SceneMeshSchema>;
48
- //# sourceMappingURL=mesh.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../../src/scene/schema/mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkFxB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;iBAoBW,CAAC;AAExC,wEAAwE;AACxE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;iBAA0B,CAAC;AAE/D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -1,82 +0,0 @@
1
- import { z } from 'zod';
2
- const SceneMeshBase = z.object({
3
- type: z
4
- .enum(['box', 'sphere', 'plane', 'cylinder', 'capsule', 'gltf'])
5
- .describe('Mesh primitive type, or "gltf" for an external 3D model'),
6
- args: z
7
- .array(z.number())
8
- .optional()
9
- .describe('Geometry constructor args — box: [w,h,d], sphere: [radius], cylinder: [rTop,rBot,h], capsule: [radius,length], plane: [w,h]'),
10
- src: z.string().optional().describe('Path to GLTF/GLB model file. Required when type is "gltf"'),
11
- node: z
12
- .string()
13
- .optional()
14
- .describe('Name (or path) of a single node inside the referenced glTF (resolved via ' +
15
- "getObjectByName) to instantiate as this entity's geometry, instead of the whole " +
16
- 'file. The geometry stays SHARED from the cached glTF — nothing is copied out. ' +
17
- 'Only meaningful with type: "gltf". CONSTRAINT: a skinned/animated node cannot be ' +
18
- 'lifted out of its armature — if the named node is a SkinnedMesh (or contains one), ' +
19
- 'resolving it throws (degrade loudly, not silently).'),
20
- instances: z
21
- .string()
22
- .optional()
23
- .describe('Path to an instance-transform asset (.instances.json: an array of ' +
24
- '[posX,posY,posZ, quatX,quatY,quatZ,quatW, scaleX,scaleY,scaleZ] tuples). Renders one ' +
25
- 'THREE.InstancedMesh (one draw call). Bulk transform data is referenced as an asset, ' +
26
- 'never inlined — keeps vscn thin.'),
27
- instancer: z
28
- .string()
29
- .optional()
30
- .describe('Registered instancer name. When set, the mesh renders as a single THREE.InstancedMesh ' +
31
- '(one draw call) with code-generated per-instance transforms instead of one THREE.Mesh'),
32
- instancerParams: z
33
- .record(z.string(), z.union([z.number(), z.string(), z.boolean()]))
34
- .optional()
35
- .describe('Params for the instancer (e.g. count, spacing), keyed by name'),
36
- generator: z
37
- .string()
38
- .optional()
39
- .describe('Registered geometry-generator name (e.g. "Terrain"). When set, the mesh geometry is ' +
40
- 'produced procedurally in code instead of from `type`/`args`. Pairs with a "trimesh" ' +
41
- 'collider for matching physics.'),
42
- generatorParams: z
43
- .record(z.string(), z.union([z.number(), z.string(), z.boolean()]))
44
- .optional()
45
- .describe('Params for the geometry generator (e.g. width, segments, amplitude)'),
46
- lod: z
47
- .array(z.object({
48
- distance: z
49
- .number()
50
- .describe('Camera distance in world units at/beyond which this level shows (THREE.LOD ' +
51
- 'threshold). Use 0 for the closest/highest-detail level.'),
52
- node: z
53
- .string()
54
- .describe('Name of a node inside the referenced glTF (mesh.src) to show at this distance — ' +
55
- 'resolved via getObjectByName, geometry shared (F4-style). A skinned node throws ' +
56
- '(atomic-subtree rule).'),
57
- }))
58
- .optional()
59
- .describe('Per-entity Level-of-Detail: distance-keyed glTF sub-nodes swapped by camera distance ' +
60
- '(THREE.LOD). gltf-only. Gated by the environment.rendering.lod master toggle — when ' +
61
- 'off, only the closest level renders. Cannot combine with node/instances/instancer.'),
62
- });
63
- export const SceneMeshSchema = SceneMeshBase.refine((m) => m.type !== 'gltf' || m.src != null, {
64
- message: "GLTF mesh requires 'src' field",
65
- })
66
- .refine((m) => m.node == null || m.type === 'gltf', {
67
- message: "Mesh 'node' is only meaningful with type: 'gltf' (names a sub-node of the referenced glTF)",
68
- })
69
- .refine((m) => !(m.instances && m.instancer), {
70
- message: "Mesh cannot set both 'instances' (authored) and 'instancer' (code-registered) — " +
71
- 'pick one canonical instancing source per mesh',
72
- })
73
- .refine((m) => m.lod == null || m.type === 'gltf', {
74
- message: "Mesh 'lod' is only meaningful with type: 'gltf'",
75
- })
76
- .refine((m) => !(m.lod && (m.node || m.instances || m.instancer)), {
77
- message: "Mesh 'lod' cannot combine with 'node'/'instances'/'instancer' — LOD is the multi-level " +
78
- 'form of a node ref',
79
- })
80
- .describe('Mesh geometry definition');
81
- /** Partial schema for prefab instance overrides (type not required). */
82
- export const SceneMeshOverrideSchema = SceneMeshBase.partial();