@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 +0,0 @@
1
- {"version":3,"file":"authoring-2d.d.ts","sourceRoot":"","sources":["../../src/world2d/authoring-2d.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;;;GAMG;AAEH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,gBAAgB,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAClE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACzD,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,6FAA6F;AAC7F,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AACD,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAUnD,qBAAa,kBAAkB;IAM3B,OAAO,CAAC,QAAQ,CAAC,IAAI;IALvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgC;IACrD,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,KAAK,CAAS;gBAGH,IAAI,EAAE,SAAS,EAChC,IAAI,GAAE;QAAE,OAAO,CAAC,EAAE,SAAS,CAAA;KAAO;IAMpC,uFAAuF;IACvF,OAAO,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAsB7C,KAAK,IAAI,YAAY,EAAE;IAIvB,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAKrC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAI3C,OAAO,CAAC,MAAM;IAYd,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAcjD,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAe5D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,EAAE;IAkBpC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAYnD,OAAO,CAAC,aAAa;IAYrB;;;;;;;;OAQG;IACH,YAAY,CAAC,OAAO,EAAE,SAAS,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAevE,OAAO,IAAI,OAAO;IAGlB,gBAAgB,IAAI,SAAS;IAG7B,gFAAgF;IAChF,cAAc,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAKxC,qFAAqF;IACrF,SAAS,IAAI,IAAI;CAGlB"}
@@ -1,195 +0,0 @@
1
- function kindOf(o) {
2
- const ctor = o.constructor?.name?.toLowerCase() ?? 'container';
3
- if (ctor.includes('animatedsprite'))
4
- return 'animatedsprite';
5
- if (ctor.includes('sprite'))
6
- return 'sprite';
7
- if (ctor.includes('text'))
8
- return 'text';
9
- return 'container';
10
- }
11
- export class AuthoringAdapter2D {
12
- root;
13
- byId = new Map();
14
- overlay = {};
15
- dirty = false;
16
- constructor(root, opts = {}) {
17
- this.root = root;
18
- if (opts.overlay)
19
- this.overlay = opts.overlay;
20
- this.refresh();
21
- }
22
- /** Walk the live tree assigning deterministic structural-path ids, reapply overlay. */
23
- refresh() {
24
- this.byId.clear();
25
- let count = 0;
26
- let sprites = 0;
27
- const visit = (o, path) => {
28
- const id = `w2d:${path}:${kindOf(o)}:${o.label ?? ''}`;
29
- o.__authId = id;
30
- this.byId.set(id, o);
31
- count++;
32
- if (kindOf(o).includes('sprite'))
33
- sprites++;
34
- o.children.forEach((c, i) => {
35
- visit(c, `${path}/${i}`);
36
- });
37
- };
38
- this.root.children.forEach((c, i) => {
39
- visit(c, `${i}`);
40
- });
41
- // Reapply any saved overlay edits to the live tree.
42
- for (const [id, ov] of Object.entries(this.overlay))
43
- this.applyOverride(id, ov);
44
- return { count, sprites };
45
- }
46
- roots() {
47
- return this.root.children.map((c) => this.toNode(c));
48
- }
49
- node(id) {
50
- const o = this.byId.get(id);
51
- return o ? this.toNode(o) : null;
52
- }
53
- displayObject(id) {
54
- return this.byId.get(id) ?? null;
55
- }
56
- toNode(o) {
57
- const self = o;
58
- return {
59
- id: self.__authId ?? '',
60
- label: o.label ?? kindOf(o),
61
- kind: kindOf(o),
62
- parentId: o.parent?.__authId ?? null,
63
- childIds: o.children.map((c) => c.__authId ?? ''),
64
- };
65
- }
66
- // --- Transforms ---
67
- getTransform(id) {
68
- const o = this.byId.get(id);
69
- // A tracked node isn't guaranteed to be a real PixiJS display object with
70
- // a transform (e.g. test doubles / non-positional fixture nodes walked
71
- // via the composite adapter's overlay path) — treat a missing position
72
- // the same as a missing node: no transform to report, not a crash.
73
- if (!o || !o.position || !o.scale)
74
- return null;
75
- return {
76
- position: [o.position.x, o.position.y],
77
- rotation: o.rotation,
78
- scale: [o.scale.x, o.scale.y],
79
- };
80
- }
81
- setTransform(id, t) {
82
- const o = this.byId.get(id);
83
- if (!o)
84
- return;
85
- if (t.position)
86
- o.position.set(t.position[0], t.position[1]);
87
- if (t.rotation !== undefined)
88
- o.rotation = t.rotation;
89
- if (t.scale)
90
- o.scale.set(t.scale[0], t.scale[1]);
91
- this.overlay[id] ??= {};
92
- const ov = this.overlay[id];
93
- if (t.position)
94
- ov.position = t.position;
95
- if (t.rotation !== undefined)
96
- ov.rotation = t.rotation;
97
- if (t.scale)
98
- ov.scale = t.scale;
99
- this.dirty = true;
100
- }
101
- // --- Inspector (reflected fields) ---
102
- properties(id) {
103
- const o = this.byId.get(id);
104
- if (!o)
105
- return [];
106
- const props = [
107
- { path: 'label', label: 'Name', type: 'string', value: o.label ?? '' },
108
- { path: 'visible', label: 'Visible', type: 'boolean', value: o.visible },
109
- { path: 'alpha', label: 'Alpha', type: 'number', value: o.alpha },
110
- ];
111
- if ('tint' in o)
112
- props.push({
113
- path: 'tint',
114
- label: 'Tint',
115
- type: 'color',
116
- value: o.tint,
117
- });
118
- return props;
119
- }
120
- set(id, path, value) {
121
- const o = this.byId.get(id);
122
- if (!o)
123
- return;
124
- o[path] = value;
125
- this.overlay[id] ??= {};
126
- if (path === 'label')
127
- this.overlay[id].label = value;
128
- if (path === 'alpha')
129
- this.overlay[id].alpha = value;
130
- if (path === 'tint')
131
- this.overlay[id].tint = value;
132
- if (path === 'visible')
133
- this.overlay[id].visible = value;
134
- this.dirty = true;
135
- }
136
- applyOverride(id, ov) {
137
- const o = this.byId.get(id);
138
- if (!o)
139
- return;
140
- if (ov.label !== undefined)
141
- o.label = ov.label;
142
- if (ov.alpha !== undefined)
143
- o.alpha = ov.alpha;
144
- if (ov.position)
145
- o.position.set(ov.position[0], ov.position[1]);
146
- if (ov.rotation !== undefined)
147
- o.rotation = ov.rotation;
148
- if (ov.scale)
149
- o.scale.set(ov.scale[0], ov.scale[1]);
150
- if (ov.tint !== undefined && 'tint' in o)
151
- o.tint = ov.tint;
152
- if (ov.visible !== undefined)
153
- o.visible = ov.visible;
154
- }
155
- /**
156
- * Re-apply a saved/external overlay onto the (already-walked) live tree, merging
157
- * it into the in-memory overlay so a later `serializeOverlay()`/save preserves it
158
- * and a later `refresh()` re-applies it again. Ids absent from the current tree
159
- * are skipped (orphaned, not an error) — the 2D analog of
160
- * `IngestAuthoringAdapter.applyOverlay` (T3.2 slice 3). Used both for the initial
161
- * reload (constructor `opts.overlay`) and for `PersistenceProvider.applyExternal`
162
- * (re-apply a changed overlay file without a full remount).
163
- */
164
- applyOverlay(overlay) {
165
- let applied = 0;
166
- let orphaned = 0;
167
- for (const [id, ov] of Object.entries(overlay)) {
168
- if (!this.byId.has(id)) {
169
- orphaned++;
170
- continue;
171
- }
172
- this.applyOverride(id, ov);
173
- this.overlay[id] = { ...this.overlay[id], ...ov };
174
- applied++;
175
- }
176
- return { applied, orphaned };
177
- }
178
- isDirty() {
179
- return this.dirty;
180
- }
181
- serializeOverlay() {
182
- return this.overlay;
183
- }
184
- /** Replace, rather than merge, overlay state after an exact history restore. */
185
- replaceOverlay(overlay) {
186
- this.overlay = structuredClone(overlay);
187
- for (const [id, ov] of Object.entries(this.overlay))
188
- this.applyOverride(id, ov);
189
- this.dirty = true;
190
- }
191
- /** Clear the dirty flag after a successful save (mirrors IngestAuthoringAdapter). */
192
- markClean() {
193
- this.dirty = false;
194
- }
195
- }
@@ -1,5 +0,0 @@
1
- import type { Container } from 'pixi.js';
2
- import type { Scene2DFile } from './schema/entity2d';
3
- /** Capture selected subtree roots (by display object) into a Scene2D file. */
4
- export declare function captureToScene2D(roots: Container[], name?: string): Scene2DFile;
5
- //# sourceMappingURL=capture-to-scene2d.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capture-to-scene2d.d.ts","sourceRoot":"","sources":["../../src/world2d/capture-to-scene2d.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAY,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA0C/D,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,SAAqB,GAAG,WAAW,CAO3F"}
@@ -1,49 +0,0 @@
1
- /**
2
- * Capture an ingested/live PixiJS subtree into authored Scene2D entities — the
3
- * world2d analog of capture-to-vscn (`ingest-capture.ts`). Recognizable sprites/
4
- * text/containers map to first-party `sprite`/`text`/`transform2d` sections;
5
- * turns inspection into portable authored content.
6
- *
7
- * Honest ceiling (mirrors the 3D one): a Scene2D `sprite` expresses tint + size +
8
- * anchor, not an arbitrary texture/GraphicsContext, so a captured display keeps its
9
- * transform + tint + size; bespoke Graphics geometry is captured as a plain tinted
10
- * sprite placeholder.
11
- */
12
- function numToHex(n) {
13
- return `#${((n ?? 0xffffff) & 0xffffff).toString(16).padStart(6, '0')}`;
14
- }
15
- function captureNode(o) {
16
- const ctor = o.constructor?.name?.toLowerCase() ?? '';
17
- const entity = {
18
- name: o.label ?? ctor ?? 'entity',
19
- surface: 'world2d',
20
- transform2d: {
21
- position: [o.position.x, o.position.y],
22
- rotation: o.rotation,
23
- scale: [o.scale.x, o.scale.y],
24
- },
25
- };
26
- if (ctor.includes('text')) {
27
- entity.text = { text: o.text ?? '' };
28
- }
29
- else if (ctor.includes('sprite')) {
30
- entity.sprite = {
31
- tint: numToHex(o.tint),
32
- width: Math.round(o.width),
33
- height: Math.round(o.height),
34
- };
35
- }
36
- const kids = o.children?.filter((c) => c.label !== undefined) ?? [];
37
- if (kids.length)
38
- entity.children = kids.map((c) => captureNode(c));
39
- return entity;
40
- }
41
- /** Capture selected subtree roots (by display object) into a Scene2D file. */
42
- export function captureToScene2D(roots, name = 'captured-world2d') {
43
- return {
44
- version: 1,
45
- name,
46
- surface: 'world2d',
47
- entities: roots.map(captureNode),
48
- };
49
- }
@@ -1,52 +0,0 @@
1
- import type RAPIER from '@dimforge/rapier2d-compat';
2
- import type { NodeOf } from '../ecs/game-component';
3
- import type { GameContext } from '../runtime/types';
4
- import type { Physics2DRegistry } from './physics2d-registry';
5
- export type Collision2DHandler = (handleA: number, handleB: number, started: boolean) => void;
6
- /**
7
- * Drains the Rapier 2D event queue each postPhysics and dispatches collision
8
- * events — the world2d analog of `createCollisionSystem`. Events are buffered then
9
- * handlers run after the drain returns (same re-entrancy guard as the 3D system:
10
- * a handler must not call back into Rapier while the queue is borrowed).
11
- */
12
- export declare function createCollision2DSystem(rapierWorld: RAPIER.World, eventQueue: RAPIER.EventQueue): {
13
- onCollision(handler: Collision2DHandler): void;
14
- offCollision(handler: Collision2DHandler): void;
15
- drain(): void;
16
- getBodyHandleFromCollider(colliderHandle: number): number | undefined;
17
- };
18
- export type Collision2DSystem = ReturnType<typeof createCollision2DSystem>;
19
- /**
20
- * The minimal component-manager capability `createTriggerDispatch2D` needs —
21
- * `getComponents` returning instances with optional trigger callbacks, typed
22
- * honestly against `NodeOf<'pixijs'>` (T7.2, D8 — this dispatch is always
23
- * pixi-world-scoped) rather than the full manager type. Deliberately a
24
- * structural slice: the unified `ComponentManager` (`ecs/component-manager.ts`,
25
- * what production wires up since T7.3 slice 1, and the only manager left —
26
- * the world2d silo's manager is deleted, T7.3 slice 2) satisfies it — this
27
- * dispatcher has no dependency on which `AdapterSurface` a caller's manager was
28
- * constructed for.
29
- */
30
- export interface TriggerDispatchComponents {
31
- getComponents(node: NodeOf<'pixijs'>): ReadonlyArray<{
32
- onTriggerEnter?(other: NodeOf<'pixijs'>, ctx: GameContext): void;
33
- onTriggerExit?(other: NodeOf<'pixijs'>, ctx: GameContext): void;
34
- }>;
35
- }
36
- /**
37
- * Turn Rapier 2D sensor overlaps into `onTriggerEnter`/`onTriggerExit` callbacks on
38
- * the GameComponents of the two involved display objects — the 2D analog of
39
- * `createTriggerDispatch`. Only sensor-involved collisions dispatch triggers.
40
- *
41
- * `ctx` is typed `GameContext` (the unified manager's typing) — production
42
- * (`pixi-game-adapter.ts`) casts its real `World2DContext` to `GameContext`
43
- * before passing it here; individual `GameComponent<'pixijs'>` subclasses
44
- * that need real 2D fields off `ctx` widen their own lifecycle-method
45
- * signature to `GameContext | World2DContext` and narrow back down (see
46
- * `Camera2DFollow.update` in `./components-2d.ts` — the worked example of
47
- * the pattern since the world2d-demo silo and its `first-party-scene.ts`
48
- * were deleted, T6.1 slice 4). This function only ever forwards `ctx` — it
49
- * never reads a field off it itself.
50
- */
51
- export declare function createTriggerDispatch2D(physics: Physics2DRegistry, components: TriggerDispatchComponents, rapierWorld: RAPIER.World, ctx: GameContext): Collision2DHandler;
52
- //# sourceMappingURL=collision-2d.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collision-2d.d.ts","sourceRoot":"","sources":["../../src/world2d/collision-2d.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAE9F;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU;yBAGvE,kBAAkB;0BAGjB,kBAAkB;;8CAaE,MAAM,GAAG,MAAM,GAAG,SAAS;EAKxE;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE3E;;;;;;;;;;GAUG;AACH,MAAM,WAAW,yBAAyB;IACxC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;QACnD,cAAc,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;QACjE,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;KACjE,CAAC,CAAC;CACJ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,yBAAyB,EACrC,WAAW,EAAE,MAAM,CAAC,KAAK,EACzB,GAAG,EAAE,WAAW,GACf,kBAAkB,CAapB"}
@@ -1,70 +0,0 @@
1
- /**
2
- * Drains the Rapier 2D event queue each postPhysics and dispatches collision
3
- * events — the world2d analog of `createCollisionSystem`. Events are buffered then
4
- * handlers run after the drain returns (same re-entrancy guard as the 3D system:
5
- * a handler must not call back into Rapier while the queue is borrowed).
6
- */
7
- export function createCollision2DSystem(rapierWorld, eventQueue) {
8
- const handlers = [];
9
- return {
10
- onCollision(handler) {
11
- handlers.push(handler);
12
- },
13
- offCollision(handler) {
14
- const idx = handlers.indexOf(handler);
15
- if (idx !== -1)
16
- handlers.splice(idx, 1);
17
- },
18
- drain() {
19
- const events = [];
20
- eventQueue.drainCollisionEvents((h1, h2, started) => {
21
- events.push([h1, h2, started]);
22
- });
23
- for (const [h1, h2, started] of events) {
24
- for (let i = 0; i < handlers.length; i++)
25
- handlers[i](h1, h2, started);
26
- }
27
- },
28
- getBodyHandleFromCollider(colliderHandle) {
29
- const collider = rapierWorld.getCollider(colliderHandle);
30
- return collider?.parent()?.handle;
31
- },
32
- };
33
- }
34
- /**
35
- * Turn Rapier 2D sensor overlaps into `onTriggerEnter`/`onTriggerExit` callbacks on
36
- * the GameComponents of the two involved display objects — the 2D analog of
37
- * `createTriggerDispatch`. Only sensor-involved collisions dispatch triggers.
38
- *
39
- * `ctx` is typed `GameContext` (the unified manager's typing) — production
40
- * (`pixi-game-adapter.ts`) casts its real `World2DContext` to `GameContext`
41
- * before passing it here; individual `GameComponent<'pixijs'>` subclasses
42
- * that need real 2D fields off `ctx` widen their own lifecycle-method
43
- * signature to `GameContext | World2DContext` and narrow back down (see
44
- * `Camera2DFollow.update` in `./components-2d.ts` — the worked example of
45
- * the pattern since the world2d-demo silo and its `first-party-scene.ts`
46
- * were deleted, T6.1 slice 4). This function only ever forwards `ctx` — it
47
- * never reads a field off it itself.
48
- */
49
- export function createTriggerDispatch2D(physics, components, rapierWorld, ctx) {
50
- return (handleA, handleB, started) => {
51
- const colA = rapierWorld.getCollider(handleA);
52
- const colB = rapierWorld.getCollider(handleB);
53
- if (!colA?.isSensor() && !colB?.isSensor())
54
- return;
55
- const objA = physics.getByColliderHandle(handleA);
56
- const objB = physics.getByColliderHandle(handleB);
57
- if (!objA || !objB)
58
- return;
59
- notify(components, objA, objB, started, ctx);
60
- notify(components, objB, objA, started, ctx);
61
- };
62
- }
63
- function notify(components, self, other, started, ctx) {
64
- for (const inst of components.getComponents(self)) {
65
- if (started)
66
- inst.onTriggerEnter?.(other, ctx);
67
- else
68
- inst.onTriggerExit?.(other, ctx);
69
- }
70
- }
@@ -1,47 +0,0 @@
1
- import { z } from 'zod';
2
- import { GameComponent } from '../ecs/game-component';
3
- import type { GameContext } from '../runtime/types';
4
- import type { World2DContext } from './types';
5
- /**
6
- * Camera2DFollow — the canonical 2D camera (spec backend-2d-camera): a 2D camera is
7
- * a transform on the world Container (`ctx.stage`). Attached to the entity to follow;
8
- * each frame it pans/zooms `ctx.stage` so the target display stays centered. Mirrors
9
- * the 3D "camera GameComponent on a camera entity" canonical-way rule.
10
- */
11
- export declare class Camera2DFollow extends GameComponent<'pixijs'> {
12
- static declaredKind: "pixijs";
13
- static phase: "preRender";
14
- static schema: z.ZodObject<{
15
- zoom: z.ZodDefault<z.ZodNumber>;
16
- smoothing: z.ZodDefault<z.ZodNumber>;
17
- }, z.core.$strip>;
18
- zoom: number;
19
- smoothing: number;
20
- update(_dt: number, gameCtx: GameContext | World2DContext): void;
21
- }
22
- /**
23
- * Clickable2D — federated-events picking (spec backend-2d-input-picking). The sprite
24
- * must be authored `interactive: true` (loader sets eventMode='static'); on pointerdown
25
- * the sprite cycles tint, proving Pixi world picking works and is independent of the
26
- * React/DOM HUD layer.
27
- *
28
- * INPUT ROUTING RULE (resolves the headline open design question): the three surfaces
29
- * are stacked DOM siblings — React/DOM HUD (top, z-index, pointer-events gated) gets the
30
- * event first; if it doesn't consume it, the Pixi canvas's federated EventSystem hit-tests
31
- * world2d display objects; Three's raycaster handles the world3d canvas. Because each
32
- * surface owns its own canvas/DOM node, a click on the HUD does not also pick the Pixi
33
- * world beneath it, and vice-versa — no cross-surface double-picking.
34
- */
35
- export declare class Clickable2D extends GameComponent<'pixijs'> {
36
- static declaredKind: "pixijs";
37
- static schema: z.ZodObject<{
38
- tints: z.ZodDefault<z.ZodArray<z.ZodString>>;
39
- }, z.core.$strip>;
40
- tints: string[];
41
- private idx;
42
- private handler;
43
- init(): void;
44
- update(): void;
45
- dispose(): void;
46
- }
47
- //# sourceMappingURL=components-2d.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"components-2d.d.ts","sourceRoot":"","sources":["../../src/world2d/components-2d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,aAAa,CAAC,QAAQ,CAAC;IACzD,MAAM,CAAC,YAAY,EAAG,QAAQ,CAAU;IACxC,MAAM,CAAC,KAAK,EAAG,WAAW,CAAU;IACpC,MAAM,CAAC,MAAM;;;sBAGV;IACH,IAAI,SAAK;IACT,SAAS,SAAQ;IAcjB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,cAAc,GAAG,IAAI;CAUjE;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAY,SAAQ,aAAa,CAAC,QAAQ,CAAC;IACtD,MAAM,CAAC,YAAY,EAAG,QAAQ,CAAU;IACxC,MAAM,CAAC,MAAM;;sBAKV;IACH,KAAK,EAAE,MAAM,EAAE,CAAgD;IAC/D,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,OAAO,CAMb;IAEF,IAAI,IAAI,IAAI;IAKZ,MAAM,IAAI,IAAI;IACd,OAAO,IAAI,IAAI;CAGhB"}
@@ -1,77 +0,0 @@
1
- import { z } from 'zod';
2
- import { GameComponent } from '../ecs/game-component';
3
- /**
4
- * Camera2DFollow — the canonical 2D camera (spec backend-2d-camera): a 2D camera is
5
- * a transform on the world Container (`ctx.stage`). Attached to the entity to follow;
6
- * each frame it pans/zooms `ctx.stage` so the target display stays centered. Mirrors
7
- * the 3D "camera GameComponent on a camera entity" canonical-way rule.
8
- */
9
- export class Camera2DFollow extends GameComponent {
10
- static declaredKind = 'pixijs';
11
- static phase = 'preRender';
12
- static schema = z.object({
13
- zoom: z.number().default(1).describe('Camera zoom (world Container scale)'),
14
- smoothing: z.number().default(0.12).describe('Follow lerp factor 0..1 (1 = instant)'),
15
- });
16
- zoom = 1;
17
- smoothing = 0.12;
18
- // CONFLICT (bridged, same mechanism the deleted `GameComponent2D` alias
19
- // used — T7.3 slice 2): `GameComponent<K>`'s lifecycle methods are typed
20
- // `ctx: GameContext` (D8 §2 — `ctx` always means the game-level context),
21
- // but this component genuinely needs `World2DContext` fields (`app`/
22
- // `stage`), which share no structure with `GameContext` (neither is
23
- // assignable to the other) — a plain `ctx: World2DContext` override would
24
- // fail even under method bivariance (TS2416). Widening the parameter to
25
- // the union is a valid (non-bivariant) override on its own — accepting a
26
- // superset of the base signature is always sound — then narrowing back
27
- // down via the cast below. At runtime this always receives the real
28
- // `World2DContext` (`pixi-game-adapter.ts` casts it to `GameContext` only
29
- // for the unified manager's internal typing).
30
- update(_dt, gameCtx) {
31
- const ctx = gameCtx;
32
- const screen = ctx.app.screen;
33
- const targetX = screen.width / 2 - this.node.x * this.zoom;
34
- const targetY = screen.height / 2 - this.node.y * this.zoom;
35
- const stage = ctx.stage;
36
- stage.scale.set(this.zoom);
37
- stage.position.x += (targetX - stage.position.x) * this.smoothing;
38
- stage.position.y += (targetY - stage.position.y) * this.smoothing;
39
- }
40
- }
41
- /**
42
- * Clickable2D — federated-events picking (spec backend-2d-input-picking). The sprite
43
- * must be authored `interactive: true` (loader sets eventMode='static'); on pointerdown
44
- * the sprite cycles tint, proving Pixi world picking works and is independent of the
45
- * React/DOM HUD layer.
46
- *
47
- * INPUT ROUTING RULE (resolves the headline open design question): the three surfaces
48
- * are stacked DOM siblings — React/DOM HUD (top, z-index, pointer-events gated) gets the
49
- * event first; if it doesn't consume it, the Pixi canvas's federated EventSystem hit-tests
50
- * world2d display objects; Three's raycaster handles the world3d canvas. Because each
51
- * surface owns its own canvas/DOM node, a click on the HUD does not also pick the Pixi
52
- * world beneath it, and vice-versa — no cross-surface double-picking.
53
- */
54
- export class Clickable2D extends GameComponent {
55
- static declaredKind = 'pixijs';
56
- static schema = z.object({
57
- tints: z
58
- .array(z.string())
59
- .default(['#ff6b6b', '#4ecdc4', '#ffd23f', '#a06bff'])
60
- .describe('Tint cycle'),
61
- });
62
- tints = ['#ff6b6b', '#4ecdc4', '#ffd23f', '#a06bff'];
63
- idx = 0;
64
- handler = () => {
65
- this.idx = (this.idx + 1) % this.tints.length;
66
- this.node.tint = Number.parseInt(this.tints[this.idx].replace('#', ''), 16);
67
- };
68
- init() {
69
- this.node.eventMode = 'static';
70
- this.node.cursor = 'pointer';
71
- this.node.on('pointerdown', this.handler);
72
- }
73
- update() { }
74
- dispose() {
75
- this.node.off('pointerdown', this.handler);
76
- }
77
- }
@@ -1,34 +0,0 @@
1
- /**
2
- * world2d — the PixiJS 2D render surface for vgai.
3
- *
4
- * A peer to the Three.js world3d surface and the React UI surface (ARCHITECTURE.md
5
- * §Render Surfaces). It LITERALLY reuses the engine's loop primitives (`createGameLoop`,
6
- * `createSystemRunner`, `PHASE_ORDER`) and faithfully MIRRORS the entity / authored-data
7
- * model as a 2D twin (`Scene2D`), instantiating entities as PixiJS display objects
8
- * instead of Object3Ds, with 2D physics/collision via native Rapier 2D — built on
9
- * native libraries with thin adapters. Gameplay behavior attaches via the SAME
10
- * `GameComponent<'pixijs'>` (`ecs/game-component.ts`) and unified `ComponentManager`
11
- * (`ecs/component-manager.ts`) every threejs world uses (T7.3).
12
- *
13
- * See docs/PIXI-WORLD2D-MAXIMAL-SPEC.json (FROZEN).
14
- */
15
- export { AuthoringAdapter2D, type EditorNode2D, type Overlay2D, type Override2D, type Property2D, type Transform2DValue, } from './authoring-2d';
16
- export { captureToScene2D } from './capture-to-scene2d';
17
- export { type Collision2DSystem, createCollision2DSystem, createTriggerDispatch2D, } from './collision-2d';
18
- export { Camera2DFollow, Clickable2D } from './components-2d';
19
- export { type EmbedMount2D, type IframeReachableMount2D, mountIngestGame2DEmbed, mountIngestGame2DIframeReachable, } from './ingest-iframe-2d';
20
- export { type IngestGame2D, type IngestMount2D, mountIngestGame2D } from './ingest2d';
21
- export { createPhysics2DRegistry, type Physics2DRefs, type Physics2DRegistry, } from './physics2d-registry';
22
- export { createWorld2DRuntime, type MountedGame2D, type PixiSceneConfig, PixiSceneGameAdapter, type World2DHost, type World2DSession, type World2DSetupFn, } from './pixi-game-adapter';
23
- export { createPixiSurface, type PixiSurface, type PixiSurfaceOptions } from './pixi-surface';
24
- export { type CapturedRuntime2D, installSceneCapture2D, type SceneCapture2DHandle, } from './scene-capture-2d';
25
- export { loadScene2DFromData, type Scene2DInstance } from './scene2d-loader';
26
- export * from './schema/entity2d';
27
- export * from './schema/physics2d';
28
- export * from './schema/sprite';
29
- export * from './schema/tilemap';
30
- export * from './schema/tuples2d';
31
- export { createPhysicsAdapter2D, type PhysicsAdapter2D } from './system-adapters-2d';
32
- export { createTransformWriter2D } from './transform-writer-2d';
33
- export type { Component2DRegistry, World2DContext } from './types';
34
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/world2d/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,gBAAgB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,gCAAgC,GACjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EACL,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EACL,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC7E,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
@@ -1,32 +0,0 @@
1
- /**
2
- * world2d — the PixiJS 2D render surface for vgai.
3
- *
4
- * A peer to the Three.js world3d surface and the React UI surface (ARCHITECTURE.md
5
- * §Render Surfaces). It LITERALLY reuses the engine's loop primitives (`createGameLoop`,
6
- * `createSystemRunner`, `PHASE_ORDER`) and faithfully MIRRORS the entity / authored-data
7
- * model as a 2D twin (`Scene2D`), instantiating entities as PixiJS display objects
8
- * instead of Object3Ds, with 2D physics/collision via native Rapier 2D — built on
9
- * native libraries with thin adapters. Gameplay behavior attaches via the SAME
10
- * `GameComponent<'pixijs'>` (`ecs/game-component.ts`) and unified `ComponentManager`
11
- * (`ecs/component-manager.ts`) every threejs world uses (T7.3).
12
- *
13
- * See docs/PIXI-WORLD2D-MAXIMAL-SPEC.json (FROZEN).
14
- */
15
- export { AuthoringAdapter2D, } from './authoring-2d';
16
- export { captureToScene2D } from './capture-to-scene2d';
17
- export { createCollision2DSystem, createTriggerDispatch2D, } from './collision-2d';
18
- export { Camera2DFollow, Clickable2D } from './components-2d';
19
- export { mountIngestGame2DEmbed, mountIngestGame2DIframeReachable, } from './ingest-iframe-2d';
20
- export { mountIngestGame2D } from './ingest2d';
21
- export { createPhysics2DRegistry, } from './physics2d-registry';
22
- export { createWorld2DRuntime, PixiSceneGameAdapter, } from './pixi-game-adapter';
23
- export { createPixiSurface } from './pixi-surface';
24
- export { installSceneCapture2D, } from './scene-capture-2d';
25
- export { loadScene2DFromData } from './scene2d-loader';
26
- export * from './schema/entity2d';
27
- export * from './schema/physics2d';
28
- export * from './schema/sprite';
29
- export * from './schema/tilemap';
30
- export * from './schema/tuples2d';
31
- export { createPhysicsAdapter2D } from './system-adapters-2d';
32
- export { createTransformWriter2D } from './transform-writer-2d';