@aura3d/engine 1.3.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. package/README.md +126 -19
  2. package/dist/animation/library/performanceStateGraph.d.ts +11 -3
  3. package/dist/animation/library/performanceStateGraph.d.ts.map +1 -1
  4. package/dist/animation/library/performanceStateGraph.js +61 -5
  5. package/dist/animation/library/performanceStateGraph.js.map +1 -1
  6. package/dist/animation/library/standardHumanoidClips.d.ts +3 -3
  7. package/dist/animation/library/standardHumanoidClips.d.ts.map +1 -1
  8. package/dist/animation/library/standardHumanoidClips.js +179 -4
  9. package/dist/animation/library/standardHumanoidClips.js.map +1 -1
  10. package/dist/assets/GLTFLoader.js +1 -0
  11. package/dist/assets/GLTFLoader.js.map +1 -1
  12. package/dist/assets/GLTFRenderResources.d.ts.map +1 -1
  13. package/dist/assets/GLTFRenderResources.js +68 -16
  14. package/dist/assets/GLTFRenderResources.js.map +1 -1
  15. package/dist/assets/KTX2BasisTextureTranscoder.js +1 -0
  16. package/dist/assets/KTX2BasisTextureTranscoder.js.map +1 -1
  17. package/dist/aura3d-cli/asset-constants.d.ts +5 -0
  18. package/dist/aura3d-cli/asset-constants.d.ts.map +1 -0
  19. package/dist/aura3d-cli/asset-constants.js +5 -0
  20. package/dist/aura3d-cli/asset-constants.js.map +1 -0
  21. package/dist/aura3d-cli/asset-core-types.d.ts +206 -0
  22. package/dist/aura3d-cli/asset-core-types.d.ts.map +1 -0
  23. package/dist/aura3d-cli/asset-core-types.js +2 -0
  24. package/dist/aura3d-cli/asset-core-types.js.map +1 -0
  25. package/dist/aura3d-cli/asset-inspection-types.d.ts +131 -0
  26. package/dist/aura3d-cli/asset-inspection-types.d.ts.map +1 -0
  27. package/dist/aura3d-cli/asset-inspection-types.js +2 -0
  28. package/dist/aura3d-cli/asset-inspection-types.js.map +1 -0
  29. package/dist/aura3d-cli/asset-manifest.d.ts +8 -0
  30. package/dist/aura3d-cli/asset-manifest.d.ts.map +1 -0
  31. package/dist/aura3d-cli/asset-manifest.js +116 -0
  32. package/dist/aura3d-cli/asset-manifest.js.map +1 -0
  33. package/dist/aura3d-cli/asset-readiness-types.d.ts +164 -0
  34. package/dist/aura3d-cli/asset-readiness-types.d.ts.map +1 -0
  35. package/dist/aura3d-cli/asset-readiness-types.js +2 -0
  36. package/dist/aura3d-cli/asset-readiness-types.js.map +1 -0
  37. package/dist/aura3d-cli/asset-source-ast.d.ts +8 -0
  38. package/dist/aura3d-cli/asset-source-ast.d.ts.map +1 -0
  39. package/dist/aura3d-cli/asset-source-ast.js +241 -0
  40. package/dist/aura3d-cli/asset-source-ast.js.map +1 -0
  41. package/dist/aura3d-cli/asset-source-roles.d.ts +4 -0
  42. package/dist/aura3d-cli/asset-source-roles.d.ts.map +1 -0
  43. package/dist/aura3d-cli/asset-source-roles.js +79 -0
  44. package/dist/aura3d-cli/asset-source-roles.js.map +1 -0
  45. package/dist/aura3d-cli/asset-source-validation.d.ts +4 -0
  46. package/dist/aura3d-cli/asset-source-validation.d.ts.map +1 -0
  47. package/dist/aura3d-cli/asset-source-validation.js +200 -0
  48. package/dist/aura3d-cli/asset-source-validation.js.map +1 -0
  49. package/dist/aura3d-cli/character-assembly-types.d.ts +39 -0
  50. package/dist/aura3d-cli/character-assembly-types.d.ts.map +1 -0
  51. package/dist/aura3d-cli/character-assembly-types.js +2 -0
  52. package/dist/aura3d-cli/character-assembly-types.js.map +1 -0
  53. package/dist/aura3d-cli/cli-help.d.ts +4 -0
  54. package/dist/aura3d-cli/cli-help.d.ts.map +1 -0
  55. package/dist/aura3d-cli/cli-help.js +48 -0
  56. package/dist/aura3d-cli/cli-help.js.map +1 -0
  57. package/dist/aura3d-cli/cli-options.d.ts +66 -0
  58. package/dist/aura3d-cli/cli-options.d.ts.map +1 -0
  59. package/dist/aura3d-cli/cli-options.js +234 -0
  60. package/dist/aura3d-cli/cli-options.js.map +1 -0
  61. package/dist/aura3d-cli/cli.js +20 -177
  62. package/dist/aura3d-cli/cli.js.map +1 -1
  63. package/dist/aura3d-cli/index.d.ts +12 -402
  64. package/dist/aura3d-cli/index.d.ts.map +1 -1
  65. package/dist/aura3d-cli/index.js +948 -90
  66. package/dist/aura3d-cli/index.js.map +1 -1
  67. package/dist/aura3d-cli/pull-bridge/adapters.d.ts +4 -0
  68. package/dist/aura3d-cli/pull-bridge/adapters.d.ts.map +1 -0
  69. package/dist/aura3d-cli/pull-bridge/adapters.js +38 -0
  70. package/dist/aura3d-cli/pull-bridge/adapters.js.map +1 -0
  71. package/dist/aura3d-cli/pull-bridge/download.d.ts +6 -0
  72. package/dist/aura3d-cli/pull-bridge/download.d.ts.map +1 -0
  73. package/dist/aura3d-cli/pull-bridge/download.js +208 -0
  74. package/dist/aura3d-cli/pull-bridge/download.js.map +1 -0
  75. package/dist/aura3d-cli/pull-bridge/profiles.d.ts +14 -0
  76. package/dist/aura3d-cli/pull-bridge/profiles.d.ts.map +1 -0
  77. package/dist/aura3d-cli/pull-bridge/profiles.js +63 -0
  78. package/dist/aura3d-cli/pull-bridge/profiles.js.map +1 -0
  79. package/dist/aura3d-cli/pull-bridge/provenance.d.ts +9 -0
  80. package/dist/aura3d-cli/pull-bridge/provenance.d.ts.map +1 -0
  81. package/dist/aura3d-cli/pull-bridge/provenance.js +99 -0
  82. package/dist/aura3d-cli/pull-bridge/provenance.js.map +1 -0
  83. package/dist/aura3d-cli/pull-bridge/pullable.d.ts +14 -0
  84. package/dist/aura3d-cli/pull-bridge/pullable.d.ts.map +1 -0
  85. package/dist/aura3d-cli/pull-bridge/pullable.js +58 -0
  86. package/dist/aura3d-cli/pull-bridge/pullable.js.map +1 -0
  87. package/dist/aura3d-cli/pull-bridge/scoring.d.ts +21 -0
  88. package/dist/aura3d-cli/pull-bridge/scoring.d.ts.map +1 -0
  89. package/dist/aura3d-cli/pull-bridge/scoring.js +177 -0
  90. package/dist/aura3d-cli/pull-bridge/scoring.js.map +1 -0
  91. package/dist/aura3d-cli/pull-bridge/search.d.ts +39 -0
  92. package/dist/aura3d-cli/pull-bridge/search.d.ts.map +1 -0
  93. package/dist/aura3d-cli/pull-bridge/search.js +114 -0
  94. package/dist/aura3d-cli/pull-bridge/search.js.map +1 -0
  95. package/dist/aura3d-cli/pull-bridge/types.d.ts +9 -0
  96. package/dist/aura3d-cli/pull-bridge/types.d.ts.map +1 -0
  97. package/dist/aura3d-cli/pull-bridge/types.js +2 -0
  98. package/dist/aura3d-cli/pull-bridge/types.js.map +1 -0
  99. package/dist/aura3d-cli/pull-bridge/vector3.d.ts +2 -0
  100. package/dist/aura3d-cli/pull-bridge/vector3.d.ts.map +1 -0
  101. package/dist/aura3d-cli/pull-bridge/vector3.js +4 -0
  102. package/dist/aura3d-cli/pull-bridge/vector3.js.map +1 -0
  103. package/dist/aura3d-cli/pull-bridge.d.ts +18 -100
  104. package/dist/aura3d-cli/pull-bridge.d.ts.map +1 -1
  105. package/dist/aura3d-cli/pull-bridge.js +59 -526
  106. package/dist/aura3d-cli/pull-bridge.js.map +1 -1
  107. package/dist/create-aura3d/cli.js +10 -0
  108. package/dist/create-aura3d/cli.js.map +1 -1
  109. package/dist/create-aura3d/index.d.ts +1 -1
  110. package/dist/create-aura3d/index.d.ts.map +1 -1
  111. package/dist/create-aura3d/index.js +11 -2
  112. package/dist/create-aura3d/index.js.map +1 -1
  113. package/dist/create-aura3d/showcase-spec-artifacts.d.ts +104 -0
  114. package/dist/create-aura3d/showcase-spec-artifacts.d.ts.map +1 -0
  115. package/dist/create-aura3d/showcase-spec-artifacts.js +142 -0
  116. package/dist/create-aura3d/showcase-spec-artifacts.js.map +1 -0
  117. package/dist/create-aura3d/showcase-spec-category-plan.d.ts +15 -0
  118. package/dist/create-aura3d/showcase-spec-category-plan.d.ts.map +1 -0
  119. package/dist/create-aura3d/showcase-spec-category-plan.js +45 -0
  120. package/dist/create-aura3d/showcase-spec-category-plan.js.map +1 -0
  121. package/dist/create-aura3d/showcase-spec-compiler.d.ts +5 -0
  122. package/dist/create-aura3d/showcase-spec-compiler.d.ts.map +1 -0
  123. package/dist/create-aura3d/showcase-spec-compiler.js +240 -0
  124. package/dist/create-aura3d/showcase-spec-compiler.js.map +1 -0
  125. package/dist/create-aura3d/showcase-spec-evidence.d.ts +7 -0
  126. package/dist/create-aura3d/showcase-spec-evidence.d.ts.map +1 -0
  127. package/dist/create-aura3d/showcase-spec-evidence.js +815 -0
  128. package/dist/create-aura3d/showcase-spec-evidence.js.map +1 -0
  129. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts +21 -0
  130. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts.map +1 -0
  131. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js +725 -0
  132. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js.map +1 -0
  133. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.d.ts +14 -0
  134. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.d.ts.map +1 -0
  135. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.js +219 -0
  136. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.js.map +1 -0
  137. package/dist/create-aura3d/showcase-spec-game-template-evidence.d.ts +72 -0
  138. package/dist/create-aura3d/showcase-spec-game-template-evidence.d.ts.map +1 -0
  139. package/dist/create-aura3d/showcase-spec-game-template-evidence.js +435 -0
  140. package/dist/create-aura3d/showcase-spec-game-template-evidence.js.map +1 -0
  141. package/dist/create-aura3d/showcase-spec-gameplay-evidence.d.ts +3 -0
  142. package/dist/create-aura3d/showcase-spec-gameplay-evidence.d.ts.map +1 -0
  143. package/dist/create-aura3d/showcase-spec-gameplay-evidence.js +108 -0
  144. package/dist/create-aura3d/showcase-spec-gameplay-evidence.js.map +1 -0
  145. package/dist/create-aura3d/showcase-spec-parser.d.ts +3 -0
  146. package/dist/create-aura3d/showcase-spec-parser.d.ts.map +1 -0
  147. package/dist/create-aura3d/showcase-spec-parser.js +662 -0
  148. package/dist/create-aura3d/showcase-spec-parser.js.map +1 -0
  149. package/dist/create-aura3d/showcase-spec-platformer-artifacts.d.ts +3 -0
  150. package/dist/create-aura3d/showcase-spec-platformer-artifacts.d.ts.map +1 -0
  151. package/dist/create-aura3d/showcase-spec-platformer-artifacts.js +276 -0
  152. package/dist/create-aura3d/showcase-spec-platformer-artifacts.js.map +1 -0
  153. package/dist/create-aura3d/showcase-spec-racing-artifacts.d.ts +3 -0
  154. package/dist/create-aura3d/showcase-spec-racing-artifacts.d.ts.map +1 -0
  155. package/dist/create-aura3d/showcase-spec-racing-artifacts.js +273 -0
  156. package/dist/create-aura3d/showcase-spec-racing-artifacts.js.map +1 -0
  157. package/dist/create-aura3d/showcase-spec-replacement-apply.d.ts +10 -0
  158. package/dist/create-aura3d/showcase-spec-replacement-apply.d.ts.map +1 -0
  159. package/dist/create-aura3d/showcase-spec-replacement-apply.js +166 -0
  160. package/dist/create-aura3d/showcase-spec-replacement-apply.js.map +1 -0
  161. package/dist/create-aura3d/showcase-spec-replacement-candidates.d.ts +16 -0
  162. package/dist/create-aura3d/showcase-spec-replacement-candidates.d.ts.map +1 -0
  163. package/dist/create-aura3d/showcase-spec-replacement-candidates.js +244 -0
  164. package/dist/create-aura3d/showcase-spec-replacement-candidates.js.map +1 -0
  165. package/dist/create-aura3d/showcase-spec-replacement-game-geometry.d.ts +4 -0
  166. package/dist/create-aura3d/showcase-spec-replacement-game-geometry.d.ts.map +1 -0
  167. package/dist/create-aura3d/showcase-spec-replacement-game-geometry.js +175 -0
  168. package/dist/create-aura3d/showcase-spec-replacement-game-geometry.js.map +1 -0
  169. package/dist/create-aura3d/showcase-spec-replacement-manifest.d.ts +41 -0
  170. package/dist/create-aura3d/showcase-spec-replacement-manifest.d.ts.map +1 -0
  171. package/dist/create-aura3d/showcase-spec-replacement-manifest.js +62 -0
  172. package/dist/create-aura3d/showcase-spec-replacement-manifest.js.map +1 -0
  173. package/dist/create-aura3d/showcase-spec-replacement-values.d.ts +9 -0
  174. package/dist/create-aura3d/showcase-spec-replacement-values.d.ts.map +1 -0
  175. package/dist/create-aura3d/showcase-spec-replacement-values.js +41 -0
  176. package/dist/create-aura3d/showcase-spec-replacement-values.js.map +1 -0
  177. package/dist/create-aura3d/showcase-spec-replacement.d.ts +13 -0
  178. package/dist/create-aura3d/showcase-spec-replacement.d.ts.map +1 -0
  179. package/dist/create-aura3d/showcase-spec-replacement.js +144 -0
  180. package/dist/create-aura3d/showcase-spec-replacement.js.map +1 -0
  181. package/dist/create-aura3d/showcase-spec-types.d.ts +304 -0
  182. package/dist/create-aura3d/showcase-spec-types.d.ts.map +1 -0
  183. package/dist/create-aura3d/showcase-spec-types.js +2 -0
  184. package/dist/create-aura3d/showcase-spec-types.js.map +1 -0
  185. package/dist/ecs/SystemScheduler.js +5 -4
  186. package/dist/ecs/SystemScheduler.js.map +1 -1
  187. package/dist/ecs/components/CameraComponent.d.ts +30 -0
  188. package/dist/ecs/components/CameraComponent.d.ts.map +1 -0
  189. package/dist/ecs/components/CameraComponent.js +27 -0
  190. package/dist/ecs/components/CameraComponent.js.map +1 -0
  191. package/dist/ecs/components/HierarchyComponent.d.ts +10 -0
  192. package/dist/ecs/components/HierarchyComponent.d.ts.map +1 -1
  193. package/dist/ecs/components/HierarchyComponent.js +10 -0
  194. package/dist/ecs/components/HierarchyComponent.js.map +1 -1
  195. package/dist/ecs/components/LightComponent.d.ts +18 -0
  196. package/dist/ecs/components/LightComponent.d.ts.map +1 -0
  197. package/dist/ecs/components/LightComponent.js +17 -0
  198. package/dist/ecs/components/LightComponent.js.map +1 -0
  199. package/dist/ecs/components/MeshComponent.d.ts +19 -0
  200. package/dist/ecs/components/MeshComponent.d.ts.map +1 -0
  201. package/dist/ecs/components/MeshComponent.js +21 -0
  202. package/dist/ecs/components/MeshComponent.js.map +1 -0
  203. package/dist/ecs/components/WorldTransformComponent.d.ts +12 -0
  204. package/dist/ecs/components/WorldTransformComponent.d.ts.map +1 -0
  205. package/dist/ecs/components/WorldTransformComponent.js +22 -0
  206. package/dist/ecs/components/WorldTransformComponent.js.map +1 -0
  207. package/dist/ecs/index.d.ts +4 -0
  208. package/dist/ecs/index.d.ts.map +1 -1
  209. package/dist/ecs/index.js +4 -0
  210. package/dist/ecs/index.js.map +1 -1
  211. package/dist/ecs/systems/CameraSystem.d.ts +17 -0
  212. package/dist/ecs/systems/CameraSystem.d.ts.map +1 -0
  213. package/dist/ecs/systems/CameraSystem.js +38 -0
  214. package/dist/ecs/systems/CameraSystem.js.map +1 -0
  215. package/dist/ecs/systems/TransformSystem.d.ts +16 -0
  216. package/dist/ecs/systems/TransformSystem.d.ts.map +1 -0
  217. package/dist/ecs/systems/TransformSystem.js +99 -0
  218. package/dist/ecs/systems/TransformSystem.js.map +1 -0
  219. package/dist/ecs/systems/index.d.ts +2 -0
  220. package/dist/ecs/systems/index.d.ts.map +1 -1
  221. package/dist/ecs/systems/index.js +2 -0
  222. package/dist/ecs/systems/index.js.map +1 -1
  223. package/dist/engine/agent-api/GameAssetValidation.d.ts +5 -0
  224. package/dist/engine/agent-api/GameAssetValidation.d.ts.map +1 -1
  225. package/dist/engine/agent-api/GameAssetValidation.js +103 -0
  226. package/dist/engine/agent-api/GameAssetValidation.js.map +1 -1
  227. package/dist/engine/agent-api/GameEvidence.d.ts +14 -1
  228. package/dist/engine/agent-api/GameEvidence.d.ts.map +1 -1
  229. package/dist/engine/agent-api/GameEvidence.js +77 -6
  230. package/dist/engine/agent-api/GameEvidence.js.map +1 -1
  231. package/dist/engine/agent-api/GameGenreKits.d.ts +473 -0
  232. package/dist/engine/agent-api/GameGenreKits.d.ts.map +1 -0
  233. package/dist/engine/agent-api/GameGenreKits.js +1269 -0
  234. package/dist/engine/agent-api/GameGenreKits.js.map +1 -0
  235. package/dist/engine/agent-api/GameRuntime.d.ts +190 -3
  236. package/dist/engine/agent-api/GameRuntime.d.ts.map +1 -1
  237. package/dist/engine/agent-api/GameRuntime.js +431 -2
  238. package/dist/engine/agent-api/GameRuntime.js.map +1 -1
  239. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts +181 -0
  240. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts.map +1 -0
  241. package/dist/engine/agent-api/GameSceneGeometryBindings.js +488 -0
  242. package/dist/engine/agent-api/GameSceneGeometryBindings.js.map +1 -0
  243. package/dist/engine/agent-api/GameSceneGeometryMath.d.ts +39 -0
  244. package/dist/engine/agent-api/GameSceneGeometryMath.d.ts.map +1 -0
  245. package/dist/engine/agent-api/GameSceneGeometryMath.js +89 -0
  246. package/dist/engine/agent-api/GameSceneGeometryMath.js.map +1 -0
  247. package/dist/engine/agent-api/RuntimeNodeHandle.d.ts +4 -0
  248. package/dist/engine/agent-api/RuntimeNodeHandle.d.ts.map +1 -1
  249. package/dist/engine/agent-api/RuntimeNodeHandle.js +2 -0
  250. package/dist/engine/agent-api/RuntimeNodeHandle.js.map +1 -1
  251. package/dist/engine/agent-api/SceneGroundingUtils.d.ts +86 -0
  252. package/dist/engine/agent-api/SceneGroundingUtils.d.ts.map +1 -1
  253. package/dist/engine/agent-api/SceneGroundingUtils.js +116 -0
  254. package/dist/engine/agent-api/SceneGroundingUtils.js.map +1 -1
  255. package/dist/engine/agent-api/index.d.ts +149 -5
  256. package/dist/engine/agent-api/index.d.ts.map +1 -1
  257. package/dist/engine/agent-api/index.js +1964 -141
  258. package/dist/engine/agent-api/index.js.map +1 -1
  259. package/dist/engine/agent-api/product-viewer-runtime.d.ts.map +1 -1
  260. package/dist/engine/ecs/ECSRenderSource.d.ts +29 -0
  261. package/dist/engine/ecs/ECSRenderSource.d.ts.map +1 -0
  262. package/dist/engine/ecs/ECSRenderSource.js +189 -0
  263. package/dist/engine/ecs/ECSRenderSource.js.map +1 -0
  264. package/dist/engine/index.d.ts +1 -0
  265. package/dist/engine/index.d.ts.map +1 -1
  266. package/dist/engine/index.js +1 -0
  267. package/dist/engine/index.js.map +1 -1
  268. package/dist/engine/production-runtime/TypedGLBActor.d.ts +14 -2
  269. package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
  270. package/dist/engine/production-runtime/TypedGLBActor.js +95 -4
  271. package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
  272. package/dist/physics/Constraint.d.ts.map +1 -1
  273. package/dist/physics/Constraint.js +3 -3
  274. package/dist/physics/Constraint.js.map +1 -1
  275. package/dist/physics/Shape.d.ts +1 -0
  276. package/dist/physics/Shape.d.ts.map +1 -1
  277. package/dist/physics/Shape.js +12 -0
  278. package/dist/physics/Shape.js.map +1 -1
  279. package/dist/rendering/ForwardPass.d.ts +1 -0
  280. package/dist/rendering/ForwardPass.d.ts.map +1 -1
  281. package/dist/rendering/ForwardPass.js +29 -6
  282. package/dist/rendering/ForwardPass.js.map +1 -1
  283. package/dist/rendering/MorphTarget.d.ts +1 -0
  284. package/dist/rendering/MorphTarget.d.ts.map +1 -1
  285. package/dist/rendering/MorphTarget.js.map +1 -1
  286. package/dist/rendering/Renderer.js +7 -1
  287. package/dist/rendering/Renderer.js.map +1 -1
  288. package/dist/rendering/SkinnedLitMaterial.d.ts +9 -0
  289. package/dist/rendering/SkinnedLitMaterial.d.ts.map +1 -1
  290. package/dist/rendering/SkinnedLitMaterial.js +20 -1
  291. package/dist/rendering/SkinnedLitMaterial.js.map +1 -1
  292. package/dist/rendering/performance/RenderItemSorting.d.ts +2 -1
  293. package/dist/rendering/performance/RenderItemSorting.d.ts.map +1 -1
  294. package/dist/rendering/performance/RenderItemSorting.js +5 -2
  295. package/dist/rendering/performance/RenderItemSorting.js.map +1 -1
  296. package/package.json +24 -24
  297. package/templates/mini-game/README.md +13 -0
  298. package/templates/mini-game/index.html +1 -1
  299. package/templates/mini-game/package.json +1 -1
  300. package/templates/mini-game/src/main.ts +251 -21
  301. package/templates/mini-game/tests/playable.spec.ts +49 -0
  302. package/templates/mini-game/tests/screenshot.spec.ts +37 -32
@@ -0,0 +1,304 @@
1
+ export type ShowcaseSpecClaimLabel = "createAuraApp" | "prototype" | "roadmap";
2
+ export type ShowcaseSpecFinalStatus = "release-ready candidate" | "prototype-blocked" | "internal-diagnostic" | "removed-from-public-showcase";
3
+ export type ShowcaseSpecReplacementRequiredRole = "architecture" | "building" | "character" | "data-station" | "effect-core" | "environment" | "facility" | "industrial" | "level" | "platformer-world" | "stage" | "track" | "vehicle" | "world";
4
+ export interface ShowcaseSpecAssetPolicy {
5
+ readonly allowReplacement: boolean;
6
+ readonly replacementQuery?: string;
7
+ readonly requiredRole?: ShowcaseSpecReplacementRequiredRole;
8
+ readonly minQuality?: "candidate" | "release";
9
+ readonly requireRenderedProbe?: boolean;
10
+ readonly requireDeployPass?: boolean;
11
+ }
12
+ export interface ShowcaseSpecAsset {
13
+ readonly id: string;
14
+ readonly role: string;
15
+ readonly typedRef: string;
16
+ readonly quality: "release" | "candidate" | "prototype";
17
+ readonly hasDurableProvenance: boolean;
18
+ readonly hasRenderedProbe: boolean;
19
+ readonly hasOrientationEvidence: boolean;
20
+ readonly hasForegroundBounds: boolean;
21
+ readonly assetPolicy?: ShowcaseSpecAssetPolicy;
22
+ }
23
+ export interface ShowcaseSpecCapability {
24
+ readonly name: string;
25
+ readonly status: "root-proven" | "partial" | "internal-only" | "roadmap" | "unsupported";
26
+ readonly evidence?: string;
27
+ }
28
+ export type ShowcasePlatformerGameplayRequirement = "movement" | "jump" | "checkpoint" | "progression";
29
+ export type ShowcasePlatformerPlayableSurfaceSource = "asset-bound-playable-surfaces" | "asset-derived-playable-surfaces" | "authored-route-rectangles";
30
+ export type ShowcaseGeometryEvidenceSource = "asset-mesh-extracted" | "manifest-authored" | "manifest-authored-overlay-validated" | "compiler-authored" | "compiler-authored-overlay-validated";
31
+ export interface ShowcaseRacingTrackTopologyPoint {
32
+ readonly x: number;
33
+ readonly z: number;
34
+ readonly width?: number;
35
+ }
36
+ export interface ShowcaseRacingTrackTopologyCheckpoint {
37
+ readonly progress: number;
38
+ readonly width: number;
39
+ }
40
+ export interface ShowcaseGeometryEvidenceRef {
41
+ readonly sourceAsset: string;
42
+ readonly renderedProbe?: string;
43
+ readonly routeOverlay?: string;
44
+ readonly notes: string;
45
+ }
46
+ export interface ShowcaseGeometryModelBounds {
47
+ readonly min: readonly [number, number, number];
48
+ readonly max: readonly [number, number, number];
49
+ }
50
+ export interface ShowcaseRacingTopologyModelAlignment {
51
+ readonly source: ShowcaseGeometryEvidenceSource;
52
+ readonly modelBounds: ShowcaseGeometryModelBounds;
53
+ readonly modelPoint: readonly [number, number, number];
54
+ readonly gamePoint: {
55
+ readonly x: number;
56
+ readonly z: number;
57
+ };
58
+ readonly anchorPairs?: readonly {
59
+ readonly id: string;
60
+ readonly modelPoint: readonly [number, number, number];
61
+ readonly gamePoint: {
62
+ readonly x: number;
63
+ readonly z: number;
64
+ };
65
+ }[];
66
+ readonly evidence: {
67
+ readonly routeOverlay?: string;
68
+ readonly notes: string;
69
+ };
70
+ }
71
+ export interface ShowcasePlatformerSurfaceModelAlignment {
72
+ readonly source: ShowcaseGeometryEvidenceSource;
73
+ readonly modelBounds: ShowcaseGeometryModelBounds;
74
+ readonly modelPoint: readonly [number, number, number];
75
+ readonly gamePoint: {
76
+ readonly x: number;
77
+ readonly y: number;
78
+ };
79
+ readonly anchorPairs?: readonly {
80
+ readonly id: string;
81
+ readonly modelPoint: readonly [number, number, number];
82
+ readonly gamePoint: {
83
+ readonly x: number;
84
+ readonly y: number;
85
+ };
86
+ }[];
87
+ readonly evidence: {
88
+ readonly routeOverlay?: string;
89
+ readonly notes: string;
90
+ };
91
+ }
92
+ export type ShowcaseGameAssetPairEvidenceCategory = "racing" | "platformer";
93
+ export type ShowcaseGameAssetPairEvidenceVerdict = "pass" | "fail";
94
+ export interface ShowcaseGameAssetPairEvidence {
95
+ readonly category: ShowcaseGameAssetPairEvidenceCategory;
96
+ readonly assets: readonly string[];
97
+ readonly screenshotEvidence: string;
98
+ readonly routePrimaryProbe?: string;
99
+ readonly screenshotSha256?: string;
100
+ readonly verdict: ShowcaseGameAssetPairEvidenceVerdict;
101
+ readonly notes: string;
102
+ readonly blockers: readonly string[];
103
+ }
104
+ export interface ShowcaseRacingTrackTopology {
105
+ readonly assetId: string;
106
+ readonly assetHash: string;
107
+ readonly source: ShowcaseGeometryEvidenceSource;
108
+ readonly roadCenterline: readonly ShowcaseRacingTrackTopologyPoint[];
109
+ readonly checkpoints: readonly ShowcaseRacingTrackTopologyCheckpoint[];
110
+ readonly lapLengthMeters?: number;
111
+ readonly estimatedLapSeconds: number;
112
+ readonly confidence: number;
113
+ readonly modelAlignment: ShowcaseRacingTopologyModelAlignment;
114
+ readonly evidence: ShowcaseGeometryEvidenceRef;
115
+ }
116
+ export interface ShowcasePlatformerPlayableSurface {
117
+ readonly id: string;
118
+ readonly x: number;
119
+ readonly y: number;
120
+ readonly width: number;
121
+ readonly height: number;
122
+ readonly kind: "ground" | "platform" | "moving" | "hazard" | "checkpoint" | "finish";
123
+ }
124
+ export interface ShowcasePlatformerPlayableSurfaceMap {
125
+ readonly assetId: string;
126
+ readonly assetHash: string;
127
+ readonly source: ShowcaseGeometryEvidenceSource;
128
+ readonly surfaces: readonly ShowcasePlatformerPlayableSurface[];
129
+ readonly levelLength: number;
130
+ readonly estimatedCompletionSeconds: number;
131
+ readonly characterScaleRatio: number;
132
+ readonly confidence: number;
133
+ readonly modelAlignment: ShowcasePlatformerSurfaceModelAlignment;
134
+ readonly evidence: ShowcaseGeometryEvidenceRef;
135
+ }
136
+ export interface ShowcasePlatformerSpec {
137
+ readonly characterAsset: string;
138
+ readonly worldAssets: readonly string[];
139
+ readonly cameraIntent: "side-scroller";
140
+ readonly layoutConstraints: {
141
+ readonly keepCharacterReadable: boolean;
142
+ readonly uiAvoidsEvidenceArea: boolean;
143
+ };
144
+ readonly gameplayRequirements: readonly ShowcasePlatformerGameplayRequirement[];
145
+ readonly levelDesign: {
146
+ readonly minPlayableSeconds: number;
147
+ readonly minCheckpoints: number;
148
+ readonly requiresHazardRespawn: boolean;
149
+ readonly requiresFinish: boolean;
150
+ readonly authoredLevelFlow: boolean;
151
+ readonly playableSurfaceSource: ShowcasePlatformerPlayableSurfaceSource;
152
+ readonly playableSurfaceLayoutValidated: boolean;
153
+ readonly playableSurfaceEvidence?: string;
154
+ readonly playableSurfaceMap?: ShowcasePlatformerPlayableSurfaceMap;
155
+ readonly assetPairEvidence?: ShowcaseGameAssetPairEvidence;
156
+ readonly characterWorldScaleCompatible: boolean;
157
+ readonly styleCompatible: boolean;
158
+ readonly primitivePrimaryWorldRejected: boolean;
159
+ };
160
+ readonly releaseAssetRequirements: {
161
+ readonly characterRole: "character";
162
+ readonly worldRoles: readonly ("level" | "world" | "stage")[];
163
+ readonly requiresOrientationEvidence: boolean;
164
+ readonly requiresScaleNormalizationEvidence: boolean;
165
+ readonly requiresRenderedProbe: boolean;
166
+ readonly requiresDurableProvenance: boolean;
167
+ readonly requiresSuitabilityReason: boolean;
168
+ };
169
+ }
170
+ export type ShowcaseRacingGameplayRequirement = "throttle" | "steering" | "reset" | "checkpoint" | "lap" | "multi-lap";
171
+ export interface ShowcaseRacingSpec {
172
+ readonly vehicleAsset: string;
173
+ readonly trackAsset: string;
174
+ readonly cameraIntent: "track-overview";
175
+ readonly layoutConstraints: {
176
+ readonly keepVehicleReadable: boolean;
177
+ readonly keepTrackReadable: boolean;
178
+ readonly uiAvoidsEvidenceArea: boolean;
179
+ };
180
+ readonly gameplayRequirements: readonly ShowcaseRacingGameplayRequirement[];
181
+ readonly raceDesign: {
182
+ readonly minCheckpoints: number;
183
+ readonly minLaps: number;
184
+ readonly minLapSeconds: number;
185
+ readonly routeAlignedToTrackAsset: boolean;
186
+ readonly visibleTrackTopology: "asset-bound-road-topology" | "authored-route-over-visible-track" | "mesh-road-topology";
187
+ readonly trackTopologyEvidence?: string;
188
+ readonly trackTopology?: ShowcaseRacingTrackTopology;
189
+ readonly assetPairEvidence?: ShowcaseGameAssetPairEvidence;
190
+ readonly carTrackScaleCompatible: boolean;
191
+ readonly noDebugLocatorDisk: boolean;
192
+ };
193
+ readonly releaseAssetRequirements: {
194
+ readonly vehicleRole: "vehicle";
195
+ readonly trackRole: "track";
196
+ readonly requiresOrientationEvidence: boolean;
197
+ readonly requiresScaleNormalizationEvidence: boolean;
198
+ readonly requiresRenderedProbe: boolean;
199
+ readonly requiresDurableProvenance: boolean;
200
+ readonly requiresSuitabilityReason: boolean;
201
+ };
202
+ }
203
+ export type ShowcaseCategoryPlanKind = "architecture-environment" | "industrial-digital-twin" | "particle-diagnostic" | "data-diagnostic";
204
+ export type ShowcaseCategoryCameraIntent = "architecture-hero" | "industrial-overview" | "diagnostic-core" | "data-observatory";
205
+ export type ShowcaseCategoryBackendClaim = "webgl-particle" | "native-webgpu" | "fallback";
206
+ export interface ShowcaseCategoryPlan {
207
+ readonly kind: ShowcaseCategoryPlanKind;
208
+ readonly primaryAsset: string;
209
+ readonly cameraIntent: ShowcaseCategoryCameraIntent;
210
+ readonly backendClaim?: ShowcaseCategoryBackendClaim;
211
+ readonly layoutConstraints: {
212
+ readonly keepHeroReadable: boolean;
213
+ readonly uiAvoidsEvidenceArea: boolean;
214
+ };
215
+ readonly claims: {
216
+ readonly allowed: readonly string[];
217
+ readonly notAllowed: readonly string[];
218
+ };
219
+ }
220
+ export interface ShowcaseSpec {
221
+ readonly schema: "aura3d-showcase-spec/1.0";
222
+ readonly routeId: string;
223
+ readonly label: string;
224
+ readonly category: string;
225
+ readonly path: string;
226
+ readonly globalName: string;
227
+ readonly claimLabel: ShowcaseSpecClaimLabel;
228
+ readonly publicStatus: ShowcaseSpecFinalStatus;
229
+ readonly layout: {
230
+ readonly heroAsset: string;
231
+ readonly uiPlacement: "left-panel" | "right-panel" | "bottom-bar" | "none";
232
+ };
233
+ readonly platformer?: ShowcasePlatformerSpec;
234
+ readonly racing?: ShowcaseRacingSpec;
235
+ readonly categoryPlan?: ShowcaseCategoryPlan;
236
+ readonly primaryAssets: readonly ShowcaseSpecAsset[];
237
+ readonly evidence: {
238
+ readonly routePrimaryProbe: string;
239
+ readonly routePrimaryScreenshot: string;
240
+ readonly deployCommand: string;
241
+ readonly deployEvidence?: string;
242
+ readonly deployPassed: boolean;
243
+ readonly routePrimaryPassed: boolean;
244
+ readonly gameplayProof?: string;
245
+ readonly gameplayPassed?: boolean;
246
+ readonly releaseAssetProbes?: Readonly<Record<string, string>>;
247
+ };
248
+ readonly capabilities: readonly ShowcaseSpecCapability[];
249
+ }
250
+ export interface CompileShowcaseSpecOptions {
251
+ readonly outputDir: string;
252
+ readonly projectDir?: string;
253
+ }
254
+ export interface CompileShowcaseSpecFileOptions extends CompileShowcaseSpecOptions {
255
+ readonly specPath: string;
256
+ }
257
+ export interface CompileShowcaseSpecReport {
258
+ readonly ok: boolean;
259
+ readonly schema: "aura3d-showcase-spec-compile-report/1.0";
260
+ readonly routeId: string;
261
+ readonly finalStatus: ShowcaseSpecFinalStatus;
262
+ readonly generatedFiles: readonly string[];
263
+ readonly blockers: readonly string[];
264
+ readonly evidenceChecklistPath: string;
265
+ readonly routeGatePatchPath: string;
266
+ readonly rejectedAssets: readonly ShowcaseSpecRejectedAsset[];
267
+ readonly replacementCandidates: readonly ShowcaseSpecReplacementCandidate[];
268
+ readonly selectedReplacement?: ShowcaseSpecSelectedReplacement;
269
+ }
270
+ export interface ShowcaseSpecRejectedAsset {
271
+ readonly id: string;
272
+ readonly reason: "release-probe-blank" | "release-probe-failing" | "release-probe-missing" | "route-primary-clipped" | "route-primary-missing" | "route-primary-unreadable" | "game-asset-pair-failing";
273
+ readonly evidence: string;
274
+ readonly failures: readonly string[];
275
+ }
276
+ export interface ShowcaseSpecReplacementProvenance {
277
+ readonly sourcePage?: string;
278
+ readonly downloadUrl?: string;
279
+ readonly license?: string;
280
+ readonly licenseUrl?: string;
281
+ readonly author?: string;
282
+ readonly assetHash?: string;
283
+ }
284
+ export interface ShowcaseSpecReplacementCandidate {
285
+ readonly id: string;
286
+ readonly role: string;
287
+ readonly typedRef: string;
288
+ readonly score: number;
289
+ readonly reasons: readonly string[];
290
+ readonly penalties: readonly string[];
291
+ readonly provenance: ShowcaseSpecReplacementProvenance;
292
+ readonly evidence?: string;
293
+ readonly accepted: boolean;
294
+ readonly selected: boolean;
295
+ }
296
+ export interface ShowcaseSpecSelectedReplacement {
297
+ readonly replaces: string;
298
+ readonly id: string;
299
+ readonly role: string;
300
+ readonly score: number;
301
+ readonly reasons: readonly string[];
302
+ readonly provenance: ShowcaseSpecReplacementProvenance;
303
+ }
304
+ //# sourceMappingURL=showcase-spec-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"showcase-spec-types.d.ts","sourceRoot":"","sources":["../../../../packages/create-aura3d/src/showcase-spec-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=showcase-spec-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"showcase-spec-types.js","sourceRoot":"","sources":["../../../../packages/create-aura3d/src/showcase-spec-types.ts"],"names":[],"mappings":""}
@@ -62,10 +62,11 @@ function sortSystems(systems) {
62
62
  throw new ValidationError("ECS_SYSTEM_CYCLE", "ECS system dependency cycle rejected.");
63
63
  return result;
64
64
  function addEdge(from, to) {
65
- if (!byName.has(from))
66
- throw new ValidationError("MISSING_ECS_SYSTEM_DEPENDENCY", `Missing ECS system dependency: ${from}`);
67
- if (!byName.has(to))
68
- throw new ValidationError("MISSING_ECS_SYSTEM_DEPENDENCY", `Missing ECS system dependency: ${to}`);
65
+ // `before`/`after` are soft ordering constraints: if the referenced
66
+ // system is not registered (or runs in a different phase), the edge is
67
+ // simply skipped instead of failing the whole schedule.
68
+ if (!byName.has(from) || !byName.has(to))
69
+ return;
69
70
  const edges = graph.get(from);
70
71
  if (!edges.has(to)) {
71
72
  edges.add(to);
@@ -1 +1 @@
1
- {"version":3,"file":"SystemScheduler.js","sourceRoot":"","sources":["../../../../packages/ecs/src/SystemScheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SystemScheduler.js","sourceRoot":"","sources":["../../../../packages/ecs/src/SystemScheduler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ export type CameraKind = "perspective" | "orthographic";
2
+ /**
3
+ * Camera parameters + computed matrices for an ECS entity.
4
+ *
5
+ * {@link CameraSystem} computes `projectionMatrix`, `viewMatrix`, and
6
+ * `viewProjectionMatrix` each frame from the entity's
7
+ * {@link WorldTransformComponent}.
8
+ */
9
+ export declare class CameraComponent {
10
+ kind: CameraKind;
11
+ fovYRadians: number;
12
+ aspect: number;
13
+ near: number;
14
+ far: number;
15
+ left: number;
16
+ right: number;
17
+ bottom: number;
18
+ top: number;
19
+ zoom: number;
20
+ projectionMatrix: Float32Array<ArrayBuffer>;
21
+ viewMatrix: Float32Array<ArrayBuffer>;
22
+ viewProjectionMatrix: Float32Array<ArrayBuffer>;
23
+ viewport: {
24
+ x: number;
25
+ y: number;
26
+ width: number;
27
+ height: number;
28
+ };
29
+ }
30
+ //# sourceMappingURL=CameraComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/CameraComponent.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;AAExD;;;;;;GAMG;AACH,qBAAa,eAAe;IAC1B,IAAI,EAAE,UAAU,CAAiB;IAGjC,WAAW,SAAe;IAC1B,MAAM,SAAK;IACX,IAAI,SAAO;IACX,GAAG,SAAQ;IAGX,IAAI,SAAM;IACV,KAAK,SAAK;IACV,MAAM,SAAM;IACZ,GAAG,SAAK;IACR,IAAI,SAAK;IAGT,gBAAgB,4BAAwB;IACxC,UAAU,4BAAwB;IAClC,oBAAoB,4BAAwB;IAE5C,QAAQ;;;;;MAAuC;CAChD"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Camera parameters + computed matrices for an ECS entity.
3
+ *
4
+ * {@link CameraSystem} computes `projectionMatrix`, `viewMatrix`, and
5
+ * `viewProjectionMatrix` each frame from the entity's
6
+ * {@link WorldTransformComponent}.
7
+ */
8
+ export class CameraComponent {
9
+ kind = "perspective";
10
+ // Perspective
11
+ fovYRadians = Math.PI / 3;
12
+ aspect = 1;
13
+ near = 0.1;
14
+ far = 1000;
15
+ // Orthographic
16
+ left = -1;
17
+ right = 1;
18
+ bottom = -1;
19
+ top = 1;
20
+ zoom = 1;
21
+ // Computed each frame by CameraSystem
22
+ projectionMatrix = new Float32Array(16);
23
+ viewMatrix = new Float32Array(16);
24
+ viewProjectionMatrix = new Float32Array(16);
25
+ viewport = { x: 0, y: 0, width: 1, height: 1 };
26
+ }
27
+ //# sourceMappingURL=CameraComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraComponent.js","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/CameraComponent.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,OAAO,eAAe;IAC1B,IAAI,GAAe,aAAa,CAAC;IAEjC,cAAc;IACd,WAAW,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1B,MAAM,GAAG,CAAC,CAAC;IACX,IAAI,GAAG,GAAG,CAAC;IACX,GAAG,GAAG,IAAI,CAAC;IAEX,eAAe;IACf,IAAI,GAAG,CAAC,CAAC,CAAC;IACV,KAAK,GAAG,CAAC,CAAC;IACV,MAAM,GAAG,CAAC,CAAC,CAAC;IACZ,GAAG,GAAG,CAAC,CAAC;IACR,IAAI,GAAG,CAAC,CAAC;IAET,sCAAsC;IACtC,gBAAgB,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IACxC,UAAU,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAClC,oBAAoB,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAE5C,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;CAChD"}
@@ -8,6 +8,16 @@ export interface SerializedHierarchyComponent {
8
8
  readonly depth: number;
9
9
  }
10
10
  export declare class HierarchyComponent {
11
+ /**
12
+ * Parent entity, or `null` for root entities.
13
+ *
14
+ * Must be set via `HierarchySystem.setParent` (or `addChild`), which
15
+ * maintains {@link depth}, sibling links, and the parent's child list.
16
+ * Setting this field directly (including via the constructor argument)
17
+ * leaves `depth` stale at 0 — `TransformSystem` recomputes depth
18
+ * defensively for its parents-before-children ordering, but child/sibling
19
+ * bookkeeping will remain out of sync until `setParent` is used.
20
+ */
11
21
  parent: Entity | null;
12
22
  previousSibling: Entity | null;
13
23
  nextSibling: Entity | null;
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchyComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/HierarchyComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAyB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,kBAAkB;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClC,KAAK,SAAK;IACV,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;gBAElC,MAAM,GAAE,MAAM,GAAG,IAAW;IAIxC,IAAI,QAAQ,IAAI,SAAS,MAAM,EAAE,CAEhC;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,OAAO;IAItB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAItC,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIrD,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAKxC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAOpC,cAAc,IAAI,IAAI;IAItB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAO9C,MAAM,IAAI,4BAA4B;IAUtC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAkBrC;CACH"}
1
+ {"version":3,"file":"HierarchyComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/HierarchyComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAyB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAElE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,kBAAkB;IAC7B;;;;;;;;;OASG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACtC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClC,KAAK,SAAK;IACV,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;gBAElC,MAAM,GAAE,MAAM,GAAG,IAAW;IAIxC,IAAI,QAAQ,IAAI,SAAS,MAAM,EAAE,CAEhC;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,OAAO;IAItB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAItC,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIrD,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAKxC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIvC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAOpC,cAAc,IAAI,IAAI;IAItB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAO9C,MAAM,IAAI,4BAA4B;IAUtC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAkBrC;CACH"}
@@ -2,6 +2,16 @@ import { ValidationError } from "../../core/index.js";
2
2
  import {} from "../Component.js";
3
3
  import { entityKey, sameEntity } from "../Entity.js";
4
4
  export class HierarchyComponent {
5
+ /**
6
+ * Parent entity, or `null` for root entities.
7
+ *
8
+ * Must be set via `HierarchySystem.setParent` (or `addChild`), which
9
+ * maintains {@link depth}, sibling links, and the parent's child list.
10
+ * Setting this field directly (including via the constructor argument)
11
+ * leaves `depth` stale at 0 — `TransformSystem` recomputes depth
12
+ * defensively for its parents-before-children ordering, but child/sibling
13
+ * bookkeeping will remain out of sync until `setParent` is used.
14
+ */
5
15
  parent;
6
16
  previousSibling = null;
7
17
  nextSibling = null;
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchyComponent.js","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/HierarchyComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAwB,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAe,MAAM,cAAc,CAAC;AAUlE,MAAM,OAAO,kBAAkB;IAC7B,MAAM,CAAgB;IACtB,eAAe,GAAkB,IAAI,CAAC;IACtC,WAAW,GAAkB,IAAI,CAAC;IAClC,KAAK,GAAG,CAAC,CAAC;IACO,aAAa,GAAa,EAAE,CAAC;IAE9C,YAAY,SAAwB,IAAI;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACvC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACnE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;IAC9B,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,YAAY,CAAC,QAAiC;QAC5C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,eAAe,CAAC,MAAe;QAC7B,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,UAAU,CAAC,MAAqB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QAChF,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,KAAa;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QAClF,IAAI,OAAO,GAAG,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,EAAE,0BAA0B,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChH,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM;QACJ,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/C,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;YAC3D,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI;YAC1E,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;YAC9D,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,MAAM,CAAU,MAAM,GAAoB;QACxC,OAAO,EAAE,CAAC;QACV,SAAS,CAAC,SAAiB;YACzB,OAAQ,SAAgC,CAAC,MAAM,EAAE,CAAC;QACpD,CAAC;QACD,WAAW,CAAC,IAAa;YACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,eAAe,CAAC,iCAAiC,EAAE,kDAAkD,CAAC,CAAC;YACnH,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,QAAQ,CAAC,KAAK,CAAC;oBAAE,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;YACD,SAAS,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;YACzF,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7E,SAAS,CAAC,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1H,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;;AAGJ,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACrG,CAAC"}
1
+ {"version":3,"file":"HierarchyComponent.js","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/HierarchyComponent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ export type LightKind = "directional" | "point" | "spot" | "ambient";
2
+ /**
3
+ * Light parameters for an ECS entity.
4
+ *
5
+ * The ECS render bridge collects lights each frame and passes them to the
6
+ * renderer as part of the {@link RenderSource} lighting state.
7
+ */
8
+ export declare class LightComponent {
9
+ kind: LightKind;
10
+ color: [number, number, number];
11
+ intensity: number;
12
+ range: number;
13
+ angle: number;
14
+ penumbra: number;
15
+ castsShadow: boolean;
16
+ layerMask: number;
17
+ }
18
+ //# sourceMappingURL=LightComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LightComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/LightComponent.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAErE;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,IAAI,EAAE,SAAS,CAAiB;IAChC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAa;IAC5C,SAAS,SAAK;IACd,KAAK,SAAM;IACX,KAAK,SAAe;IACpB,QAAQ,SAAK;IACb,WAAW,UAAS;IACpB,SAAS,SAAK;CACf"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Light parameters for an ECS entity.
3
+ *
4
+ * The ECS render bridge collects lights each frame and passes them to the
5
+ * renderer as part of the {@link RenderSource} lighting state.
6
+ */
7
+ export class LightComponent {
8
+ kind = "directional";
9
+ color = [1, 1, 1];
10
+ intensity = 1;
11
+ range = 10;
12
+ angle = Math.PI / 4; // spot only
13
+ penumbra = 0; // spot only
14
+ castsShadow = false;
15
+ layerMask = 1;
16
+ }
17
+ //# sourceMappingURL=LightComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LightComponent.js","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/LightComponent.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,OAAO,cAAc;IACzB,IAAI,GAAc,aAAa,CAAC;IAChC,KAAK,GAA6B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,SAAS,GAAG,CAAC,CAAC;IACd,KAAK,GAAG,EAAE,CAAC;IACX,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY;IACjC,QAAQ,GAAG,CAAC,CAAC,CAAC,YAAY;IAC1B,WAAW,GAAG,KAAK,CAAC;IACpB,SAAS,GAAG,CAAC,CAAC;CACf"}
@@ -0,0 +1,19 @@
1
+ import type { SkinningPaletteBinding } from "@aura3d/rendering";
2
+ /**
3
+ * Renderable geometry + material binding for an ECS entity.
4
+ *
5
+ * References resources by name/handle; the ECS render bridge resolves them
6
+ * through the {@link ECSRenderLibraries} map at collection time.
7
+ */
8
+ export declare class MeshComponent {
9
+ geometry: string;
10
+ material: string;
11
+ castShadow: boolean;
12
+ receiveShadow: boolean;
13
+ skinning?: SkinningPaletteBinding;
14
+ morphWeights?: readonly number[];
15
+ instanceTransforms?: Float32Array;
16
+ instanceColors?: Float32Array;
17
+ constructor(geometry: string, material: string);
18
+ }
19
+ //# sourceMappingURL=MeshComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MeshComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/MeshComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,UAAQ;IAClB,aAAa,UAAQ;IACrB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,cAAc,CAAC,EAAE,YAAY,CAAC;gBAElB,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAI/C"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Renderable geometry + material binding for an ECS entity.
3
+ *
4
+ * References resources by name/handle; the ECS render bridge resolves them
5
+ * through the {@link ECSRenderLibraries} map at collection time.
6
+ */
7
+ export class MeshComponent {
8
+ geometry;
9
+ material;
10
+ castShadow = true;
11
+ receiveShadow = true;
12
+ skinning;
13
+ morphWeights;
14
+ instanceTransforms;
15
+ instanceColors;
16
+ constructor(geometry, material) {
17
+ this.geometry = geometry;
18
+ this.material = material;
19
+ }
20
+ }
21
+ //# sourceMappingURL=MeshComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MeshComponent.js","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/MeshComponent.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IACxB,QAAQ,CAAS;IACjB,QAAQ,CAAS;IACjB,UAAU,GAAG,IAAI,CAAC;IAClB,aAAa,GAAG,IAAI,CAAC;IACrB,QAAQ,CAA0B;IAClC,YAAY,CAAqB;IACjC,kBAAkB,CAAgB;IAClC,cAAc,CAAgB;IAE9B,YAAY,QAAgB,EAAE,QAAgB;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Computed world-space transform for an ECS entity.
3
+ *
4
+ * Written by {@link TransformSystem} each frame from the entity's
5
+ * {@link TransformComponent} and {@link HierarchyComponent} parent chain.
6
+ * The renderer bridge reads this directly — it never touches local transforms.
7
+ */
8
+ export declare class WorldTransformComponent {
9
+ worldMatrix: Float32Array<ArrayBuffer>;
10
+ normalMatrix: Float32Array<ArrayBuffer>;
11
+ }
12
+ //# sourceMappingURL=WorldTransformComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorldTransformComponent.d.ts","sourceRoot":"","sources":["../../../../../packages/ecs/src/components/WorldTransformComponent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,qBAAa,uBAAuB;IAClC,WAAW,4BAKR;IAEH,YAAY,4BAKT;CACJ"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Computed world-space transform for an ECS entity.
3
+ *
4
+ * Written by {@link TransformSystem} each frame from the entity's
5
+ * {@link TransformComponent} and {@link HierarchyComponent} parent chain.
6
+ * The renderer bridge reads this directly — it never touches local transforms.
7
+ */
8
+ export class WorldTransformComponent {
9
+ worldMatrix = new Float32Array([
10
+ 1, 0, 0, 0,
11
+ 0, 1, 0, 0,
12
+ 0, 0, 1, 0,
13
+ 0, 0, 0, 1
14
+ ]);
15
+ normalMatrix = new Float32Array([
16
+ 1, 0, 0, 0,
17
+ 0, 1, 0, 0,
18
+ 0, 0, 1, 0,
19
+ 0, 0, 0, 1
20
+ ]);
21
+ }
22
+ //# sourceMappingURL=WorldTransformComponent.js.map