@vgai/engine 0.5.0 → 0.5.2

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,252 +0,0 @@
1
- /** Single source of truth for all scene default values. */
2
- export declare const DEFAULTS: {
3
- readonly transform: {
4
- readonly position: [number, number, number];
5
- readonly rotation: [number, number, number, number];
6
- readonly scale: [number, number, number];
7
- };
8
- readonly entity: {
9
- readonly visible: true;
10
- readonly locked: false;
11
- readonly pivot: [number, number, number];
12
- };
13
- readonly material: {
14
- readonly type: "standard";
15
- readonly color: "#888888";
16
- readonly metalness: 0;
17
- readonly roughness: 0.5;
18
- readonly emissive: "#000000";
19
- readonly emissiveIntensity: 0;
20
- readonly opacity: 1;
21
- readonly transparent: false;
22
- readonly side: "front";
23
- readonly flatShading: false;
24
- readonly clearcoat: {
25
- readonly clearcoat: 1;
26
- readonly clearcoatRoughness: 0;
27
- };
28
- readonly transmission: {
29
- readonly transmission: 1;
30
- readonly ior: 1.5;
31
- readonly thickness: 0.5;
32
- };
33
- readonly sheen: {
34
- readonly sheen: 1;
35
- readonly sheenColor: "#ffffff";
36
- readonly sheenRoughness: 0.5;
37
- };
38
- readonly iridescence: {
39
- readonly iridescence: 1;
40
- readonly iridescenceIOR: 1.3;
41
- readonly iridescenceThicknessRange: [number, number];
42
- };
43
- readonly displacementScale: 1;
44
- readonly displacementBias: 0;
45
- };
46
- readonly light: {
47
- readonly color: "#ffffff";
48
- readonly intensity: 1;
49
- readonly groundColor: "#000000";
50
- readonly distance: 0;
51
- readonly angle: number;
52
- readonly penumbra: 0;
53
- readonly width: 10;
54
- readonly height: 10;
55
- };
56
- readonly camera: {
57
- readonly fov: 60;
58
- readonly near: 0.1;
59
- readonly far: 1000;
60
- readonly orthoSize: 5;
61
- readonly width: 1920;
62
- readonly height: 1080;
63
- };
64
- readonly audio: {
65
- readonly spatial: true;
66
- readonly volume: 1;
67
- readonly refDistance: 1;
68
- readonly rolloffFactor: 1;
69
- readonly maxDistance: 10000;
70
- readonly loop: false;
71
- readonly autoplay: false;
72
- };
73
- readonly collider: {
74
- readonly cuboid: {
75
- readonly halfExtents: [number, number, number];
76
- };
77
- readonly ball: {
78
- readonly radius: 0.5;
79
- };
80
- readonly capsule: {
81
- readonly radius: 0.25;
82
- readonly halfHeight: 0.5;
83
- };
84
- };
85
- readonly shadow: {
86
- readonly mapSize: 1024;
87
- };
88
- readonly animation: {
89
- readonly loop: true;
90
- };
91
- readonly fog: {
92
- readonly linear: {
93
- readonly near: 1;
94
- readonly far: 100;
95
- };
96
- readonly exponential: {
97
- readonly density: 0.01;
98
- };
99
- };
100
- readonly environment: {
101
- readonly envMapIntensity: 1;
102
- };
103
- readonly toneMapping: {
104
- readonly mode: "aces";
105
- readonly exposure: 1;
106
- };
107
- readonly postProcessing: {
108
- readonly bloom: {
109
- readonly intensity: 1;
110
- readonly luminanceThreshold: 0.9;
111
- readonly luminanceSmoothing: 0.025;
112
- };
113
- readonly vignette: {
114
- readonly darkness: 0.5;
115
- readonly offset: 0.5;
116
- };
117
- readonly brightnessContrast: {
118
- readonly brightness: 0;
119
- readonly contrast: 0;
120
- };
121
- readonly hueSaturation: {
122
- readonly hue: 0;
123
- readonly saturation: 0;
124
- };
125
- readonly sepia: {
126
- readonly intensity: 1;
127
- };
128
- readonly colorDepth: {
129
- readonly bits: 16;
130
- };
131
- readonly chromaticAberration: {
132
- readonly offsetX: 0.002;
133
- readonly offsetY: 0.002;
134
- readonly modulationOffset: 0.15;
135
- };
136
- readonly lensDistortion: {
137
- readonly distortionX: 0;
138
- readonly distortionY: 0;
139
- readonly focalLengthX: 1;
140
- readonly focalLengthY: 1;
141
- readonly skew: 0;
142
- };
143
- readonly depthOfField: {
144
- readonly worldFocusDistance: 10;
145
- readonly worldFocusRange: 5;
146
- readonly bokehScale: 3;
147
- readonly focalLength: 0.04;
148
- };
149
- readonly tiltShift: {
150
- readonly offset: 0;
151
- readonly rotation: 0;
152
- readonly focusArea: 0.4;
153
- readonly feather: 0.3;
154
- };
155
- readonly noise: {
156
- readonly premultiply: false;
157
- };
158
- readonly scanline: {
159
- readonly density: 1.25;
160
- };
161
- readonly dotScreen: {
162
- readonly angle: 1.57;
163
- readonly scale: 1;
164
- };
165
- readonly grid: {
166
- readonly scale: 1;
167
- readonly lineWidth: 0;
168
- };
169
- readonly pixelation: {
170
- readonly granularity: 6;
171
- };
172
- readonly glitch: {
173
- readonly delayX: 1.5;
174
- readonly delayY: 3.5;
175
- readonly durationX: 0.6;
176
- readonly durationY: 1;
177
- readonly strengthX: 0.3;
178
- readonly strengthY: 1;
179
- readonly columns: 0.05;
180
- readonly ratio: 0.85;
181
- };
182
- readonly shockWave: {
183
- readonly speed: 2;
184
- readonly maxRadius: 1;
185
- readonly waveSize: 0.2;
186
- readonly amplitude: 0.05;
187
- };
188
- readonly smaa: {
189
- readonly preset: "high";
190
- };
191
- readonly ssao: {
192
- readonly radius: 0.05;
193
- readonly intensity: 2;
194
- readonly bias: 0.025;
195
- readonly samples: 16;
196
- readonly rings: 7;
197
- readonly fade: 0.01;
198
- };
199
- readonly n8ao: {
200
- readonly aoSamples: 16;
201
- readonly aoRadius: 5;
202
- readonly intensity: 5;
203
- readonly denoiseSamples: 8;
204
- readonly denoiseRadius: 12;
205
- readonly distanceFalloff: 1;
206
- };
207
- readonly godRays: {
208
- readonly density: 0.96;
209
- readonly decay: 0.93;
210
- readonly weight: 0.4;
211
- readonly exposure: 0.6;
212
- readonly samples: 60;
213
- };
214
- readonly outline: {
215
- readonly edgeStrength: 3;
216
- readonly pulseSpeed: 0;
217
- readonly visibleEdgeColor: "#ffffff";
218
- readonly hiddenEdgeColor: "#22090a";
219
- };
220
- readonly ssr: {
221
- readonly intensity: 1;
222
- readonly exponent: 1;
223
- readonly distance: 10;
224
- readonly thickness: 10;
225
- readonly maxRoughness: 1;
226
- };
227
- readonly ssgi: {
228
- readonly intensity: 1;
229
- readonly distance: 10;
230
- readonly thickness: 10;
231
- readonly maxRoughness: 1;
232
- };
233
- readonly motionBlur: {
234
- readonly intensity: 1;
235
- readonly jitter: 1;
236
- readonly samples: 16;
237
- };
238
- };
239
- readonly navigation: {
240
- readonly cellSize: 0.3;
241
- readonly cellHeight: 0.2;
242
- readonly walkableSlopeAngle: 45;
243
- readonly walkableHeight: 2;
244
- readonly walkableClimb: 1;
245
- readonly walkableRadius: 0.5;
246
- readonly maxEdgeLen: 12;
247
- readonly maxSimplificationError: 1.3;
248
- readonly minRegionArea: 8;
249
- readonly mergeRegionArea: 20;
250
- };
251
- };
252
- //# sourceMappingURL=defaults.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/scene/defaults.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,eAAO,MAAM,QAAQ;;2BAEM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;2BACrB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;wBACtC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;;;;;wBAMxB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDAoBD,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAsCjB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8F5D,CAAC"}
@@ -1,151 +0,0 @@
1
- /** Single source of truth for all scene default values. */
2
- export const DEFAULTS = {
3
- transform: {
4
- position: [0, 0, 0],
5
- rotation: [0, 0, 0, 1],
6
- scale: [1, 1, 1],
7
- },
8
- entity: {
9
- visible: true,
10
- locked: false,
11
- pivot: [0, 0, 0],
12
- },
13
- material: {
14
- type: 'standard',
15
- color: '#888888',
16
- metalness: 0,
17
- roughness: 0.5,
18
- emissive: '#000000',
19
- emissiveIntensity: 0,
20
- opacity: 1,
21
- transparent: false,
22
- side: 'front',
23
- flatShading: false,
24
- clearcoat: { clearcoat: 1, clearcoatRoughness: 0 },
25
- transmission: { transmission: 1, ior: 1.5, thickness: 0.5 },
26
- sheen: { sheen: 1, sheenColor: '#ffffff', sheenRoughness: 0.5 },
27
- iridescence: {
28
- iridescence: 1,
29
- iridescenceIOR: 1.3,
30
- iridescenceThicknessRange: [100, 400],
31
- },
32
- displacementScale: 1,
33
- displacementBias: 0,
34
- },
35
- light: {
36
- color: '#ffffff',
37
- intensity: 1,
38
- groundColor: '#000000',
39
- distance: 0,
40
- angle: Math.PI / 6,
41
- penumbra: 0,
42
- // three.js's own RectAreaLight constructor defaults (area lights only).
43
- width: 10,
44
- height: 10,
45
- },
46
- camera: {
47
- fov: 60,
48
- near: 0.1,
49
- far: 1000,
50
- orthoSize: 5,
51
- width: 1920,
52
- height: 1080,
53
- },
54
- audio: {
55
- spatial: true,
56
- volume: 1,
57
- refDistance: 1,
58
- rolloffFactor: 1,
59
- maxDistance: 10000,
60
- loop: false,
61
- autoplay: false,
62
- },
63
- collider: {
64
- cuboid: { halfExtents: [0.5, 0.5, 0.5] },
65
- ball: { radius: 0.5 },
66
- capsule: { radius: 0.25, halfHeight: 0.5 },
67
- },
68
- shadow: {
69
- mapSize: 1024,
70
- },
71
- animation: {
72
- loop: true,
73
- },
74
- fog: {
75
- linear: { near: 1, far: 100 },
76
- exponential: { density: 0.01 },
77
- },
78
- environment: {
79
- envMapIntensity: 1.0,
80
- },
81
- toneMapping: {
82
- // T1.13: the effective renderer default is ACES (see
83
- // setup-renderer.ts's `createHostRenderer` + `applyScenePostProcessing`,
84
- // which both hardcode `THREE.ACESFilmicToneMapping`/'aces' as the
85
- // fallback when a scene omits `environment.toneMapping`) — NOT 'none'.
86
- // This used to say 'none', silently disagreeing with the runtime and
87
- // with the editor's Tone Mapping inspector dropdown.
88
- mode: 'aces',
89
- exposure: 1.0,
90
- },
91
- postProcessing: {
92
- bloom: { intensity: 1.0, luminanceThreshold: 0.9, luminanceSmoothing: 0.025 },
93
- vignette: { darkness: 0.5, offset: 0.5 },
94
- brightnessContrast: { brightness: 0, contrast: 0 },
95
- hueSaturation: { hue: 0, saturation: 0 },
96
- sepia: { intensity: 1.0 },
97
- colorDepth: { bits: 16 },
98
- chromaticAberration: { offsetX: 0.002, offsetY: 0.002, modulationOffset: 0.15 },
99
- lensDistortion: { distortionX: 0, distortionY: 0, focalLengthX: 1, focalLengthY: 1, skew: 0 },
100
- depthOfField: { worldFocusDistance: 10, worldFocusRange: 5, bokehScale: 3, focalLength: 0.04 },
101
- tiltShift: { offset: 0, rotation: 0, focusArea: 0.4, feather: 0.3 },
102
- noise: { premultiply: false },
103
- scanline: { density: 1.25 },
104
- dotScreen: { angle: 1.57, scale: 1.0 },
105
- grid: { scale: 1.0, lineWidth: 0.0 },
106
- pixelation: { granularity: 6 },
107
- glitch: {
108
- delayX: 1.5,
109
- delayY: 3.5,
110
- durationX: 0.6,
111
- durationY: 1.0,
112
- strengthX: 0.3,
113
- strengthY: 1.0,
114
- columns: 0.05,
115
- ratio: 0.85,
116
- },
117
- shockWave: { speed: 2, maxRadius: 1, waveSize: 0.2, amplitude: 0.05 },
118
- smaa: { preset: 'high' },
119
- ssao: { radius: 0.05, intensity: 2.0, bias: 0.025, samples: 16, rings: 7, fade: 0.01 },
120
- n8ao: {
121
- aoSamples: 16,
122
- aoRadius: 5.0,
123
- intensity: 5,
124
- denoiseSamples: 8,
125
- denoiseRadius: 12,
126
- distanceFalloff: 1.0,
127
- },
128
- godRays: { density: 0.96, decay: 0.93, weight: 0.4, exposure: 0.6, samples: 60 },
129
- outline: {
130
- edgeStrength: 3,
131
- pulseSpeed: 0,
132
- visibleEdgeColor: '#ffffff',
133
- hiddenEdgeColor: '#22090a',
134
- },
135
- ssr: { intensity: 1, exponent: 1, distance: 10, thickness: 10, maxRoughness: 1 },
136
- ssgi: { intensity: 1, distance: 10, thickness: 10, maxRoughness: 1 },
137
- motionBlur: { intensity: 1, jitter: 1, samples: 16 },
138
- },
139
- navigation: {
140
- cellSize: 0.3,
141
- cellHeight: 0.2,
142
- walkableSlopeAngle: 45,
143
- walkableHeight: 2,
144
- walkableClimb: 1,
145
- walkableRadius: 0.5,
146
- maxEdgeLen: 12,
147
- maxSimplificationError: 1.3,
148
- minRegionArea: 8,
149
- mergeRegionArea: 20,
150
- },
151
- };
@@ -1,8 +0,0 @@
1
- /**
2
- * Built-in geometry generators. Importing this module for its side effects
3
- * registers the built-ins into the geometry registry. Both the runtime factory
4
- * (scene-loader) and the editor factory (entity-factory) import it so generated
5
- * meshes resolve on whichever side builds first.
6
- */
7
- import './terrain';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/scene/geometries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,WAAW,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Built-in geometry generators. Importing this module for its side effects
3
- * registers the built-ins into the geometry registry. Both the runtime factory
4
- * (scene-loader) and the editor factory (entity-factory) import it so generated
5
- * meshes resolve on whichever side builds first.
6
- */
7
- import './terrain';
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=terrain.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terrain.d.ts","sourceRoot":"","sources":["../../../src/scene/geometries/terrain.ts"],"names":[],"mappings":""}
@@ -1,37 +0,0 @@
1
- import * as THREE from 'three';
2
- import { registerGeometryGenerator } from '../geometry-registry';
3
- /**
4
- * Built-in "Terrain" geometry generator — a horizontal heightfield (XZ plane,
5
- * height in +Y) displaced by a deterministic sum-of-sines, so it pairs with a
6
- * `trimesh` collider for matching terrain physics. Proof material for roadmap #3.
7
- *
8
- * Params: width, depth (world size), segments (grid resolution per axis),
9
- * amplitude (max height), frequency (wave scale). Deterministic — no Math.random.
10
- */
11
- function heightAt(x, z, amplitude, frequency) {
12
- return (amplitude *
13
- (Math.sin(x * frequency) * 0.5 +
14
- Math.cos(z * frequency * 1.3) * 0.3 +
15
- Math.sin((x + z) * frequency * 0.5) * 0.2));
16
- }
17
- registerGeometryGenerator('Terrain', {
18
- build(params) {
19
- const width = params['width'] ?? 40;
20
- const depth = params['depth'] ?? 40;
21
- const segments = params['segments'] ?? 64;
22
- const amplitude = params['amplitude'] ?? 3;
23
- const frequency = params['frequency'] ?? 0.25;
24
- const geo = new THREE.PlaneGeometry(width, depth, segments, segments);
25
- // Lay the plane flat (XZ) with normal +Y, then displace Y by the heightfield.
26
- geo.rotateX(-Math.PI / 2);
27
- const pos = geo.attributes['position'];
28
- for (let i = 0; i < pos.count; i++) {
29
- const x = pos.getX(i);
30
- const z = pos.getZ(i);
31
- pos.setY(i, heightAt(x, z, amplitude, frequency));
32
- }
33
- pos.needsUpdate = true;
34
- geo.computeVertexNormals();
35
- return geo;
36
- },
37
- });
@@ -1,24 +0,0 @@
1
- import type * as THREE from 'three';
2
- /**
3
- * A geometry-generator definition. Registered by name and resolved when a scene
4
- * mesh declares `{ generator: <name> }`. Mirrors the material/instancer registry
5
- * pattern: the generation logic lives here in code, the authored params arrive as
6
- * scene data.
7
- *
8
- * `build` returns a real THREE.BufferGeometry. Paired with a `trimesh` collider,
9
- * the generated geometry also drives physics (e.g. terrain), so the visual and
10
- * collision surfaces match exactly.
11
- */
12
- export interface GeometryGeneratorDef {
13
- build(params: Record<string, unknown>): THREE.BufferGeometry;
14
- }
15
- /** Register a geometry generator under `name`. */
16
- export declare function registerGeometryGenerator(name: string, def: GeometryGeneratorDef): void;
17
- /** Look up a registered geometry generator. */
18
- export declare function getGeometryGenerator(name: string): GeometryGeneratorDef | undefined;
19
- /**
20
- * Build a procedural geometry by registered generator name. Throws if the
21
- * generator is unknown (fail loud — same posture as the other registries).
22
- */
23
- export declare function buildGeneratedGeometry(name: string, params: Record<string, unknown>): THREE.BufferGeometry;
24
- //# sourceMappingURL=geometry-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"geometry-registry.d.ts","sourceRoot":"","sources":["../../src/scene/geometry-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC;CAC9D;AAID,kDAAkD;AAClD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,GAAG,IAAI,CAEvF;AAED,+CAA+C;AAC/C,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAEnF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,KAAK,CAAC,cAAc,CAMtB"}
@@ -1,20 +0,0 @@
1
- const registry = new Map();
2
- /** Register a geometry generator under `name`. */
3
- export function registerGeometryGenerator(name, def) {
4
- registry.set(name, def);
5
- }
6
- /** Look up a registered geometry generator. */
7
- export function getGeometryGenerator(name) {
8
- return registry.get(name);
9
- }
10
- /**
11
- * Build a procedural geometry by registered generator name. Throws if the
12
- * generator is unknown (fail loud — same posture as the other registries).
13
- */
14
- export function buildGeneratedGeometry(name, params) {
15
- const def = registry.get(name);
16
- if (!def) {
17
- throw new Error(`Geometry generator "${name}" not found in geometry registry`);
18
- }
19
- return def.build(params ?? {});
20
- }
@@ -1,36 +0,0 @@
1
- import * as THREE from 'three';
2
- import type { InstancesFile } from './schema/instances';
3
- /**
4
- * An instancer definition. Registered by name and resolved when a scene mesh
5
- * declares `{ instancer: <name> }`. Mirrors the material-registry pattern: the
6
- * generation logic lives here in code (the "behavior" half), the authored params
7
- * arrive as scene data (the "data" half).
8
- *
9
- * `build` returns per-instance LOCAL transforms; the factory packs them into a
10
- * single THREE.InstancedMesh, so N instances cost one draw call.
11
- */
12
- export interface InstancerDef {
13
- /** Produce per-instance local matrices from authored params. */
14
- build(params: Record<string, unknown>): THREE.Matrix4[];
15
- }
16
- /** Register an instancer definition under `name`. */
17
- export declare function registerInstancer(name: string, def: InstancerDef): void;
18
- /** Look up a registered instancer. */
19
- export declare function getInstancer(name: string): InstancerDef | undefined;
20
- /**
21
- * Build a THREE.InstancedMesh from a registered instancer. Throws if the
22
- * instancer is unknown (fail loud — same posture as the component/material
23
- * registries). One InstancedMesh = one draw call for all instances.
24
- */
25
- export declare function buildInstancedMesh(geometry: THREE.BufferGeometry, material: THREE.Material, name: string, params: Record<string, unknown>): THREE.InstancedMesh;
26
- /**
27
- * Build a THREE.InstancedMesh directly from an already-parsed `.instances.json`
28
- * tuple array (F3, docs/VSCN-STRUCTURAL-GAPS-DESIGN.md — the declarative,
29
- * authored-data counterpart to `buildInstancedMesh`'s code-registered
30
- * instancers). Each tuple is
31
- * `[posX,posY,posZ, quatX,quatY,quatZ,quatW, scaleX,scaleY,scaleZ]`. Pure and
32
- * synchronous (no fetch) so it's exercisable headlessly by both the scene
33
- * loader (after it fetches+parses the asset) and unit tests.
34
- */
35
- export declare function buildInstancedMeshFromTuples(geometry: THREE.BufferGeometry, material: THREE.Material, tuples: InstancesFile): THREE.InstancedMesh;
36
- //# sourceMappingURL=instance-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instance-registry.d.ts","sourceRoot":"","sources":["../../src/scene/instance-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;CACzD;AAID,qDAAqD;AACrD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAEvE;AAED,sCAAsC;AACtC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEnE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,KAAK,CAAC,cAAc,EAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,KAAK,CAAC,aAAa,CAarB;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,KAAK,CAAC,cAAc,EAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,MAAM,EAAE,aAAa,GACpB,KAAK,CAAC,aAAa,CAgBrB"}
@@ -1,55 +0,0 @@
1
- import * as THREE from 'three';
2
- const registry = new Map();
3
- /** Register an instancer definition under `name`. */
4
- export function registerInstancer(name, def) {
5
- registry.set(name, def);
6
- }
7
- /** Look up a registered instancer. */
8
- export function getInstancer(name) {
9
- return registry.get(name);
10
- }
11
- /**
12
- * Build a THREE.InstancedMesh from a registered instancer. Throws if the
13
- * instancer is unknown (fail loud — same posture as the component/material
14
- * registries). One InstancedMesh = one draw call for all instances.
15
- */
16
- export function buildInstancedMesh(geometry, material, name, params) {
17
- const def = registry.get(name);
18
- if (!def) {
19
- throw new Error(`Instancer "${name}" not found in instancer registry`);
20
- }
21
- const matrices = def.build(params ?? {});
22
- const mesh = new THREE.InstancedMesh(geometry, material, matrices.length);
23
- for (let i = 0; i < matrices.length; i++) {
24
- mesh.setMatrixAt(i, matrices[i]);
25
- }
26
- mesh.instanceMatrix.needsUpdate = true;
27
- mesh.userData['__instancer'] = name;
28
- return mesh;
29
- }
30
- /**
31
- * Build a THREE.InstancedMesh directly from an already-parsed `.instances.json`
32
- * tuple array (F3, docs/VSCN-STRUCTURAL-GAPS-DESIGN.md — the declarative,
33
- * authored-data counterpart to `buildInstancedMesh`'s code-registered
34
- * instancers). Each tuple is
35
- * `[posX,posY,posZ, quatX,quatY,quatZ,quatW, scaleX,scaleY,scaleZ]`. Pure and
36
- * synchronous (no fetch) so it's exercisable headlessly by both the scene
37
- * loader (after it fetches+parses the asset) and unit tests.
38
- */
39
- export function buildInstancedMeshFromTuples(geometry, material, tuples) {
40
- const mesh = new THREE.InstancedMesh(geometry, material, tuples.length);
41
- const pos = new THREE.Vector3();
42
- const quat = new THREE.Quaternion();
43
- const scale = new THREE.Vector3();
44
- const matrix = new THREE.Matrix4();
45
- for (let i = 0; i < tuples.length; i++) {
46
- const t = tuples[i];
47
- pos.set(t[0], t[1], t[2]);
48
- quat.set(t[3], t[4], t[5], t[6]);
49
- scale.set(t[7], t[8], t[9]);
50
- matrix.compose(pos, quat, scale);
51
- mesh.setMatrixAt(i, matrix);
52
- }
53
- mesh.instanceMatrix.needsUpdate = true;
54
- return mesh;
55
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=grid.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../src/scene/instancers/grid.ts"],"names":[],"mappings":""}
@@ -1,36 +0,0 @@
1
- import * as THREE from 'three';
2
- import { registerInstancer } from '../instance-registry';
3
- /**
4
- * Built-in "Grid" instancer — a countX × countZ grid of instances on the XZ
5
- * plane, centred on the entity origin, with optional deterministic y-jitter.
6
- * Proof material for roadmap #2 (first-class instancing): a 100×100 grid is
7
- * 10,000 instances in one draw call.
8
- *
9
- * Determinism: uses a seeded LCG (not Math.random) so a scene renders the same
10
- * layout every load — important for reproducible scenes and tests.
11
- */
12
- registerInstancer('Grid', {
13
- build(params) {
14
- const countX = params['countX'] ?? 100;
15
- const countZ = params['countZ'] ?? 100;
16
- const spacing = params['spacing'] ?? 2;
17
- const jitter = params['jitter'] ?? 0;
18
- let seed = params['seed'] ?? 1;
19
- const rand = () => {
20
- seed = (seed * 1664525 + 1013904223) % 4294967296;
21
- return seed / 4294967296;
22
- };
23
- const offX = ((countX - 1) * spacing) / 2;
24
- const offZ = ((countZ - 1) * spacing) / 2;
25
- const matrices = [];
26
- const m = new THREE.Matrix4();
27
- for (let x = 0; x < countX; x++) {
28
- for (let z = 0; z < countZ; z++) {
29
- const y = jitter ? (rand() - 0.5) * jitter : 0;
30
- m.makeTranslation(x * spacing - offX, y, z * spacing - offZ);
31
- matrices.push(m.clone());
32
- }
33
- }
34
- return matrices;
35
- },
36
- });
@@ -1,8 +0,0 @@
1
- /**
2
- * Built-in instancer definitions. Importing this module for its side effects
3
- * registers the built-ins into the instancer registry. Both the runtime factory
4
- * (scene-loader) and the editor factory (entity-factory) import it so instanced
5
- * meshes resolve on whichever side builds first.
6
- */
7
- import './grid';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/scene/instancers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,QAAQ,CAAC"}