@forgeax/engine-render 0.1.4 → 0.1.6

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 (918) hide show
  1. package/README.md +130 -641
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/__tests__/device-scope-lifecycle.unit.test.d.ts +2 -0
  4. package/dist/__tests__/device-scope-lifecycle.unit.test.d.ts.map +1 -0
  5. package/dist/__tests__/device-scope-stale-matrix.unit.test.d.ts +2 -0
  6. package/dist/__tests__/device-scope-stale-matrix.unit.test.d.ts.map +1 -0
  7. package/dist/__tests__/fullscreen-feature-plan.unit.test.d.ts +2 -0
  8. package/dist/__tests__/fullscreen-feature-plan.unit.test.d.ts.map +1 -0
  9. package/dist/__tests__/gpu-driven-indirect-raster-evidence.d.ts.map +1 -1
  10. package/dist/__tests__/gpu-driven-view-gpu-evidence.d.ts +6 -0
  11. package/dist/__tests__/gpu-driven-view-gpu-evidence.d.ts.map +1 -1
  12. package/dist/{gpu-driven/view-reference.d.ts → __tests__/gpu-driven-view-reference.d.ts} +4 -4
  13. package/dist/__tests__/gpu-driven-view-reference.d.ts.map +1 -0
  14. package/dist/__tests__/gpu-scene-render-graph-gpu.d.ts.map +1 -1
  15. package/dist/__tests__/ibl/face-uniforms.unit.test.d.ts +2 -0
  16. package/dist/__tests__/ibl/face-uniforms.unit.test.d.ts.map +1 -0
  17. package/dist/__tests__/morph-feature-plan.unit.test.d.ts +2 -0
  18. package/dist/__tests__/morph-feature-plan.unit.test.d.ts.map +1 -0
  19. package/dist/__tests__/render-feature-plan.test-d.d.ts +2 -0
  20. package/dist/__tests__/render-feature-plan.test-d.d.ts.map +1 -0
  21. package/dist/__tests__/render-feature-plan.unit.test.d.ts +2 -0
  22. package/dist/__tests__/render-feature-plan.unit.test.d.ts.map +1 -0
  23. package/dist/__tests__/ssao-config.unit.test.d.ts +2 -0
  24. package/dist/__tests__/ssao-config.unit.test.d.ts.map +1 -0
  25. package/dist/__tests__/standard-clustered-pipeline.unit.test.d.ts +2 -0
  26. package/dist/__tests__/standard-clustered-pipeline.unit.test.d.ts.map +1 -0
  27. package/dist/__tests__/standard-descriptors.test-d.d.ts +2 -0
  28. package/dist/__tests__/standard-descriptors.test-d.d.ts.map +1 -0
  29. package/dist/__tests__/standard-pipeline.dawn.test.d.ts +2 -0
  30. package/dist/__tests__/standard-pipeline.dawn.test.d.ts.map +1 -0
  31. package/dist/__tests__/standard-pipeline.integration.test.d.ts +2 -0
  32. package/dist/__tests__/standard-pipeline.integration.test.d.ts.map +1 -0
  33. package/dist/__tests__/standard-profile-oracle.unit.test.d.ts +2 -0
  34. package/dist/__tests__/standard-profile-oracle.unit.test.d.ts.map +1 -0
  35. package/dist/__tests__/visibility-resource-short-circuit.unit.test.d.ts +2 -0
  36. package/dist/__tests__/visibility-resource-short-circuit.unit.test.d.ts.map +1 -0
  37. package/dist/{renderer/backend-selection.d.ts → assembly/backend-contract.d.ts} +15 -4
  38. package/dist/assembly/backend-contract.d.ts.map +1 -0
  39. package/dist/assembly/factory.d.ts +207 -0
  40. package/dist/assembly/factory.d.ts.map +1 -0
  41. package/dist/assembly/host-contract.d.ts +84 -0
  42. package/dist/assembly/host-contract.d.ts.map +1 -0
  43. package/dist/{renderer → assembly}/material/assembly.d.ts +0 -1
  44. package/dist/{renderer → assembly}/material/assembly.d.ts.map +1 -1
  45. package/dist/assembly/material/pipeline-projection.d.ts +30 -0
  46. package/dist/assembly/material/pipeline-projection.d.ts.map +1 -0
  47. package/dist/authoring.d.ts +10 -11
  48. package/dist/authoring.d.ts.map +1 -1
  49. package/dist/authoring.mjs +25 -3
  50. package/dist/authoring.mjs.map +1 -1
  51. package/dist/chunk-CQXZC5XI.mjs +182 -0
  52. package/dist/chunk-CQXZC5XI.mjs.map +1 -0
  53. package/dist/chunk-QC4VW3XJ.mjs +79 -0
  54. package/dist/chunk-QC4VW3XJ.mjs.map +1 -0
  55. package/dist/chunk-SCRSAK5B.mjs +480 -0
  56. package/dist/chunk-SCRSAK5B.mjs.map +1 -0
  57. package/dist/components/__tests__/schema-contract.unit.test.d.ts +2 -0
  58. package/dist/components/__tests__/schema-contract.unit.test.d.ts.map +1 -0
  59. package/dist/components/glyph-text.d.ts +1 -1
  60. package/dist/components/glyph-text.d.ts.map +1 -1
  61. package/dist/components/index.d.ts +2 -2
  62. package/dist/components/index.d.ts.map +1 -1
  63. package/dist/components/instances.d.ts +1 -1
  64. package/dist/components/instances.d.ts.map +1 -1
  65. package/dist/components/light-helpers.d.ts +1 -1
  66. package/dist/components/light-helpers.d.ts.map +1 -1
  67. package/dist/components/mesh-filter.d.ts +7 -7
  68. package/dist/components/mesh-filter.d.ts.map +1 -1
  69. package/dist/components/scene-instance.d.ts +11 -11
  70. package/dist/components/skybox-background.d.ts +56 -0
  71. package/dist/components/skybox-background.d.ts.map +1 -0
  72. package/dist/components/skylight.d.ts +55 -0
  73. package/dist/components/skylight.d.ts.map +1 -0
  74. package/dist/components/sprite-animation.d.ts +2 -3
  75. package/dist/components/sprite-animation.d.ts.map +1 -1
  76. package/dist/components/sprite-instances.d.ts +1 -1
  77. package/dist/components/sprite-playback-mode.d.ts +6 -1
  78. package/dist/components/sprite-playback-mode.d.ts.map +1 -1
  79. package/dist/components/sprite-region-override.d.ts +2 -3
  80. package/dist/components/sprite-region-override.d.ts.map +1 -1
  81. package/dist/components/tile-layer.d.ts +5 -0
  82. package/dist/components/tile-layer.d.ts.map +1 -1
  83. package/dist/construct-renderer.d.ts +18 -1
  84. package/dist/construct-renderer.d.ts.map +1 -1
  85. package/dist/construct-renderer.mjs +27008 -4
  86. package/dist/construct-renderer.mjs.map +1 -1
  87. package/dist/debug-draw-glue.d.ts +2 -53
  88. package/dist/debug-draw-glue.d.ts.map +1 -1
  89. package/dist/device/device-scope.d.ts +83 -0
  90. package/dist/device/device-scope.d.ts.map +1 -0
  91. package/dist/{gpu-resource-store.d.ts → device/gpu-residency.d.ts} +91 -48
  92. package/dist/device/gpu-residency.d.ts.map +1 -0
  93. package/dist/device/resource-types.d.ts +8 -0
  94. package/dist/device/resource-types.d.ts.map +1 -0
  95. package/dist/engine-metrics.d.ts +2 -2
  96. package/dist/engine-metrics.d.ts.map +1 -1
  97. package/dist/errors/recover.d.ts +28 -1
  98. package/dist/errors/recover.d.ts.map +1 -1
  99. package/dist/errors/render.d.ts +249 -258
  100. package/dist/errors/render.d.ts.map +1 -1
  101. package/dist/features/fullscreen.d.ts +19 -0
  102. package/dist/features/fullscreen.d.ts.map +1 -0
  103. package/dist/features/host.d.ts +32 -26
  104. package/dist/features/host.d.ts.map +1 -1
  105. package/dist/features/morph/morph-feature.d.ts +39 -5
  106. package/dist/features/morph/morph-feature.d.ts.map +1 -1
  107. package/dist/features/plan.d.ts +182 -0
  108. package/dist/features/plan.d.ts.map +1 -0
  109. package/dist/features/prepared-gpu-work.d.ts +21 -17
  110. package/dist/features/prepared-gpu-work.d.ts.map +1 -1
  111. package/dist/features/prepared-graphics-store.d.ts +2 -1
  112. package/dist/features/prepared-graphics-store.d.ts.map +1 -1
  113. package/dist/features/prepared-graphics.d.ts +11 -21
  114. package/dist/features/prepared-graphics.d.ts.map +1 -1
  115. package/dist/features/render-graph-compute.d.ts +2 -2
  116. package/dist/features/render-graph-compute.d.ts.map +1 -1
  117. package/dist/features/render-graph-contribution.d.ts +4 -7
  118. package/dist/features/render-graph-contribution.d.ts.map +1 -1
  119. package/dist/features/render-graph-raster.d.ts +2 -2
  120. package/dist/features/render-graph-raster.d.ts.map +1 -1
  121. package/dist/features/render-graph-resources.d.ts +6 -6
  122. package/dist/features/render-graph-resources.d.ts.map +1 -1
  123. package/dist/features/targets.d.ts +5 -5
  124. package/dist/features/targets.d.ts.map +1 -1
  125. package/dist/features/types.d.ts +11 -190
  126. package/dist/features/types.d.ts.map +1 -1
  127. package/dist/features/vocabulary.d.ts +14 -0
  128. package/dist/features/vocabulary.d.ts.map +1 -0
  129. package/dist/fullscreen-post-process-pass.d.ts +4 -25
  130. package/dist/fullscreen-post-process-pass.d.ts.map +1 -1
  131. package/dist/glyph-text-layout-system.d.ts +3 -2
  132. package/dist/glyph-text-layout-system.d.ts.map +1 -1
  133. package/dist/gpu-driven/batch-topology.d.ts +6 -75
  134. package/dist/gpu-driven/batch-topology.d.ts.map +1 -1
  135. package/dist/gpu-driven/production-raster.d.ts +13 -112
  136. package/dist/gpu-driven/production-raster.d.ts.map +1 -1
  137. package/dist/gpu-driven/view-gpu.d.ts +10 -66
  138. package/dist/gpu-driven/view-gpu.d.ts.map +1 -1
  139. package/dist/gpu-resource.d.ts +3 -3
  140. package/dist/gpu-scene-schema.d.ts +1 -94
  141. package/dist/gpu-scene-schema.d.ts.map +1 -1
  142. package/dist/gpu-scene.d.ts +7 -33
  143. package/dist/gpu-scene.d.ts.map +1 -1
  144. package/dist/hdrp-buffers.d.ts +3 -53
  145. package/dist/hdrp-buffers.d.ts.map +1 -1
  146. package/dist/ibl/IblPipelineCache.d.ts +74 -180
  147. package/dist/ibl/IblPipelineCache.d.ts.map +1 -1
  148. package/dist/ibl/skylight-bind-group.d.ts +1 -1
  149. package/dist/index.d.ts +13 -43
  150. package/dist/index.d.ts.map +1 -1
  151. package/dist/index.mjs +165 -3
  152. package/dist/index.mjs.map +1 -1
  153. package/dist/inspection-types.d.ts +69 -0
  154. package/dist/inspection-types.d.ts.map +1 -0
  155. package/dist/instance-buffer-cache.d.ts +1 -4
  156. package/dist/instance-buffer-cache.d.ts.map +1 -1
  157. package/dist/internal.d.ts +1 -73
  158. package/dist/internal.d.ts.map +1 -1
  159. package/dist/internal.mjs +1 -43
  160. package/dist/internal.mjs.map +1 -1
  161. package/dist/lifecycle.d.ts +36 -2
  162. package/dist/lifecycle.d.ts.map +1 -1
  163. package/dist/materials.d.ts +0 -3
  164. package/dist/materials.d.ts.map +1 -1
  165. package/dist/mesh-material-bindings.d.ts +0 -1
  166. package/dist/mesh-material-bindings.d.ts.map +1 -1
  167. package/dist/pbr-pipeline.d.ts +75 -29
  168. package/dist/pbr-pipeline.d.ts.map +1 -1
  169. package/dist/pipeline/standard-forward-lane.d.ts +5 -0
  170. package/dist/pipeline/standard-forward-lane.d.ts.map +1 -0
  171. package/dist/pipeline/standard-pipeline.d.ts +31 -0
  172. package/dist/pipeline/standard-pipeline.d.ts.map +1 -0
  173. package/dist/pipeline/standard-profile.d.ts +40 -0
  174. package/dist/pipeline/standard-profile.d.ts.map +1 -0
  175. package/dist/pipeline-builder.d.ts +3 -3
  176. package/dist/pipeline-builder.d.ts.map +1 -1
  177. package/dist/pipeline-spec-types.d.ts +24 -0
  178. package/dist/pipeline-spec-types.d.ts.map +1 -0
  179. package/dist/pipeline-spec.d.ts +16 -155
  180. package/dist/pipeline-spec.d.ts.map +1 -1
  181. package/dist/plugin.d.ts +1 -14
  182. package/dist/plugin.d.ts.map +1 -1
  183. package/dist/post-process-errors.d.ts +18 -18
  184. package/dist/post-process-errors.d.ts.map +1 -1
  185. package/dist/prepare/prepared-graphics-resolver.d.ts +2 -5
  186. package/dist/prepare/prepared-graphics-resolver.d.ts.map +1 -1
  187. package/dist/record/__tests__/typed-frame-graph-plan.unit.test.d.ts +2 -0
  188. package/dist/record/__tests__/typed-frame-graph-plan.unit.test.d.ts.map +1 -0
  189. package/dist/record/frame-lighting.d.ts +7 -73
  190. package/dist/record/frame-lighting.d.ts.map +1 -1
  191. package/dist/record/frame-snapshot.d.ts +44 -44
  192. package/dist/record/frame-snapshot.d.ts.map +1 -1
  193. package/dist/record/frame-targets.d.ts +5 -38
  194. package/dist/record/frame-targets.d.ts.map +1 -1
  195. package/dist/record/frame.d.ts +64 -52
  196. package/dist/record/frame.d.ts.map +1 -1
  197. package/dist/record/helpers.d.ts +3 -2
  198. package/dist/record/helpers.d.ts.map +1 -1
  199. package/dist/record/main-pass-geometry.d.ts +5 -4
  200. package/dist/record/main-pass-geometry.d.ts.map +1 -1
  201. package/dist/record/main-pass-material.d.ts +90 -59
  202. package/dist/record/main-pass-material.d.ts.map +1 -1
  203. package/dist/record/main-pass-sprite-draws.d.ts +28 -3
  204. package/dist/record/main-pass-sprite-draws.d.ts.map +1 -1
  205. package/dist/record/main-pass.d.ts +1 -1
  206. package/dist/record/main-pass.d.ts.map +1 -1
  207. package/dist/record/mesh-ssbo.d.ts +276 -3
  208. package/dist/record/mesh-ssbo.d.ts.map +1 -1
  209. package/dist/record/render-context.d.ts +235 -0
  210. package/dist/record/render-context.d.ts.map +1 -0
  211. package/dist/record/shadow-pass.d.ts +15 -88
  212. package/dist/record/shadow-pass.d.ts.map +1 -1
  213. package/dist/record/skybox-post-pass.d.ts +1 -1
  214. package/dist/record/skybox-post-pass.d.ts.map +1 -1
  215. package/dist/record/typed-frame-graph.d.ts +29 -7
  216. package/dist/record/typed-frame-graph.d.ts.map +1 -1
  217. package/dist/record/view-ubo.d.ts +3 -3
  218. package/dist/record/view-ubo.d.ts.map +1 -1
  219. package/dist/render-contract.d.ts +416 -0
  220. package/dist/render-contract.d.ts.map +1 -0
  221. package/dist/render-data.d.ts.map +1 -1
  222. package/dist/render-graph-primitives.d.ts +14 -362
  223. package/dist/render-graph-primitives.d.ts.map +1 -1
  224. package/dist/render-pipeline.d.ts +25 -64
  225. package/dist/render-pipeline.d.ts.map +1 -1
  226. package/dist/render-system-extract.d.ts +107 -338
  227. package/dist/render-system-extract.d.ts.map +1 -1
  228. package/dist/render-system.d.ts +21 -713
  229. package/dist/render-system.d.ts.map +1 -1
  230. package/dist/scene/render-scene-types.d.ts +58 -0
  231. package/dist/scene/render-scene-types.d.ts.map +1 -0
  232. package/dist/scene/render-scene.d.ts +105 -0
  233. package/dist/scene/render-scene.d.ts.map +1 -0
  234. package/dist/scene-instances/post-spawn-resolve-joints.d.ts +2 -5
  235. package/dist/scene-instances/post-spawn-resolve-joints.d.ts.map +1 -1
  236. package/dist/ssao-buffers.d.ts +22 -3
  237. package/dist/ssao-buffers.d.ts.map +1 -1
  238. package/dist/systems/skin-palette-allocator.d.ts +2 -4
  239. package/dist/systems/skin-palette-allocator.d.ts.map +1 -1
  240. package/dist/systems/skin-palette-types.d.ts +14 -0
  241. package/dist/systems/skin-palette-types.d.ts.map +1 -0
  242. package/dist/systems/transparent-sort-config.d.ts +23 -2
  243. package/dist/systems/transparent-sort-config.d.ts.map +1 -1
  244. package/dist/tilemap-chunk-extract-system.d.ts +4 -3
  245. package/dist/tilemap-chunk-extract-system.d.ts.map +1 -1
  246. package/dist/typed-render-graph-primitives.d.ts +2 -4
  247. package/dist/typed-render-graph-primitives.d.ts.map +1 -1
  248. package/dist/typed-shadow-passes.d.ts +3 -3
  249. package/dist/typed-shadow-passes.d.ts.map +1 -1
  250. package/package.json +23 -23
  251. package/src/__tests__/backend-selection-rhi-capture.test-d.ts +1 -1
  252. package/src/__tests__/callback-inference.test-d.ts +6 -3
  253. package/src/__tests__/cluster-grid-default-surface.unit.test.ts +7 -4
  254. package/src/__tests__/construct-renderer-identity.unit.test.ts +15 -2
  255. package/src/__tests__/device-scope-lifecycle.unit.test.ts +151 -0
  256. package/src/__tests__/device-scope-stale-matrix.unit.test.ts +42 -0
  257. package/src/__tests__/direct-extract-consumer-contract.test-d.ts +8 -19
  258. package/src/__tests__/direct-light-snapshot.unit.test.ts +3 -13
  259. package/src/__tests__/factory-contract.integration.test.ts +158 -209
  260. package/src/__tests__/fallback-row-stride-surface.unit.test.ts +1 -4
  261. package/src/__tests__/frame-observation.contract.test.ts +17 -8
  262. package/src/__tests__/fullscreen-feature-plan.unit.test.ts +32 -0
  263. package/src/__tests__/glyph-text-layout-recovery.unit.test.ts +6 -11
  264. package/src/__tests__/gpu-driven-indirect-raster-evidence.ts +9 -16
  265. package/src/__tests__/gpu-driven-production.integration.test.ts +32 -205
  266. package/src/__tests__/gpu-driven-scaling.unit.test.ts +4 -7
  267. package/src/__tests__/gpu-driven-view-gpu-evidence.ts +87 -8
  268. package/src/__tests__/gpu-driven-view-graph.integration.test.ts +170 -8
  269. package/src/{gpu-driven/view-reference.ts → __tests__/gpu-driven-view-reference.ts} +4 -3
  270. package/src/__tests__/gpu-driven-view.browser.test.ts +12 -1
  271. package/src/__tests__/gpu-driven-view.dawn.test.ts +12 -1
  272. package/src/__tests__/gpu-driven-view.unit.test.ts +11 -267
  273. package/src/__tests__/gpu-resource-store-stride.unit.test.ts +3 -3
  274. package/src/__tests__/gpu-scene-render-graph-gpu.ts +2 -3
  275. package/src/__tests__/gpu-scene.dawn.test.ts +2 -6
  276. package/src/__tests__/gpu-scene.unit.test.ts +10 -24
  277. package/src/__tests__/ibl/face-uniforms.unit.test.ts +46 -0
  278. package/src/__tests__/infinite-grid-no-vertex-probe.unit.test.ts +34 -66
  279. package/src/__tests__/ktx2-basis-gpu-consumer.dawn.test.ts +14 -5
  280. package/src/__tests__/light-buffer-layout.unit.test.ts +4 -49
  281. package/src/__tests__/material-cooked-projection.unit.test.ts +2 -51
  282. package/src/__tests__/material-snapshot-mutation.integration.test.ts +10 -15
  283. package/src/__tests__/material-static-dynamic-route.unit.test.ts +4 -23
  284. package/src/__tests__/material-stride-surface.unit.test.ts +2 -2
  285. package/src/__tests__/mesh-buffer-usage-surface.unit.test.ts +7 -8
  286. package/src/__tests__/morph-culling-reentry.dawn.test.ts +29 -38
  287. package/src/__tests__/morph-feature-gpu-work.integration.test.ts +45 -43
  288. package/src/__tests__/morph-feature-plan.unit.test.ts +53 -0
  289. package/src/__tests__/morph-visual-evidence.integration.test.ts +47 -33
  290. package/src/__tests__/nineslice-handle-surface.unit.test.ts +11 -6
  291. package/src/__tests__/post-process-error-policy-owner.unit.test.ts +6 -13
  292. package/src/__tests__/prepared-graphics-capability.unit.test.ts +6 -81
  293. package/src/__tests__/prepared-graphics-generation.unit.test.ts +3 -17
  294. package/src/__tests__/prepared-graphics-lifecycle.unit.test.ts +6 -74
  295. package/src/__tests__/prepared-graphics-resolver.unit.test.ts +1 -3
  296. package/src/__tests__/prepared-graphics-snapshot.unit.test.ts +2 -2
  297. package/src/__tests__/profiler-default-off.test.ts +1 -1
  298. package/src/__tests__/profiler-phase-catalog.test.ts +2 -2
  299. package/src/__tests__/profiler-phase-integration.test.ts +5 -13
  300. package/src/__tests__/profiler-phase-token.test.ts +3 -8
  301. package/src/__tests__/public-surface.test-d.ts +65 -3
  302. package/src/__tests__/recover-error-policy-owner.unit.test.ts +1 -21
  303. package/src/__tests__/render-error-code-owner.test-d.ts +18 -23
  304. package/src/__tests__/render-error-detail-ssot.test-d.ts +0 -95
  305. package/src/__tests__/render-error-exhaustive.test-d.ts +8 -1
  306. package/src/__tests__/render-feature-assembly.test-d.ts +8 -16
  307. package/src/__tests__/render-feature-context.test-d.ts +16 -40
  308. package/src/__tests__/render-feature-contract.test-d.ts +9 -18
  309. package/src/__tests__/render-feature-diagnostics.unit.test.ts +6 -8
  310. package/src/__tests__/render-feature-docs.unit.test.ts +8 -7
  311. package/src/__tests__/render-feature-gpu-work.integration.test.ts +14 -75
  312. package/src/__tests__/render-feature-plan.test-d.ts +161 -0
  313. package/src/__tests__/render-feature-plan.unit.test.ts +170 -0
  314. package/src/__tests__/render-feature-prepared-diagnostics.unit.test.ts +8 -19
  315. package/src/__tests__/render-feature-prepared-errors.test-d.ts +3 -6
  316. package/src/__tests__/render-feature-prepared-graphics-docs.unit.test.ts +10 -71
  317. package/src/__tests__/render-feature-prepared-graphics-isolation.unit.test.ts +11 -61
  318. package/src/__tests__/render-feature-prepared-graphics-negative.test-d.ts +20 -43
  319. package/src/__tests__/render-feature-prepared-graphics.test-d.ts +56 -78
  320. package/src/__tests__/render-feature-public-surface.test-d.ts +6 -24
  321. package/src/__tests__/render-feature-retry.unit.test.ts +7 -48
  322. package/src/__tests__/render-feature-scheduling.unit.test.ts +15 -27
  323. package/src/__tests__/render-feature-stage-failed-policy-owner.unit.test.ts +0 -9
  324. package/src/__tests__/render-feature-stage-fault-recovery.unit.test.ts +19 -109
  325. package/src/__tests__/render-feature-visibility-context.test-d.ts +1 -6
  326. package/src/__tests__/render-feature-visibility-context.unit.test.ts +1 -2
  327. package/src/__tests__/render-feature-zero-work.unit.test.ts +14 -20
  328. package/src/__tests__/render-scene-projection.unit.test.ts +73 -111
  329. package/src/__tests__/renderer-factory-material-contract.unit.test.ts +44 -95
  330. package/src/__tests__/renderer-lifecycle.integration.test.ts +49 -1
  331. package/src/__tests__/shader-stage-surface.unit.test.ts +14 -9
  332. package/src/__tests__/ssao-config.unit.test.ts +36 -0
  333. package/src/__tests__/ssao-kernel-surface.unit.test.ts +4 -5
  334. package/src/__tests__/standard-clustered-pipeline.unit.test.ts +28 -0
  335. package/src/__tests__/standard-descriptors.test-d.ts +22 -0
  336. package/src/__tests__/standard-pipeline.dawn.test.ts +61 -0
  337. package/src/__tests__/standard-pipeline.integration.test.ts +124 -0
  338. package/src/__tests__/standard-profile-oracle.unit.test.ts +62 -0
  339. package/src/__tests__/surface-configuration.unit.test.ts +1 -2
  340. package/src/__tests__/texture-usage-surface.unit.test.ts +3 -6
  341. package/src/__tests__/typed-pipeline-topology.unit.test.ts +40 -206
  342. package/src/__tests__/urp-pipeline-targets.unit.test.ts +1 -11
  343. package/src/__tests__/urp-pipeline.unit.test.ts +2 -2
  344. package/src/__tests__/vertex-color-pipeline.unit.test.ts +10 -2
  345. package/src/__tests__/vertex-layout-consumer.unit.test.ts +1 -1
  346. package/src/__tests__/visibility-diagnostics.integration.test.ts +7 -11
  347. package/src/__tests__/visibility-extract.integration.test.ts +20 -11
  348. package/src/__tests__/visibility-extract.perf.test.ts +66 -32
  349. package/src/__tests__/visibility-feature-dedup.integration.test.ts +2 -4
  350. package/src/__tests__/visibility-hidden-report.unit.test.ts +1 -2
  351. package/src/__tests__/visibility-instances.integration.test.ts +7 -11
  352. package/src/__tests__/visibility-multi-world.integration.test.ts +38 -6
  353. package/src/__tests__/visibility-producer-matrix.integration.test.ts +18 -41
  354. package/src/__tests__/visibility-public-surface.test-d.ts +10 -9
  355. package/src/__tests__/visibility-resolver.unit.test.ts +2 -1
  356. package/src/__tests__/visibility-resource-short-circuit.unit.test.ts +80 -0
  357. package/src/__tests__/visibility-snapshot-contract.unit.test.ts +2 -1
  358. package/src/__tests__/vocabulary.unit.test.ts +1 -1
  359. package/src/assembly/backend-contract.ts +57 -0
  360. package/src/{renderer/renderer-factory.ts → assembly/factory.ts} +1663 -2690
  361. package/src/assembly/host-contract.ts +101 -0
  362. package/src/{renderer → assembly}/material/assembly.ts +0 -2
  363. package/src/assembly/material/pipeline-projection.ts +63 -0
  364. package/src/authoring.ts +14 -22
  365. package/src/components/__tests__/schema-contract.unit.test.ts +10 -0
  366. package/src/components/glyph-text.ts +3 -2
  367. package/src/components/index.ts +7 -9
  368. package/src/components/instances.ts +4 -5
  369. package/src/components/light-helpers.ts +1 -1
  370. package/src/components/mesh-filter.ts +11 -10
  371. package/src/components/post-process-params.ts +3 -3
  372. package/src/components/scene-instance.ts +12 -12
  373. package/src/components/skybox-background.ts +103 -0
  374. package/src/components/{environment.ts → skylight.ts} +2 -110
  375. package/src/components/sprite-animation.ts +3 -4
  376. package/src/components/sprite-instances.ts +2 -2
  377. package/src/components/sprite-playback-mode.ts +7 -1
  378. package/src/components/sprite-region-override.ts +2 -3
  379. package/src/components/tile-layer.ts +8 -2
  380. package/src/construct-renderer.ts +67 -4
  381. package/src/debug-draw-glue.ts +8 -129
  382. package/src/device/device-scope.ts +306 -0
  383. package/src/{gpu-resource-store.ts → device/gpu-residency.ts} +540 -639
  384. package/src/device/resource-types.ts +20 -0
  385. package/src/engine-metrics.ts +12 -19
  386. package/src/errors/recover.ts +45 -3
  387. package/src/errors/render.ts +357 -460
  388. package/src/features/fullscreen.ts +46 -0
  389. package/src/features/host.ts +575 -309
  390. package/src/features/morph/morph-feature.ts +195 -105
  391. package/src/features/plan.ts +447 -0
  392. package/src/features/prepared-gpu-work.ts +72 -15
  393. package/src/features/prepared-graphics-store.ts +20 -6
  394. package/src/features/prepared-graphics.ts +12 -71
  395. package/src/features/render-graph-compute.ts +14 -5
  396. package/src/features/render-graph-contribution.ts +43 -63
  397. package/src/features/render-graph-raster.ts +11 -6
  398. package/src/features/render-graph-resources.ts +25 -23
  399. package/src/features/targets.ts +8 -21
  400. package/src/features/types.ts +39 -227
  401. package/src/features/vocabulary.ts +24 -0
  402. package/src/fullscreen-post-process-pass.ts +14 -57
  403. package/src/glyph-text-layout-system.ts +70 -96
  404. package/src/gpu-driven/batch-topology.ts +24 -202
  405. package/src/gpu-driven/production-raster.ts +93 -1108
  406. package/src/gpu-driven/view-gpu.ts +46 -192
  407. package/src/gpu-resource.ts +4 -4
  408. package/src/gpu-scene-schema.ts +11 -99
  409. package/src/gpu-scene.ts +231 -364
  410. package/src/hdrp-buffers.ts +12 -221
  411. package/src/ibl/IblPipelineCache.ts +471 -711
  412. package/src/ibl/skylight-bind-group.ts +4 -4
  413. package/src/index.ts +58 -217
  414. package/src/inspection-types.ts +76 -0
  415. package/src/instance-buffer-cache.ts +1 -29
  416. package/src/internal.ts +6 -85
  417. package/src/lifecycle.ts +64 -19
  418. package/src/materials.ts +7 -29
  419. package/src/mesh-material-bindings.ts +0 -1
  420. package/src/pbr-pipeline.ts +434 -53
  421. package/src/{urp-pipeline.ts → pipeline/standard-forward-lane.ts} +38 -149
  422. package/src/{hdrp-pipeline.ts → pipeline/standard-pipeline.ts} +221 -191
  423. package/src/pipeline/standard-profile.ts +65 -0
  424. package/src/pipeline-builder.ts +60 -64
  425. package/src/pipeline-spec-types.ts +28 -0
  426. package/src/pipeline-spec.ts +72 -609
  427. package/src/plugin.ts +3 -75
  428. package/src/post-process-errors.ts +31 -33
  429. package/src/prepare/prepared-graphics-resolver.ts +5 -4
  430. package/src/record/__tests__/material-slot-plan.unit.test.ts +1 -33
  431. package/src/record/__tests__/typed-frame-graph-plan.unit.test.ts +41 -0
  432. package/src/record/__tests__/video-texture-view.unit.test.ts +1 -1
  433. package/src/record/frame-lighting.ts +74 -195
  434. package/src/record/frame-snapshot.ts +45 -60
  435. package/src/record/frame-targets.ts +8 -243
  436. package/src/record/frame.ts +509 -796
  437. package/src/record/helpers.ts +6 -11
  438. package/src/record/main-pass-geometry.ts +106 -147
  439. package/src/record/main-pass-material.ts +517 -190
  440. package/src/record/main-pass-sprite-draws.ts +198 -117
  441. package/src/record/main-pass.ts +162 -143
  442. package/src/record/mesh-ssbo.ts +517 -38
  443. package/src/record/render-context.ts +364 -0
  444. package/src/record/shadow-pass.ts +138 -1838
  445. package/src/record/skybox-post-pass.ts +12 -14
  446. package/src/record/typed-frame-graph.ts +215 -254
  447. package/src/record/view-ubo.ts +6 -37
  448. package/src/render-contract.ts +571 -0
  449. package/src/render-data.ts +3 -3
  450. package/src/render-graph-primitives.ts +76 -851
  451. package/src/render-pipeline.ts +104 -188
  452. package/src/render-system-extract.ts +1048 -1729
  453. package/src/render-system.ts +330 -1957
  454. package/src/scene/render-scene-types.ts +64 -0
  455. package/src/scene/render-scene.ts +1032 -0
  456. package/src/scene-instances/post-spawn-resolve-joints.ts +4 -7
  457. package/src/ssao-buffers.ts +167 -8
  458. package/src/systems/skin-palette-allocator.ts +21 -64
  459. package/src/systems/skin-palette-types.ts +14 -0
  460. package/src/systems/transparent-sort-config.ts +25 -3
  461. package/src/tilemap-chunk-extract-system.ts +53 -70
  462. package/src/typed-render-graph-primitives.ts +35 -24
  463. package/src/typed-shadow-passes.ts +26 -56
  464. package/dist/__tests__/analytic-sky-contract.test.d.ts +0 -2
  465. package/dist/__tests__/analytic-sky-contract.test.d.ts.map +0 -1
  466. package/dist/__tests__/analytic-sky-falsify.test.d.ts +0 -2
  467. package/dist/__tests__/analytic-sky-falsify.test.d.ts.map +0 -1
  468. package/dist/__tests__/assets-runtime-handoff.integration.test.d.ts +0 -2
  469. package/dist/__tests__/assets-runtime-handoff.integration.test.d.ts.map +0 -1
  470. package/dist/__tests__/backend-selection.integration.test.d.ts +0 -2
  471. package/dist/__tests__/backend-selection.integration.test.d.ts.map +0 -1
  472. package/dist/__tests__/camera-temporal.test-d.d.ts +0 -2
  473. package/dist/__tests__/camera-temporal.test-d.d.ts.map +0 -1
  474. package/dist/__tests__/camera-temporal.test.d.ts +0 -2
  475. package/dist/__tests__/camera-temporal.test.d.ts.map +0 -1
  476. package/dist/__tests__/directional-shadow-probe-atlas-layout.unit.test.d.ts +0 -2
  477. package/dist/__tests__/directional-shadow-probe-atlas-layout.unit.test.d.ts.map +0 -1
  478. package/dist/__tests__/environment-inspection.test.d.ts +0 -2
  479. package/dist/__tests__/environment-inspection.test.d.ts.map +0 -1
  480. package/dist/__tests__/fog-ai-user.fixture.d.ts +0 -2
  481. package/dist/__tests__/fog-ai-user.fixture.d.ts.map +0 -1
  482. package/dist/__tests__/fog-custom-render-feature.fixture.d.ts +0 -16
  483. package/dist/__tests__/fog-custom-render-feature.fixture.d.ts.map +0 -1
  484. package/dist/__tests__/fog-custom-render-feature.integration.test.d.ts +0 -2
  485. package/dist/__tests__/fog-custom-render-feature.integration.test.d.ts.map +0 -1
  486. package/dist/__tests__/fog-inspection.integration.test.d.ts +0 -2
  487. package/dist/__tests__/fog-inspection.integration.test.d.ts.map +0 -1
  488. package/dist/__tests__/fog-owner-state.integration.test.d.ts +0 -2
  489. package/dist/__tests__/fog-owner-state.integration.test.d.ts.map +0 -1
  490. package/dist/__tests__/fog-pipeline-topology.integration.test.d.ts +0 -2
  491. package/dist/__tests__/fog-pipeline-topology.integration.test.d.ts.map +0 -1
  492. package/dist/__tests__/fog-public-surface.integration.test.d.ts +0 -2
  493. package/dist/__tests__/fog-public-surface.integration.test.d.ts.map +0 -1
  494. package/dist/__tests__/fog-ray-contract.integration.test.d.ts +0 -2
  495. package/dist/__tests__/fog-ray-contract.integration.test.d.ts.map +0 -1
  496. package/dist/__tests__/fog-source-absence.integration.test.d.ts +0 -2
  497. package/dist/__tests__/fog-source-absence.integration.test.d.ts.map +0 -1
  498. package/dist/__tests__/fog-temporal.integration.test.d.ts +0 -2
  499. package/dist/__tests__/fog-temporal.integration.test.d.ts.map +0 -1
  500. package/dist/__tests__/frame-chain.unit.test.d.ts +0 -2
  501. package/dist/__tests__/frame-chain.unit.test.d.ts.map +0 -1
  502. package/dist/__tests__/gpu-scene-field-type-owner.test-d.d.ts +0 -2
  503. package/dist/__tests__/gpu-scene-field-type-owner.test-d.d.ts.map +0 -1
  504. package/dist/__tests__/hdrp-pipeline.unit.test.d.ts +0 -2
  505. package/dist/__tests__/hdrp-pipeline.unit.test.d.ts.map +0 -1
  506. package/dist/__tests__/ibl/ibl-fallback.unit.test.d.ts +0 -2
  507. package/dist/__tests__/ibl/ibl-fallback.unit.test.d.ts.map +0 -1
  508. package/dist/__tests__/material-derived-error-stop-draw.integration.test.d.ts +0 -2
  509. package/dist/__tests__/material-derived-error-stop-draw.integration.test.d.ts.map +0 -1
  510. package/dist/__tests__/material-derived-payload.integration.test.d.ts +0 -2
  511. package/dist/__tests__/material-derived-payload.integration.test.d.ts.map +0 -1
  512. package/dist/__tests__/materials.unit.test.d.ts +0 -2
  513. package/dist/__tests__/materials.unit.test.d.ts.map +0 -1
  514. package/dist/__tests__/param-schema-projection-census.unit.test.d.ts +0 -2
  515. package/dist/__tests__/param-schema-projection-census.unit.test.d.ts.map +0 -1
  516. package/dist/__tests__/persistent-render-scene.unit.test.d.ts +0 -2
  517. package/dist/__tests__/persistent-render-scene.unit.test.d.ts.map +0 -1
  518. package/dist/__tests__/pipeline-error-policy-owner.unit.test.d.ts +0 -2
  519. package/dist/__tests__/pipeline-error-policy-owner.unit.test.d.ts.map +0 -1
  520. package/dist/__tests__/pipeline-pass-trace.test.d.ts +0 -2
  521. package/dist/__tests__/pipeline-pass-trace.test.d.ts.map +0 -1
  522. package/dist/__tests__/pipeline-stage-owner.test-d.d.ts +0 -2
  523. package/dist/__tests__/pipeline-stage-owner.test-d.d.ts.map +0 -1
  524. package/dist/__tests__/plugin.test.d.ts +0 -2
  525. package/dist/__tests__/plugin.test.d.ts.map +0 -1
  526. package/dist/__tests__/prepared-graphics-backend-matrix.unit.test.d.ts +0 -2
  527. package/dist/__tests__/prepared-graphics-backend-matrix.unit.test.d.ts.map +0 -1
  528. package/dist/__tests__/prepared-graphics-resolver-recording.unit.test.d.ts +0 -2
  529. package/dist/__tests__/prepared-graphics-resolver-recording.unit.test.d.ts.map +0 -1
  530. package/dist/__tests__/public-pipeline-id.test-d.d.ts +0 -2
  531. package/dist/__tests__/public-pipeline-id.test-d.d.ts.map +0 -1
  532. package/dist/__tests__/render-dispatch-membership.unit.test.d.ts +0 -2
  533. package/dist/__tests__/render-dispatch-membership.unit.test.d.ts.map +0 -1
  534. package/dist/__tests__/render-feature-construction.unit.test.d.ts +0 -2
  535. package/dist/__tests__/render-feature-construction.unit.test.d.ts.map +0 -1
  536. package/dist/__tests__/render-feature-error-code-owner.test-d.d.ts +0 -2
  537. package/dist/__tests__/render-feature-error-code-owner.test-d.d.ts.map +0 -1
  538. package/dist/__tests__/render-feature-gpu-buffer-usage-owner.test-d.d.ts +0 -2
  539. package/dist/__tests__/render-feature-gpu-buffer-usage-owner.test-d.d.ts.map +0 -1
  540. package/dist/__tests__/render-feature-graph.integration.test.d.ts +0 -2
  541. package/dist/__tests__/render-feature-graph.integration.test.d.ts.map +0 -1
  542. package/dist/__tests__/render-feature-graphics-staging.unit.test.d.ts +0 -2
  543. package/dist/__tests__/render-feature-graphics-staging.unit.test.d.ts.map +0 -1
  544. package/dist/__tests__/render-feature-order.unit.test.d.ts +0 -2
  545. package/dist/__tests__/render-feature-order.unit.test.d.ts.map +0 -1
  546. package/dist/__tests__/render-feature-prepared-graphics-recording.unit.test.d.ts +0 -2
  547. package/dist/__tests__/render-feature-prepared-graphics-recording.unit.test.d.ts.map +0 -1
  548. package/dist/__tests__/render-feature-staging.unit.test.d.ts +0 -2
  549. package/dist/__tests__/render-feature-staging.unit.test.d.ts.map +0 -1
  550. package/dist/__tests__/renderer-render-scene-public.test-d.d.ts +0 -2
  551. package/dist/__tests__/renderer-render-scene-public.test-d.d.ts.map +0 -1
  552. package/dist/__tests__/scene-temporal-coverage.unit.test.d.ts +0 -2
  553. package/dist/__tests__/scene-temporal-coverage.unit.test.d.ts.map +0 -1
  554. package/dist/__tests__/sun-snapshot-consumers.test.d.ts +0 -2
  555. package/dist/__tests__/sun-snapshot-consumers.test.d.ts.map +0 -1
  556. package/dist/__tests__/surface-backend-kind-owner.test-d.d.ts +0 -2
  557. package/dist/__tests__/surface-backend-kind-owner.test-d.d.ts.map +0 -1
  558. package/dist/__tests__/taa-history-store.unit.test.d.ts +0 -2
  559. package/dist/__tests__/taa-history-store.unit.test.d.ts.map +0 -1
  560. package/dist/__tests__/temporal-frame-transaction.integration.test.d.ts +0 -2
  561. package/dist/__tests__/temporal-frame-transaction.integration.test.d.ts.map +0 -1
  562. package/dist/__tests__/temporal-inspection.unit.test.d.ts +0 -2
  563. package/dist/__tests__/temporal-inspection.unit.test.d.ts.map +0 -1
  564. package/dist/assets/__tests__/asset-decoders.unit.test.d.ts +0 -2
  565. package/dist/assets/__tests__/asset-decoders.unit.test.d.ts.map +0 -1
  566. package/dist/assets/__tests__/mipmap-generator.unit.test.d.ts +0 -2
  567. package/dist/assets/__tests__/mipmap-generator.unit.test.d.ts.map +0 -1
  568. package/dist/assets/__tests__/render-asset-port.unit.test.d.ts +0 -2
  569. package/dist/assets/__tests__/render-asset-port.unit.test.d.ts.map +0 -1
  570. package/dist/assets/__tests__/resolve-render-asset.unit.test.d.ts +0 -2
  571. package/dist/assets/__tests__/resolve-render-asset.unit.test.d.ts.map +0 -1
  572. package/dist/chunk-DJIMFYX6.mjs +0 -1439
  573. package/dist/chunk-DJIMFYX6.mjs.map +0 -1
  574. package/dist/chunk-F2SIOCRM.mjs +0 -7423
  575. package/dist/chunk-F2SIOCRM.mjs.map +0 -1
  576. package/dist/chunk-JMSB7AR4.mjs +0 -3
  577. package/dist/chunk-JMSB7AR4.mjs.map +0 -1
  578. package/dist/chunk-KHI6K4C6.mjs +0 -659
  579. package/dist/chunk-KHI6K4C6.mjs.map +0 -1
  580. package/dist/chunk-PORZOL2V.mjs +0 -569
  581. package/dist/chunk-PORZOL2V.mjs.map +0 -1
  582. package/dist/chunk-UOJGMDGP.mjs +0 -29913
  583. package/dist/chunk-UOJGMDGP.mjs.map +0 -1
  584. package/dist/components/__tests__/atmosphere-red.test.d.ts +0 -2
  585. package/dist/components/__tests__/atmosphere-red.test.d.ts.map +0 -1
  586. package/dist/components/__tests__/atmosphere.test.d.ts +0 -2
  587. package/dist/components/__tests__/atmosphere.test.d.ts.map +0 -1
  588. package/dist/components/__tests__/fog.test-d.d.ts +0 -2
  589. package/dist/components/__tests__/fog.test-d.d.ts.map +0 -1
  590. package/dist/components/__tests__/fog.test.d.ts +0 -2
  591. package/dist/components/__tests__/fog.test.d.ts.map +0 -1
  592. package/dist/components/atmosphere.d.ts +0 -18
  593. package/dist/components/atmosphere.d.ts.map +0 -1
  594. package/dist/components/environment.d.ts +0 -115
  595. package/dist/components/environment.d.ts.map +0 -1
  596. package/dist/deferred-lighting.d.ts +0 -13
  597. package/dist/deferred-lighting.d.ts.map +0 -1
  598. package/dist/dynamic-texture-store.d.ts +0 -42
  599. package/dist/dynamic-texture-store.d.ts.map +0 -1
  600. package/dist/environment/__tests__/failure-injection.test.d.ts +0 -2
  601. package/dist/environment/__tests__/failure-injection.test.d.ts.map +0 -1
  602. package/dist/environment/__tests__/generation-red.test.d.ts +0 -2
  603. package/dist/environment/__tests__/generation-red.test.d.ts.map +0 -1
  604. package/dist/environment/__tests__/generation.test.d.ts +0 -2
  605. package/dist/environment/__tests__/generation.test.d.ts.map +0 -1
  606. package/dist/environment/__tests__/graph-transaction.test.d.ts +0 -2
  607. package/dist/environment/__tests__/graph-transaction.test.d.ts.map +0 -1
  608. package/dist/environment/__tests__/inspection-red.test.d.ts +0 -2
  609. package/dist/environment/__tests__/inspection-red.test.d.ts.map +0 -1
  610. package/dist/environment/__tests__/lifecycle-evidence.test.d.ts +0 -2
  611. package/dist/environment/__tests__/lifecycle-evidence.test.d.ts.map +0 -1
  612. package/dist/environment/__tests__/pipeline-topology.test.d.ts +0 -2
  613. package/dist/environment/__tests__/pipeline-topology.test.d.ts.map +0 -1
  614. package/dist/environment/__tests__/readiness.test.d.ts +0 -2
  615. package/dist/environment/__tests__/readiness.test.d.ts.map +0 -1
  616. package/dist/environment/__tests__/recovery.test.d.ts +0 -2
  617. package/dist/environment/__tests__/recovery.test.d.ts.map +0 -1
  618. package/dist/environment/__tests__/resize-dispose.test.d.ts +0 -2
  619. package/dist/environment/__tests__/resize-dispose.test.d.ts.map +0 -1
  620. package/dist/environment/__tests__/signature-red.test.d.ts +0 -2
  621. package/dist/environment/__tests__/signature-red.test.d.ts.map +0 -1
  622. package/dist/environment/__tests__/signature.test.d.ts +0 -2
  623. package/dist/environment/__tests__/signature.test.d.ts.map +0 -1
  624. package/dist/environment/descriptors.d.ts +0 -2
  625. package/dist/environment/descriptors.d.ts.map +0 -1
  626. package/dist/environment/extracted-environment.d.ts +0 -53
  627. package/dist/environment/extracted-environment.d.ts.map +0 -1
  628. package/dist/environment/generation.d.ts +0 -62
  629. package/dist/environment/generation.d.ts.map +0 -1
  630. package/dist/environment/gpu-bundle.d.ts +0 -23
  631. package/dist/environment/gpu-bundle.d.ts.map +0 -1
  632. package/dist/environment/graph.d.ts +0 -108
  633. package/dist/environment/graph.d.ts.map +0 -1
  634. package/dist/environment/inspection.d.ts +0 -48
  635. package/dist/environment/inspection.d.ts.map +0 -1
  636. package/dist/environment/lifecycle.d.ts +0 -22
  637. package/dist/environment/lifecycle.d.ts.map +0 -1
  638. package/dist/environment/readiness.d.ts +0 -29
  639. package/dist/environment/readiness.d.ts.map +0 -1
  640. package/dist/environment/signature.d.ts +0 -70
  641. package/dist/environment/signature.d.ts.map +0 -1
  642. package/dist/extract/__tests__/directional-csm-domain.unit.test.d.ts +0 -2
  643. package/dist/extract/__tests__/directional-csm-domain.unit.test.d.ts.map +0 -1
  644. package/dist/extract/__tests__/environment-source.test.d.ts +0 -2
  645. package/dist/extract/__tests__/environment-source.test.d.ts.map +0 -1
  646. package/dist/extract/__tests__/schema-readers.unit.test.d.ts +0 -2
  647. package/dist/extract/__tests__/schema-readers.unit.test.d.ts.map +0 -1
  648. package/dist/extract/directional-csm.d.ts +0 -129
  649. package/dist/extract/directional-csm.d.ts.map +0 -1
  650. package/dist/extract/index.d.ts +0 -5
  651. package/dist/extract/index.d.ts.map +0 -1
  652. package/dist/extract/material-interface.d.ts +0 -56
  653. package/dist/extract/material-interface.d.ts.map +0 -1
  654. package/dist/extract/schema-readers.d.ts +0 -20
  655. package/dist/extract/schema-readers.d.ts.map +0 -1
  656. package/dist/features/graph-contribution.d.ts +0 -64
  657. package/dist/features/graph-contribution.d.ts.map +0 -1
  658. package/dist/features/index.d.ts +0 -21
  659. package/dist/features/index.d.ts.map +0 -1
  660. package/dist/features/morph/index.d.ts +0 -3
  661. package/dist/features/morph/index.d.ts.map +0 -1
  662. package/dist/features/morph/morph-bounds.d.ts +0 -42
  663. package/dist/features/morph/morph-bounds.d.ts.map +0 -1
  664. package/dist/features/scene-temporal.d.ts +0 -45
  665. package/dist/features/scene-temporal.d.ts.map +0 -1
  666. package/dist/features/taa-resolve.d.ts +0 -21
  667. package/dist/features/taa-resolve.d.ts.map +0 -1
  668. package/dist/frame-chain.d.ts +0 -14
  669. package/dist/frame-chain.d.ts.map +0 -1
  670. package/dist/gpu-driven/view-reference.d.ts.map +0 -1
  671. package/dist/gpu-resource-store.d.ts.map +0 -1
  672. package/dist/hdrp-cluster-membership.d.ts +0 -2
  673. package/dist/hdrp-cluster-membership.d.ts.map +0 -1
  674. package/dist/hdrp-pipeline.d.ts +0 -36
  675. package/dist/hdrp-pipeline.d.ts.map +0 -1
  676. package/dist/ibl/cubemap-projection.d.ts +0 -23
  677. package/dist/ibl/cubemap-projection.d.ts.map +0 -1
  678. package/dist/ibl/face-uniforms.d.ts +0 -65
  679. package/dist/ibl/face-uniforms.d.ts.map +0 -1
  680. package/dist/mesh-update-errors.d.ts +0 -71
  681. package/dist/mesh-update-errors.d.ts.map +0 -1
  682. package/dist/mipmap-generator.d.ts +0 -39
  683. package/dist/mipmap-generator.d.ts.map +0 -1
  684. package/dist/param-schema-projection-census.d.ts +0 -18
  685. package/dist/param-schema-projection-census.d.ts.map +0 -1
  686. package/dist/persistent-render-scene.d.ts +0 -158
  687. package/dist/persistent-render-scene.d.ts.map +0 -1
  688. package/dist/pipeline/index.d.ts +0 -11
  689. package/dist/pipeline/index.d.ts.map +0 -1
  690. package/dist/pipeline-errors.d.ts +0 -110
  691. package/dist/pipeline-errors.d.ts.map +0 -1
  692. package/dist/prepare/__tests__/schema-readers.unit.test.d.ts +0 -2
  693. package/dist/prepare/__tests__/schema-readers.unit.test.d.ts.map +0 -1
  694. package/dist/prepare/index.d.ts +0 -4
  695. package/dist/prepare/index.d.ts.map +0 -1
  696. package/dist/prepare/schema-readers.d.ts +0 -11
  697. package/dist/prepare/schema-readers.d.ts.map +0 -1
  698. package/dist/record/__tests__/environment-record.test.d.ts +0 -2
  699. package/dist/record/__tests__/environment-record.test.d.ts.map +0 -1
  700. package/dist/record/__tests__/frame-targets.unit.test.d.ts +0 -2
  701. package/dist/record/__tests__/frame-targets.unit.test.d.ts.map +0 -1
  702. package/dist/record/__tests__/membership-timing.unit.test.d.ts +0 -2
  703. package/dist/record/__tests__/membership-timing.unit.test.d.ts.map +0 -1
  704. package/dist/record/__tests__/render-submission.integration.test.d.ts +0 -2
  705. package/dist/record/__tests__/render-submission.integration.test.d.ts.map +0 -1
  706. package/dist/record/__tests__/render-submission.perf.test.d.ts +0 -2
  707. package/dist/record/__tests__/render-submission.perf.test.d.ts.map +0 -1
  708. package/dist/record/__tests__/shadow-submit-mode.unit.test.d.ts +0 -2
  709. package/dist/record/__tests__/shadow-submit-mode.unit.test.d.ts.map +0 -1
  710. package/dist/record/__tests__/view-ubo-layout.unit.test.d.ts +0 -2
  711. package/dist/record/__tests__/view-ubo-layout.unit.test.d.ts.map +0 -1
  712. package/dist/record/frame-observation.d.ts +0 -38
  713. package/dist/record/frame-observation.d.ts.map +0 -1
  714. package/dist/record/index.d.ts +0 -15
  715. package/dist/record/index.d.ts.map +0 -1
  716. package/dist/record/main-pass-skin.d.ts +0 -46
  717. package/dist/record/main-pass-skin.d.ts.map +0 -1
  718. package/dist/record/main-pass-sprite.d.ts +0 -69
  719. package/dist/record/main-pass-sprite.d.ts.map +0 -1
  720. package/dist/record/material-payload.d.ts +0 -43
  721. package/dist/record/material-payload.d.ts.map +0 -1
  722. package/dist/record/material-slot-plan.d.ts +0 -26
  723. package/dist/record/material-slot-plan.d.ts.map +0 -1
  724. package/dist/record/membership-timing.d.ts +0 -232
  725. package/dist/record/membership-timing.d.ts.map +0 -1
  726. package/dist/record/shadow-caster-uniform.d.ts +0 -8
  727. package/dist/record/shadow-caster-uniform.d.ts.map +0 -1
  728. package/dist/record/shadow-submit-mode.d.ts +0 -66
  729. package/dist/record/shadow-submit-mode.d.ts.map +0 -1
  730. package/dist/render-dispatch-membership.d.ts +0 -47
  731. package/dist/render-dispatch-membership.d.ts.map +0 -1
  732. package/dist/render-pipeline-context.d.ts +0 -289
  733. package/dist/render-pipeline-context.d.ts.map +0 -1
  734. package/dist/render-pipeline-target.d.ts +0 -16
  735. package/dist/render-pipeline-target.d.ts.map +0 -1
  736. package/dist/render-scene-projection.d.ts +0 -174
  737. package/dist/render-scene-projection.d.ts.map +0 -1
  738. package/dist/render-system-fold.d.ts +0 -266
  739. package/dist/render-system-fold.d.ts.map +0 -1
  740. package/dist/renderer/asset-service.d.ts +0 -10
  741. package/dist/renderer/asset-service.d.ts.map +0 -1
  742. package/dist/renderer/backend-selection.d.ts.map +0 -1
  743. package/dist/renderer/environment-classify.d.ts +0 -6
  744. package/dist/renderer/environment-classify.d.ts.map +0 -1
  745. package/dist/renderer/environment-error.d.ts +0 -13
  746. package/dist/renderer/environment-error.d.ts.map +0 -1
  747. package/dist/renderer/material/pipeline-projection.d.ts +0 -91
  748. package/dist/renderer/material/pipeline-projection.d.ts.map +0 -1
  749. package/dist/renderer/renderer-factory.d.ts +0 -289
  750. package/dist/renderer/renderer-factory.d.ts.map +0 -1
  751. package/dist/renderer.d.ts +0 -771
  752. package/dist/renderer.d.ts.map +0 -1
  753. package/dist/scene-utils/collect-subtree.d.ts +0 -11
  754. package/dist/scene-utils/collect-subtree.d.ts.map +0 -1
  755. package/dist/ssao-data.d.ts +0 -34
  756. package/dist/ssao-data.d.ts.map +0 -1
  757. package/dist/surface-format.d.ts +0 -10
  758. package/dist/surface-format.d.ts.map +0 -1
  759. package/dist/taa-history-store.d.ts +0 -88
  760. package/dist/taa-history-store.d.ts.map +0 -1
  761. package/dist/temporal-coverage.d.ts +0 -35
  762. package/dist/temporal-coverage.d.ts.map +0 -1
  763. package/dist/temporal-frame-transaction.d.ts +0 -92
  764. package/dist/temporal-frame-transaction.d.ts.map +0 -1
  765. package/dist/temporal-inspection.d.ts +0 -57
  766. package/dist/temporal-inspection.d.ts.map +0 -1
  767. package/dist/temporal-view.d.ts +0 -43
  768. package/dist/temporal-view.d.ts.map +0 -1
  769. package/dist/tilemap/resolve-tileset-runtime.d.ts +0 -23
  770. package/dist/tilemap/resolve-tileset-runtime.d.ts.map +0 -1
  771. package/dist/urp-pipeline.d.ts +0 -4
  772. package/dist/urp-pipeline.d.ts.map +0 -1
  773. package/src/__tests__/analytic-sky-contract.test.ts +0 -27
  774. package/src/__tests__/analytic-sky-falsify-carriers.mjs +0 -43
  775. package/src/__tests__/analytic-sky-falsify.test.ts +0 -94
  776. package/src/__tests__/assets-runtime-handoff.integration.test.ts +0 -36
  777. package/src/__tests__/backend-selection.integration.test.ts +0 -11
  778. package/src/__tests__/camera-temporal.test-d.ts +0 -8
  779. package/src/__tests__/camera-temporal.test.ts +0 -188
  780. package/src/__tests__/directional-shadow-probe-atlas-layout.unit.test.ts +0 -18
  781. package/src/__tests__/environment-inspection.test.ts +0 -45
  782. package/src/__tests__/fog-ai-user.fixture.ts +0 -350
  783. package/src/__tests__/fog-custom-render-feature.fixture.ts +0 -33
  784. package/src/__tests__/fog-custom-render-feature.integration.test.ts +0 -76
  785. package/src/__tests__/fog-inspection.integration.test.ts +0 -127
  786. package/src/__tests__/fog-owner-state.integration.test.ts +0 -112
  787. package/src/__tests__/fog-pipeline-topology.integration.test.ts +0 -93
  788. package/src/__tests__/fog-public-surface.integration.test.ts +0 -60
  789. package/src/__tests__/fog-ray-contract.integration.test.ts +0 -73
  790. package/src/__tests__/fog-source-absence.integration.test.ts +0 -51
  791. package/src/__tests__/fog-temporal.integration.test.ts +0 -115
  792. package/src/__tests__/frame-chain.unit.test.ts +0 -26
  793. package/src/__tests__/gpu-scene-field-type-owner.test-d.ts +0 -27
  794. package/src/__tests__/hdrp-pipeline.unit.test.ts +0 -100
  795. package/src/__tests__/ibl/ibl-fallback.unit.test.ts +0 -23
  796. package/src/__tests__/material-derived-error-stop-draw.integration.test.ts +0 -69
  797. package/src/__tests__/material-derived-payload.integration.test.ts +0 -164
  798. package/src/__tests__/materials.unit.test.ts +0 -25
  799. package/src/__tests__/param-schema-projection-census.unit.test.ts +0 -40
  800. package/src/__tests__/persistent-render-scene.unit.test.ts +0 -1311
  801. package/src/__tests__/pipeline-error-policy-owner.unit.test.ts +0 -167
  802. package/src/__tests__/pipeline-pass-trace.test.ts +0 -92
  803. package/src/__tests__/pipeline-stage-owner.test-d.ts +0 -13
  804. package/src/__tests__/plugin.test.ts +0 -25
  805. package/src/__tests__/prepared-graphics-backend-matrix.unit.test.ts +0 -129
  806. package/src/__tests__/prepared-graphics-resolver-recording.unit.test.ts +0 -180
  807. package/src/__tests__/public-pipeline-id.test-d.ts +0 -6
  808. package/src/__tests__/render-dispatch-membership.unit.test.ts +0 -117
  809. package/src/__tests__/render-feature-construction.unit.test.ts +0 -124
  810. package/src/__tests__/render-feature-error-code-owner.test-d.ts +0 -27
  811. package/src/__tests__/render-feature-gpu-buffer-usage-owner.test-d.ts +0 -46
  812. package/src/__tests__/render-feature-graph.integration.test.ts +0 -205
  813. package/src/__tests__/render-feature-graphics-staging.unit.test.ts +0 -200
  814. package/src/__tests__/render-feature-order.unit.test.ts +0 -66
  815. package/src/__tests__/render-feature-prepared-graphics-recording.unit.test.ts +0 -107
  816. package/src/__tests__/render-feature-staging.unit.test.ts +0 -94
  817. package/src/__tests__/renderer-render-scene-public.test-d.ts +0 -27
  818. package/src/__tests__/scene-temporal-coverage.unit.test.ts +0 -259
  819. package/src/__tests__/sun-snapshot-consumers.test.ts +0 -35
  820. package/src/__tests__/surface-backend-kind-owner.test-d.ts +0 -42
  821. package/src/__tests__/taa-history-store.unit.test.ts +0 -196
  822. package/src/__tests__/temporal-frame-transaction.integration.test.ts +0 -537
  823. package/src/__tests__/temporal-inspection.unit.test.ts +0 -138
  824. package/src/assets/__tests__/asset-decoders.unit.test.ts +0 -92
  825. package/src/assets/__tests__/mipmap-generator.unit.test.ts +0 -52
  826. package/src/assets/__tests__/render-asset-port.unit.test.ts +0 -54
  827. package/src/assets/__tests__/resolve-render-asset.unit.test.ts +0 -47
  828. package/src/components/__tests__/atmosphere-red.test.ts +0 -51
  829. package/src/components/__tests__/atmosphere.test.ts +0 -79
  830. package/src/components/__tests__/fog.test-d.ts +0 -49
  831. package/src/components/__tests__/fog.test.ts +0 -60
  832. package/src/components/atmosphere.ts +0 -64
  833. package/src/deferred-lighting.ts +0 -92
  834. package/src/dynamic-texture-store.ts +0 -111
  835. package/src/environment/README.md +0 -76
  836. package/src/environment/__tests__/failure-injection.test.ts +0 -50
  837. package/src/environment/__tests__/generation-red.test.ts +0 -64
  838. package/src/environment/__tests__/generation.test.ts +0 -37
  839. package/src/environment/__tests__/graph-transaction.test.ts +0 -85
  840. package/src/environment/__tests__/inspection-red.test.ts +0 -53
  841. package/src/environment/__tests__/lifecycle-evidence.test.ts +0 -40
  842. package/src/environment/__tests__/pipeline-topology.test.ts +0 -33
  843. package/src/environment/__tests__/readiness.test.ts +0 -42
  844. package/src/environment/__tests__/recovery.test.ts +0 -62
  845. package/src/environment/__tests__/resize-dispose.test.ts +0 -30
  846. package/src/environment/__tests__/signature-red.test.ts +0 -45
  847. package/src/environment/__tests__/signature.test.ts +0 -60
  848. package/src/environment/descriptors.ts +0 -7
  849. package/src/environment/extracted-environment.ts +0 -239
  850. package/src/environment/generation.ts +0 -158
  851. package/src/environment/gpu-bundle.ts +0 -144
  852. package/src/environment/graph.ts +0 -588
  853. package/src/environment/inspection.ts +0 -107
  854. package/src/environment/lifecycle.ts +0 -124
  855. package/src/environment/readiness.ts +0 -76
  856. package/src/environment/signature.ts +0 -185
  857. package/src/extract/__tests__/directional-csm-domain.unit.test.ts +0 -391
  858. package/src/extract/__tests__/environment-source.test.ts +0 -105
  859. package/src/extract/__tests__/schema-readers.unit.test.ts +0 -16
  860. package/src/extract/directional-csm.ts +0 -959
  861. package/src/extract/index.ts +0 -10
  862. package/src/extract/material-interface.ts +0 -604
  863. package/src/extract/schema-readers.ts +0 -27
  864. package/src/features/graph-contribution.ts +0 -577
  865. package/src/features/index.ts +0 -100
  866. package/src/features/morph/index.ts +0 -24
  867. package/src/features/morph/morph-bounds.ts +0 -123
  868. package/src/features/scene-temporal.ts +0 -274
  869. package/src/features/taa-resolve.ts +0 -244
  870. package/src/frame-chain.ts +0 -21
  871. package/src/hdrp-cluster-membership.ts +0 -70
  872. package/src/ibl/cubemap-projection.ts +0 -60
  873. package/src/ibl/face-uniforms.ts +0 -150
  874. package/src/mesh-update-errors.ts +0 -113
  875. package/src/mipmap-generator.ts +0 -244
  876. package/src/param-schema-projection-census.ts +0 -73
  877. package/src/persistent-render-scene.ts +0 -1752
  878. package/src/pipeline/index.ts +0 -40
  879. package/src/pipeline-errors.ts +0 -172
  880. package/src/prepare/__tests__/schema-readers.unit.test.ts +0 -16
  881. package/src/prepare/index.ts +0 -8
  882. package/src/prepare/schema-readers.ts +0 -20
  883. package/src/record/__tests__/environment-record.test.ts +0 -35
  884. package/src/record/__tests__/frame-targets.unit.test.ts +0 -54
  885. package/src/record/__tests__/membership-timing.unit.test.ts +0 -524
  886. package/src/record/__tests__/render-submission.integration.test.ts +0 -76
  887. package/src/record/__tests__/render-submission.perf.test.ts +0 -141
  888. package/src/record/__tests__/shadow-submit-mode.unit.test.ts +0 -88
  889. package/src/record/__tests__/view-ubo-layout.unit.test.ts +0 -101
  890. package/src/record/frame-observation.ts +0 -122
  891. package/src/record/index.ts +0 -15
  892. package/src/record/main-pass-skin.ts +0 -51
  893. package/src/record/main-pass-sprite.ts +0 -166
  894. package/src/record/material-payload.ts +0 -292
  895. package/src/record/material-slot-plan.ts +0 -68
  896. package/src/record/membership-timing.ts +0 -1012
  897. package/src/record/shadow-caster-uniform.ts +0 -37
  898. package/src/record/shadow-submit-mode.ts +0 -277
  899. package/src/render-dispatch-membership.ts +0 -155
  900. package/src/render-pipeline-context.ts +0 -332
  901. package/src/render-pipeline-target.ts +0 -96
  902. package/src/render-scene-projection.ts +0 -1738
  903. package/src/render-system-fold.ts +0 -531
  904. package/src/renderer/asset-service.ts +0 -32
  905. package/src/renderer/backend-selection.ts +0 -121
  906. package/src/renderer/environment-classify.ts +0 -30
  907. package/src/renderer/environment-error.ts +0 -19
  908. package/src/renderer/material/pipeline-projection.ts +0 -140
  909. package/src/renderer.ts +0 -940
  910. package/src/scene-utils/collect-subtree.ts +0 -40
  911. package/src/ssao-data.ts +0 -106
  912. package/src/surface-format.ts +0 -37
  913. package/src/taa-history-store.ts +0 -429
  914. package/src/temporal-coverage.ts +0 -106
  915. package/src/temporal-frame-transaction.ts +0 -301
  916. package/src/temporal-inspection.ts +0 -194
  917. package/src/temporal-view.ts +0 -174
  918. package/src/tilemap/resolve-tileset-runtime.ts +0 -72
package/dist/index.d.ts CHANGED
@@ -1,10 +1,7 @@
1
1
  export { materialContribution, renderPipelineContribution, samplerContribution, } from './assets/asset-decoders';
2
- export type { RenderAssetPort } from './assets/render-asset-port';
3
- export { Atmosphere } from './components/atmosphere';
4
- export type { Antialias, CameraProjection, Tonemap } from './components/camera';
5
- export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, antialiasFromF32, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, cameraProjectionFromF32, orthographic, perspective, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, tonemapFromF32, tonemapToU32, } from './components/camera';
2
+ export type { Antialias, BloomEnabled, CameraProjection, Tonemap } from './components/camera';
3
+ export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, cameraProjectionFromF32, orthographic, perspective, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, } from './components/camera';
6
4
  export * from './components/directional-light';
7
- export { Fog, SKYBOX_MODE_CUBEMAP, SkyboxBackground, type SkyboxMode, Skylight, skyboxModeFromF32, } from './components/environment';
8
5
  export { Instances, type InstancesData } from './components/instances';
9
6
  export { Layer } from './components/layer';
10
7
  export * from './components/mesh-filter';
@@ -12,46 +9,19 @@ export * from './components/mesh-renderer';
12
9
  export { PointLight } from './components/point-light';
13
10
  export { PointLightShadow } from './components/point-light-shadow';
14
11
  export { PostProcessParams } from './components/post-process-params';
15
- export { SceneInstance, type SceneInstanceOverrideRecord, type SceneInstanceState, } from './components/scene-instance';
12
+ export { SceneInstance } from './components/scene-instance';
13
+ export { SKYBOX_MODE_CUBEMAP, SkyboxBackground, type SkyboxMode, } from './components/skybox-background';
14
+ export { Skylight } from './components/skylight';
16
15
  export { SortKey } from './components/sort-key';
17
16
  export { SpotLight } from './components/spot-light';
18
17
  export { Visibility, type VisibilityState, VisibilityStateValue, visibilityStateFromU32, } from './components/visibility';
19
- export { type AtmosphereSnapshot, type EnvironmentSelectionInput, type ExtractedEnvironment, selectEnvironmentSource, } from './environment/extracted-environment';
20
- export { type EnvironmentInspection, type EnvironmentInspectionInput, type EnvironmentInspectionState, type EnvironmentInspectionTaa, type FogEnvironmentProjectionInput, inspectEnvironmentGeneration, projectFogEnvironment, } from './environment/inspection';
21
- export { type AtmosphereCapsInsufficientDetail, AtmosphereCapsInsufficientError, type AtmosphereCardinalityInvalidDetail, AtmosphereCardinalityInvalidError, type AtmosphereField, type AtmosphereParameterInvalidDetail, AtmosphereParameterInvalidError, type AtmosphereProducerFailedDetail, AtmosphereProducerFailedError, type AtmosphereSunMissingDetail, AtmosphereSunMissingError, type EnvironmentSourceConflictDetail, EnvironmentSourceConflictError, type EquirectProjectionFailedDetail, type FogOwnerConflictDetail, FogOwnerConflictError, type FogParametersInvalidDetail, FogParametersInvalidError, ObservationUnavailableError, type RenderError, type RenderErrorCode, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, type RenderValidationErrorCode, ResourceInvalidValueError, SpawnLightInvalidBoundsError, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, TaaCapsInsufficientError, TemporalUnsupportedError, type TemporalUnsupportedReason, } from './errors/index';
22
- export { RecoverError, type RecoverErrorCode } from './errors/recover';
18
+ export type { RenderError, RenderErrorCode } from './errors/render';
23
19
  export { resolveVisibility, type VisibilityResolution, type VisibilitySnapshot, } from './extract/visibility';
24
- /**
25
- * Public producer seam: RenderFeature, its narrow stage contexts, structured
26
- * diagnostics, graph contribution vocabulary, and prepared graphics facade.
27
- * This root declaration is the AI-discoverable API authority; host
28
- * construction details remain under the internal entry.
29
- */
30
- export * from './features';
31
- export { createRenderFeatureTarget, type RenderFeatureTargetHandle, type RenderFeatureTargetInput, type RenderFeatureTargetKind, } from './features/targets';
32
- export { Materials, materialTextureValue } from './materials';
33
- export type { MeshMaterialBindingDiagnostic, MeshMaterialBindingObservation, MeshMaterialBindingSource, ResolvedMeshMaterialBinding, } from './mesh-material-bindings';
34
- export { type MeshNotResidentDetail, type MeshRangeInvalidDetail, type MeshRangeInvalidReason, type MeshShapeMismatchDetail, MeshUpdateError, type MeshUpdateErrorCode, } from './mesh-update-errors';
35
- export type { PersistentRenderSceneInspection, RenderSceneResyncReason, } from './persistent-render-scene';
36
- export { PipelineError, type PipelineErrorCode } from './pipeline-errors';
37
- export { ownedRendererPlugin, renderComponentsPlugin, rendererPlugin, renderFeaturePlugin, } from './plugin';
38
- export { PostProcessError, type PostProcessErrorCode } from './post-process-errors';
39
- export { type FrameObservation, type FrameObservationMetadata, type FrameObservationOptions, type FrameObservationReadback, type FrameObservationSource, observeCurrentFrame, } from './record/frame-observation';
40
- export { createMembershipTiming, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, type MembershipTimingController, MembershipTimingError, type MembershipTimingGpuOutputSource, type MembershipTimingGpuReport, type MembershipTimingOptions, type MembershipTimingReasonCode, type MembershipTimingReport, } from './record/membership-timing';
41
- export { TONEMAP_POST_PROCESS_ID } from './render-graph-primitives';
42
- export { type BuiltinEnvironmentPipeline, createEnvironmentPipelineTopology, type RenderColorDomain, type RenderPipeline, type RenderPipelineBuildContext, type RenderPipelineFeatureTarget, type RenderPipelineFrame, type RenderPipelineTopology, resolvePostColorDomainContract, resolveToneOutputContract, type ToneOutputContract, } from './render-pipeline';
43
- export type { RenderPipelineContext } from './render-pipeline-context';
44
- export { createRenderPipelineTarget, importRenderPipelineSurface, type RenderPipelineTarget, } from './render-pipeline-target';
45
- export type { RenderSceneInspection } from './render-system';
46
- export type { DrawOwnerOptions, HealthChangeListener, HealthDetailDeviceLost, HealthDetailInternalFault, HealthReason, HealthSnapshot, Renderer, RendererBackend, RendererError, RendererErrorListener, RendererInstallError, RendererLostInfo, RendererLostListener, RendererOptions, RenderPhase, RenderPhaseSkipReason, RenderResult, } from './renderer';
47
- export { RENDER_PHASE_CATALOG } from './renderer';
48
- export type { RhiBackendInstrumentation } from './renderer/backend-selection';
49
- export { ACTIVE_CAMERA_KEY, type ActiveCamera, getActiveCamera, setActiveCamera, } from './systems/active-camera';
50
- export type { TaaHistoryInspection, TaaHistoryResetReason } from './taa-history-store';
51
- export type { TemporalCoverageClass, TemporalCoverageContribution, TemporalCoverageSummary, TemporalMissingReason, TemporalProducerLane, TemporalReactiveReason, } from './temporal-coverage';
52
- export { TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, } from './temporal-coverage';
53
- export type { TemporalFrameTransactionInspection, TemporalHistoryDirection, } from './temporal-frame-transaction';
54
- export type { TemporalInspection, TemporalInspectionCoverage, TemporalInspectionRecovery, TemporalInspectionStatus, } from './temporal-inspection';
55
- export { addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, type TypedBloomTargets, type TypedFullscreenPassOptions, type TypedScenePassOptions, type TypedSsaoTargets, } from './typed-render-graph-primitives';
56
- export { URP_PIPELINE_ID } from './urp-pipeline';
20
+ export type { RenderFeatureLogicalTarget, RenderFeaturePassDeclaration, RenderFeaturePlan, RenderFeaturePlanContext, RenderFeatureResourceDeclaration, } from './features/plan';
21
+ export type { RenderFeature, RenderFeatureCapabilityKey, RenderFeatureDiagnostics, RenderFeatureErrorDescriptor, RenderFeatureExtractContext, RenderFeatureHiddenEntityReport, RenderFeatureStatus, RenderFeatureWorldVisibilitySnapshot, } from './features/types';
22
+ export { Materials } from './materials';
23
+ export { DEFAULT_STANDARD_PROFILE } from './pipeline/standard-profile';
24
+ export { renderComponentsPlugin } from './plugin';
25
+ export type { FrameCamera, FrameEnvironment, FrameObservationRequest, FrameReceipt, FrameReceiptObservation, Renderer, RendererEvent, RendererOptions, RendererState, RenderFrameInput, RenderInspection, RenderProfile, RenderResult, RenderWorldLease, } from './render-contract';
26
+ export { RENDER_PHASE_CATALOG } from './render-contract';
57
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EACL,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,EACb,8BAA8B,EAC9B,6BAA6B,EAC7B,MAAM,EACN,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,cAAc,EACd,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,cAAc,gCAAgC,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,UAAU,GAChB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EACL,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,iBAAiB,EACjB,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,iBAAiB,CAAC;AAIzB,YAAY,EACV,aAAa,EACb,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,2BAA2B,EAC3B,+BAA+B,EAC/B,mBAAmB,EACnB,oCAAoC,GACrC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,EACZ,uBAAuB,EACvB,QAAQ,EACR,aAAa,EACb,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.mjs CHANGED
@@ -1,5 +1,167 @@
1
- export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-PORZOL2V.mjs';
2
- export { ACTIVE_CAMERA_KEY, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MembershipTimingError, MeshUpdateError, PipelineError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, URP_PIPELINE_ID, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, createEnvironmentPipelineTopology, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureTarget, createRenderPipelineTarget, getActiveCamera, importRenderPipelineSurface, inspectEnvironmentGeneration, isRenderFeatureTargetHandle, observeCurrentFrame, projectFogEnvironment, projectRenderFeatureContributions, renderFeatureAttachmentResource, resolvePostColorDomainContract, resolveToneOutputContract, resolveVisibility, selectEnvironmentSource, setActiveCamera } from './chunk-UOJGMDGP.mjs';
3
- export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, Fog, FogOwnerConflictError, FogParametersInvalidError, Instances, Layer, Materials, MeshFilter, MeshRenderer, ObservationUnavailableError, PointLight, PointLightShadow, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SceneInstance, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TaaCapsInsufficientError, TemporalUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, cameraProjectionFromF32, materialTextureValue, orthographic, perspective, skyboxModeFromF32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-DJIMFYX6.mjs';
1
+ import { Camera, DirectionalLight, Instances, Layer, MeshFilter, MeshRenderer, PointLight, PointLightShadow, PostProcessParams, SceneInstance, SkyboxBackground, Skylight, SortKey, SpotLight, Visibility } from './chunk-SCRSAK5B.mjs';
2
+ export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DEFAULT_STANDARD_PROFILE, DirectionalLight, Instances, Layer, MeshFilter, MeshRenderer, PointLight, PointLightShadow, PostProcessParams, RENDER_PHASE_CATALOG, SKYBOX_MODE_CUBEMAP, SceneInstance, SkyboxBackground, Skylight, SortKey, SpotLight, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, Visibility, VisibilityStateValue, cameraProjectionFromF32, orthographic, perspective, resolveVisibility, visibilityStateFromU32 } from './chunk-SCRSAK5B.mjs';
3
+ import { SpriteAnimation, SpriteInstances, SpriteRegionOverride, TileLayer, Tilemap } from './chunk-CQXZC5XI.mjs';
4
+ export { Materials } from './chunk-CQXZC5XI.mjs';
5
+ import { validateCookedMaterialRecord } from '@forgeax/engine-pack';
6
+ import { ok, err, MATERIAL_TEXTURE_SLOTS } from '@forgeax/engine-types';
7
+
8
+ function invalid(guid, expected, reason) {
9
+ return err({
10
+ code: "asset-package-invalid",
11
+ expected,
12
+ hint: "recook the render asset and publish its complete cooked payload",
13
+ detail: { guid, reason }
14
+ });
15
+ }
16
+ function record(value) {
17
+ return value !== null && typeof value === "object" && !Array.isArray(value);
18
+ }
19
+ function validMaterial(value) {
20
+ if (!record(value) || value.kind !== "material") return false;
21
+ if (value.cooked !== void 0 && !validateCookedMaterialRecord(value.cooked).ok) {
22
+ return false;
23
+ }
24
+ if (value.passes !== void 0 && !Array.isArray(value.passes)) return false;
25
+ if (value.parameters !== void 0 && !Array.isArray(value.parameters)) return false;
26
+ return value.values === void 0 || record(value.values);
27
+ }
28
+ function resolveMaterialWireRef(value, refs, field, guid) {
29
+ if (typeof value !== "number") return ok(value);
30
+ if (!Number.isSafeInteger(value) || value < 0 || refs[value] === void 0) {
31
+ return err({
32
+ code: "asset-package-invalid",
33
+ expected: `${field} to reference a GUID through the material Pack refs[] table`,
34
+ hint: "recook the material so every texture or sampler ref has a matching refs[] entry",
35
+ detail: { guid, reason: `${field} refs[${value}] is out of bounds` }
36
+ });
37
+ }
38
+ return ok(refs[value]);
39
+ }
40
+ function resolveMaterialWireRefs(value, refs, guid) {
41
+ if (refs.length === 0) return ok(value);
42
+ let changed = false;
43
+ let parent = value.parent;
44
+ if (typeof parent === "number") {
45
+ const resolved = resolveMaterialWireRef(parent, refs, "parent", guid);
46
+ if (!resolved.ok) return resolved;
47
+ parent = resolved.value;
48
+ changed = true;
49
+ }
50
+ if (value.values === void 0) {
51
+ return changed ? ok({ ...value, ...parent === void 0 ? {} : { parent } }) : ok(value);
52
+ }
53
+ const textureFields = new Set(
54
+ value.parameters === void 0 ? MATERIAL_TEXTURE_SLOTS : value.parameters.filter((parameter) => parameter.type === "texture").map((parameter) => parameter.name)
55
+ );
56
+ const values = { ...value.values };
57
+ for (const [field, raw] of Object.entries(values)) {
58
+ if (typeof raw === "number" && textureFields.has(field)) {
59
+ const resolved = resolveMaterialWireRef(raw, refs, field, guid);
60
+ if (!resolved.ok) return resolved;
61
+ values[field] = resolved.value;
62
+ changed = true;
63
+ continue;
64
+ }
65
+ if (!record(raw)) continue;
66
+ const rawRecord = raw;
67
+ let rewritten;
68
+ for (const key of ["texture", "sampler"]) {
69
+ if (!(key in rawRecord)) continue;
70
+ const resolved = resolveMaterialWireRef(rawRecord[key], refs, `${field}.${key}`, guid);
71
+ if (!resolved.ok) return resolved;
72
+ if (resolved.value !== rawRecord[key]) {
73
+ rewritten ??= { ...rawRecord };
74
+ rewritten[key] = resolved.value;
75
+ changed = true;
76
+ }
77
+ }
78
+ if (rewritten !== void 0) {
79
+ values[field] = rewritten;
80
+ }
81
+ }
82
+ return ok(changed ? { ...value, ...parent === void 0 ? {} : { parent }, values } : value);
83
+ }
84
+ var materialContribution = {
85
+ kind: { kind: "material" },
86
+ consumer: "Render MaterialScene",
87
+ decoder: {
88
+ async decode({ envelope }) {
89
+ if (!validMaterial(envelope.payload)) {
90
+ return invalid(
91
+ envelope.guid,
92
+ "a material payload with cooked passes, parameters, and values",
93
+ "material owner validation failed"
94
+ );
95
+ }
96
+ return resolveMaterialWireRefs(envelope.payload, envelope.refs, envelope.guid);
97
+ }
98
+ }
99
+ };
100
+ var samplerContribution = {
101
+ kind: { kind: "sampler" },
102
+ consumer: "Render DeviceScope",
103
+ decoder: {
104
+ async decode({ envelope }) {
105
+ return envelope.payload.kind === "sampler" ? ok(envelope.payload) : invalid(envelope.guid, "a sampler payload", "sampler owner validation failed");
106
+ }
107
+ }
108
+ };
109
+ var renderPipelineContribution = {
110
+ kind: { kind: "render-pipeline" },
111
+ consumer: "Render Pipeline",
112
+ decoder: {
113
+ async decode({ envelope }) {
114
+ const payload = envelope.payload;
115
+ return payload.kind === "render-pipeline" && payload.pipelineId.trim().length > 0 ? ok(payload) : invalid(
116
+ envelope.guid,
117
+ "a render-pipeline payload with a pipelineId",
118
+ "render-pipeline owner validation failed"
119
+ );
120
+ }
121
+ }
122
+ };
123
+
124
+ // src/plugin.ts
125
+ var RENDER_COMPONENTS = [
126
+ Camera,
127
+ DirectionalLight,
128
+ Instances,
129
+ Layer,
130
+ MeshFilter,
131
+ MeshRenderer,
132
+ PointLight,
133
+ PointLightShadow,
134
+ PostProcessParams,
135
+ SceneInstance,
136
+ SkyboxBackground,
137
+ Skylight,
138
+ SortKey,
139
+ SpotLight,
140
+ SpriteAnimation,
141
+ SpriteInstances,
142
+ SpriteRegionOverride,
143
+ TileLayer,
144
+ Tilemap,
145
+ Visibility
146
+ ];
147
+ function registerRenderComponents(world) {
148
+ const leases = RENDER_COMPONENTS.map(
149
+ (component) => world.components.register(component).unwrap()
150
+ );
151
+ return () => {
152
+ for (let index = leases.length - 1; index >= 0; index -= 1) leases[index]?.dispose();
153
+ };
154
+ }
155
+ function renderComponentsPlugin() {
156
+ return {
157
+ name: "render-components",
158
+ inject: ["world"],
159
+ apply(ctx) {
160
+ ctx.effect(() => registerRenderComponents(ctx.world), "render/components");
161
+ }
162
+ };
163
+ }
164
+
165
+ export { materialContribution, renderComponentsPlugin, renderPipelineContribution, samplerContribution };
4
166
  //# sourceMappingURL=index.mjs.map
5
167
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"index.mjs"}
1
+ {"version":3,"sources":["../src/assets/asset-decoders.ts","../src/plugin.ts"],"names":[],"mappings":";;;;;;;AAaA,SAAS,OAAA,CAAQ,IAAA,EAAc,QAAA,EAAkB,MAAA,EAAgB;AAC/D,EAAA,OAAO,GAAA,CAAI;AAAA,IACT,IAAA,EAAM,uBAAA;AAAA,IACN,QAAA;AAAA,IACA,IAAA,EAAM,iEAAA;AAAA,IACN,MAAA,EAAQ,EAAE,IAAA,EAAM,MAAA;AAAO,GACxB,CAAA;AACH;AAEA,SAAS,OAAO,KAAA,EAAkD;AAChE,EAAA,OAAO,KAAA,KAAU,QAAQ,OAAO,KAAA,KAAU,YAAY,CAAC,KAAA,CAAM,QAAQ,KAAK,CAAA;AAC5E;AAEA,SAAS,cAAc,KAAA,EAAwC;AAC7D,EAAA,IAAI,CAAC,MAAA,CAAO,KAAK,KAAK,KAAA,CAAM,IAAA,KAAS,YAAY,OAAO,KAAA;AACxD,EAAA,IAAI,KAAA,CAAM,WAAW,MAAA,IAAa,CAAC,6BAA6B,KAAA,CAAM,MAAM,EAAE,EAAA,EAAI;AAChF,IAAA,OAAO,KAAA;AAAA,EACT;AACA,EAAA,IAAI,KAAA,CAAM,WAAW,MAAA,IAAa,CAAC,MAAM,OAAA,CAAQ,KAAA,CAAM,MAAM,CAAA,EAAG,OAAO,KAAA;AACvE,EAAA,IAAI,KAAA,CAAM,eAAe,MAAA,IAAa,CAAC,MAAM,OAAA,CAAQ,KAAA,CAAM,UAAU,CAAA,EAAG,OAAO,KAAA;AAC/E,EAAA,OAAO,KAAA,CAAM,MAAA,KAAW,MAAA,IAAa,MAAA,CAAO,MAAM,MAAM,CAAA;AAC1D;AAEA,SAAS,sBAAA,CACP,KAAA,EACA,IAAA,EACA,KAAA,EACA,IAAA,EACiF;AACjF,EAAA,IAAI,OAAO,KAAA,KAAU,QAAA,EAAU,OAAO,GAAG,KAAwB,CAAA;AACjE,EAAA,IAAI,CAAC,MAAA,CAAO,aAAA,CAAc,KAAK,CAAA,IAAK,QAAQ,CAAA,IAAK,IAAA,CAAK,KAAK,CAAA,KAAM,MAAA,EAAW;AAC1E,IAAA,OAAO,GAAA,CAAoB;AAAA,MACzB,IAAA,EAAM,uBAAA;AAAA,MACN,QAAA,EAAU,GAAG,KAAK,CAAA,2DAAA,CAAA;AAAA,MAClB,IAAA,EAAM,iFAAA;AAAA,MACN,MAAA,EAAQ,EAAE,IAAA,EAAM,MAAA,EAAQ,GAAG,KAAK,CAAA,MAAA,EAAS,KAAK,CAAA,kBAAA,CAAA;AAAqB,KACpE,CAAA;AAAA,EACH;AACA,EAAA,OAAO,EAAA,CAAG,IAAA,CAAK,KAAK,CAAW,CAAA;AACjC;AAEA,SAAS,uBAAA,CACP,KAAA,EACA,IAAA,EACA,IAAA,EAC+E;AAC/E,EAAA,IAAI,IAAA,CAAK,MAAA,KAAW,CAAA,EAAG,OAAO,GAAG,KAAK,CAAA;AAEtC,EAAA,IAAI,OAAA,GAAU,KAAA;AACd,EAAA,IAAI,SAAS,KAAA,CAAM,MAAA;AACnB,EAAA,IAAI,OAAO,WAAW,QAAA,EAAU;AAC9B,IAAA,MAAM,QAAA,GAAW,sBAAA,CAAuB,MAAA,EAAQ,IAAA,EAAM,UAAU,IAAI,CAAA;AACpE,IAAA,IAAI,CAAC,QAAA,CAAS,EAAA,EAAI,OAAO,QAAA;AACzB,IAAA,MAAA,GAAS,QAAA,CAAS,KAAA;AAClB,IAAA,OAAA,GAAU,IAAA;AAAA,EACZ;AAEA,EAAA,IAAI,KAAA,CAAM,WAAW,MAAA,EAAW;AAC9B,IAAA,OAAO,UAAU,EAAA,CAAG,EAAE,GAAG,KAAA,EAAO,GAAI,MAAA,KAAW,MAAA,GAAY,EAAC,GAAI,EAAE,MAAA,EAAO,EAAI,CAAA,GAAI,GAAG,KAAK,CAAA;AAAA,EAC3F;AAEA,EAAA,MAAM,gBAAgB,IAAI,GAAA;AAAA,IACxB,MAAM,UAAA,KAAe,MAAA,GACjB,sBAAA,GACA,KAAA,CAAM,WACH,MAAA,CAAO,CAAC,SAAA,KAAc,SAAA,CAAU,SAAS,SAAS,CAAA,CAClD,IAAI,CAAC,SAAA,KAAc,UAAU,IAAI;AAAA,GAC1C;AACA,EAAA,MAAM,MAAA,GAAS,EAAE,GAAG,KAAA,CAAM,MAAA,EAAO;AACjC,EAAA,KAAA,MAAW,CAAC,KAAA,EAAO,GAAG,KAAK,MAAA,CAAO,OAAA,CAAQ,MAAM,CAAA,EAAG;AACjD,IAAA,IAAI,OAAO,GAAA,KAAQ,QAAA,IAAY,aAAA,CAAc,GAAA,CAAI,KAAK,CAAA,EAAG;AACvD,MAAA,MAAM,QAAA,GAAW,sBAAA,CAAuB,GAAA,EAAK,IAAA,EAAM,OAAO,IAAI,CAAA;AAC9D,MAAA,IAAI,CAAC,QAAA,CAAS,EAAA,EAAI,OAAO,QAAA;AACzB,MAAA,MAAA,CAAO,KAAK,IAAI,QAAA,CAAS,KAAA;AACzB,MAAA,OAAA,GAAU,IAAA;AACV,MAAA;AAAA,IACF;AACA,IAAA,IAAI,CAAC,MAAA,CAAO,GAAG,CAAA,EAAG;AAClB,IAAA,MAAM,SAAA,GAAY,GAAA;AAClB,IAAA,IAAI,SAAA;AACJ,IAAA,KAAA,MAAW,GAAA,IAAO,CAAC,SAAA,EAAW,SAAS,CAAA,EAAY;AACjD,MAAA,IAAI,EAAE,OAAO,SAAA,CAAA,EAAY;AACzB,MAAA,MAAM,QAAA,GAAW,sBAAA,CAAuB,SAAA,CAAU,GAAG,CAAA,EAAG,IAAA,EAAM,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,IAAI,CAAA;AACrF,MAAA,IAAI,CAAC,QAAA,CAAS,EAAA,EAAI,OAAO,QAAA;AACzB,MAAA,IAAI,QAAA,CAAS,KAAA,KAAU,SAAA,CAAU,GAAG,CAAA,EAAG;AACrC,QAAA,SAAA,KAAc,EAAE,GAAG,SAAA,EAAU;AAC7B,QAAA,SAAA,CAAU,GAAG,IAAI,QAAA,CAAS,KAAA;AAC1B,QAAA,OAAA,GAAU,IAAA;AAAA,MACZ;AAAA,IACF;AACA,IAAA,IAAI,cAAc,MAAA,EAAW;AAC3B,MAAA,MAAA,CAAO,KAAK,CAAA,GAAI,SAAA;AAAA,IAClB;AAAA,EACF;AACA,EAAA,OAAO,EAAA,CAAG,OAAA,GAAU,EAAE,GAAG,OAAO,GAAI,MAAA,KAAW,MAAA,GAAY,KAAK,EAAE,MAAA,EAAO,EAAI,MAAA,KAAW,KAAK,CAAA;AAC/F;AAEO,IAAM,oBAAA,GAA4E;AAAA,EACvF,IAAA,EAAM,EAAE,IAAA,EAAM,UAAA,EAAW;AAAA,EACzB,QAAA,EAAU,sBAAA;AAAA,EACV,OAAA,EAAS;AAAA,IACP,MAAM,MAAA,CAAO,EAAE,QAAA,EAAS,EAAG;AACzB,MAAA,IAAI,CAAC,aAAA,CAAc,QAAA,CAAS,OAAO,CAAA,EAAG;AACpC,QAAA,OAAO,OAAA;AAAA,UACL,QAAA,CAAS,IAAA;AAAA,UACT,+DAAA;AAAA,UACA;AAAA,SACF;AAAA,MACF;AACA,MAAA,OAAO,wBAAwB,QAAA,CAAS,OAAA,EAAS,QAAA,CAAS,IAAA,EAAM,SAAS,IAAI,CAAA;AAAA,IAC/E;AAAA;AAEJ;AAEO,IAAM,mBAAA,GAAyE;AAAA,EACpF,IAAA,EAAM,EAAE,IAAA,EAAM,SAAA,EAAU;AAAA,EACxB,QAAA,EAAU,oBAAA;AAAA,EACV,OAAA,EAAS;AAAA,IACP,MAAM,MAAA,CAAO,EAAE,QAAA,EAAS,EAAG;AACzB,MAAA,OAAO,QAAA,CAAS,OAAA,CAAQ,IAAA,KAAS,SAAA,GAC7B,EAAA,CAAG,QAAA,CAAS,OAAO,CAAA,GACnB,OAAA,CAAQ,QAAA,CAAS,IAAA,EAAM,mBAAA,EAAqB,iCAAiC,CAAA;AAAA,IACnF;AAAA;AAEJ;AAEO,IAAM,0BAAA,GAGT;AAAA,EACF,IAAA,EAAM,EAAE,IAAA,EAAM,iBAAA,EAAkB;AAAA,EAChC,QAAA,EAAU,iBAAA;AAAA,EACV,OAAA,EAAS;AAAA,IACP,MAAM,MAAA,CAAO,EAAE,QAAA,EAAS,EAAG;AACzB,MAAA,MAAM,UAAU,QAAA,CAAS,OAAA;AACzB,MAAA,OAAO,OAAA,CAAQ,IAAA,KAAS,iBAAA,IAAqB,OAAA,CAAQ,UAAA,CAAW,IAAA,EAAK,CAAE,MAAA,GAAS,CAAA,GAC5E,EAAA,CAAG,OAAO,CAAA,GACV,OAAA;AAAA,QACE,QAAA,CAAS,IAAA;AAAA,QACT,6CAAA;AAAA,QACA;AAAA,OACF;AAAA,IACN;AAAA;AAEJ;;;ACtIA,IAAM,iBAAA,GAA0C;AAAA,EAC9C,MAAA;AAAA,EACA,gBAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,YAAA;AAAA,EACA,UAAA;AAAA,EACA,gBAAA;AAAA,EACA,iBAAA;AAAA,EACA,aAAA;AAAA,EACA,gBAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,eAAA;AAAA,EACA,eAAA;AAAA,EACA,oBAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA;AACF,CAAA;AAEA,SAAS,yBAAyB,KAAA,EAA0B;AAC1D,EAAA,MAAM,SAAS,iBAAA,CAAkB,GAAA;AAAA,IAAI,CAAC,SAAA,KACpC,KAAA,CAAM,WAAW,QAAA,CAAS,SAAS,EAAE,MAAA;AAAO,GAC9C;AACA,EAAA,OAAO,MAAM;AACX,IAAA,KAAA,IAAS,KAAA,GAAQ,MAAA,CAAO,MAAA,GAAS,CAAA,EAAG,KAAA,IAAS,CAAA,EAAG,KAAA,IAAS,CAAA,EAAG,MAAA,CAAO,KAAK,CAAA,EAAG,OAAA,EAAQ;AAAA,EACrF,CAAA;AACF;AAGO,SAAS,sBAAA,GAAiC;AAC/C,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,mBAAA;AAAA,IACN,MAAA,EAAQ,CAAC,OAAO,CAAA;AAAA,IAChB,MAAM,GAAA,EAAK;AACT,MAAA,GAAA,CAAI,OAAO,MAAM,wBAAA,CAAyB,GAAA,CAAI,KAAK,GAAG,mBAAmB,CAAA;AAAA,IAC3E;AAAA,GACF;AACF","file":"index.mjs","sourcesContent":["import { validateCookedMaterialRecord } from '@forgeax/engine-pack';\nimport {\n type AssetDecoderContribution,\n type AssetKind,\n type AssetLoadError,\n err,\n MATERIAL_TEXTURE_SLOTS,\n type MaterialAsset,\n ok,\n type RenderPipelineAsset,\n type SamplerAsset,\n} from '@forgeax/engine-types';\n\nfunction invalid(guid: string, expected: string, reason: string) {\n return err({\n code: 'asset-package-invalid' as const,\n expected,\n hint: 'recook the render asset and publish its complete cooked payload',\n detail: { guid, reason },\n });\n}\n\nfunction record(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction validMaterial(value: unknown): value is MaterialAsset {\n if (!record(value) || value.kind !== 'material') return false;\n if (value.cooked !== undefined && !validateCookedMaterialRecord(value.cooked).ok) {\n return false;\n }\n if (value.passes !== undefined && !Array.isArray(value.passes)) return false;\n if (value.parameters !== undefined && !Array.isArray(value.parameters)) return false;\n return value.values === undefined || record(value.values);\n}\n\nfunction resolveMaterialWireRef(\n value: unknown,\n refs: readonly string[],\n field: string,\n guid: string,\n): ReturnType<typeof ok<string | number>> | ReturnType<typeof err<AssetLoadError>> {\n if (typeof value !== 'number') return ok(value as string | number);\n if (!Number.isSafeInteger(value) || value < 0 || refs[value] === undefined) {\n return err<AssetLoadError>({\n code: 'asset-package-invalid',\n expected: `${field} to reference a GUID through the material Pack refs[] table`,\n hint: 'recook the material so every texture or sampler ref has a matching refs[] entry',\n detail: { guid, reason: `${field} refs[${value}] is out of bounds` },\n });\n }\n return ok(refs[value] as string);\n}\n\nfunction resolveMaterialWireRefs(\n value: MaterialAsset,\n refs: readonly string[],\n guid: string,\n): ReturnType<typeof ok<MaterialAsset>> | ReturnType<typeof err<AssetLoadError>> {\n if (refs.length === 0) return ok(value);\n\n let changed = false;\n let parent = value.parent;\n if (typeof parent === 'number') {\n const resolved = resolveMaterialWireRef(parent, refs, 'parent', guid);\n if (!resolved.ok) return resolved;\n parent = resolved.value as unknown as MaterialAsset['parent'];\n changed = true;\n }\n\n if (value.values === undefined) {\n return changed ? ok({ ...value, ...(parent === undefined ? {} : { parent }) }) : ok(value);\n }\n\n const textureFields = new Set(\n value.parameters === undefined\n ? MATERIAL_TEXTURE_SLOTS\n : value.parameters\n .filter((parameter) => parameter.type === 'texture')\n .map((parameter) => parameter.name),\n );\n const values = { ...value.values };\n for (const [field, raw] of Object.entries(values)) {\n if (typeof raw === 'number' && textureFields.has(field)) {\n const resolved = resolveMaterialWireRef(raw, refs, field, guid);\n if (!resolved.ok) return resolved;\n values[field] = resolved.value as NonNullable<MaterialAsset['values']>[string];\n changed = true;\n continue;\n }\n if (!record(raw)) continue;\n const rawRecord = raw as unknown as Record<string, unknown>;\n let rewritten: Record<string, unknown> | undefined;\n for (const key of ['texture', 'sampler'] as const) {\n if (!(key in rawRecord)) continue;\n const resolved = resolveMaterialWireRef(rawRecord[key], refs, `${field}.${key}`, guid);\n if (!resolved.ok) return resolved;\n if (resolved.value !== rawRecord[key]) {\n rewritten ??= { ...rawRecord };\n rewritten[key] = resolved.value;\n changed = true;\n }\n }\n if (rewritten !== undefined) {\n values[field] = rewritten as unknown as NonNullable<MaterialAsset['values']>[string];\n }\n }\n return ok(changed ? { ...value, ...(parent === undefined ? {} : { parent }), values } : value);\n}\n\nexport const materialContribution: AssetDecoderContribution<MaterialAsset, 'material'> = {\n kind: { kind: 'material' } as AssetKind<MaterialAsset, 'material'>,\n consumer: 'Render MaterialScene',\n decoder: {\n async decode({ envelope }) {\n if (!validMaterial(envelope.payload)) {\n return invalid(\n envelope.guid,\n 'a material payload with cooked passes, parameters, and values',\n 'material owner validation failed',\n );\n }\n return resolveMaterialWireRefs(envelope.payload, envelope.refs, envelope.guid);\n },\n },\n};\n\nexport const samplerContribution: AssetDecoderContribution<SamplerAsset, 'sampler'> = {\n kind: { kind: 'sampler' } as AssetKind<SamplerAsset, 'sampler'>,\n consumer: 'Render DeviceScope',\n decoder: {\n async decode({ envelope }) {\n return envelope.payload.kind === 'sampler'\n ? ok(envelope.payload)\n : invalid(envelope.guid, 'a sampler payload', 'sampler owner validation failed');\n },\n },\n};\n\nexport const renderPipelineContribution: AssetDecoderContribution<\n RenderPipelineAsset,\n 'render-pipeline'\n> = {\n kind: { kind: 'render-pipeline' } as AssetKind<RenderPipelineAsset, 'render-pipeline'>,\n consumer: 'Render Pipeline',\n decoder: {\n async decode({ envelope }) {\n const payload = envelope.payload;\n return payload.kind === 'render-pipeline' && payload.pipelineId.trim().length > 0\n ? ok(payload)\n : invalid(\n envelope.guid,\n 'a render-pipeline payload with a pipelineId',\n 'render-pipeline owner validation failed',\n );\n },\n },\n};\n","import type { Component, World } from '@forgeax/engine-ecs';\nimport type { Plugin } from '@forgeax/engine-plugin';\nimport { Camera } from './components/camera';\nimport { DirectionalLight } from './components/directional-light';\nimport { Instances } from './components/instances';\nimport { Layer } from './components/layer';\nimport { MeshFilter } from './components/mesh-filter';\nimport { MeshRenderer } from './components/mesh-renderer';\nimport { PointLight } from './components/point-light';\nimport { PointLightShadow } from './components/point-light-shadow';\nimport { PostProcessParams } from './components/post-process-params';\nimport { SceneInstance } from './components/scene-instance';\nimport { SkyboxBackground } from './components/skybox-background';\nimport { Skylight } from './components/skylight';\nimport { SortKey } from './components/sort-key';\nimport { SpotLight } from './components/spot-light';\nimport { SpriteAnimation } from './components/sprite-animation';\nimport { SpriteInstances } from './components/sprite-instances';\nimport { SpriteRegionOverride } from './components/sprite-region-override';\nimport { TileLayer } from './components/tile-layer';\nimport { Tilemap } from './components/tilemap';\nimport { Visibility } from './components/visibility';\n\nconst RENDER_COMPONENTS: readonly Component[] = [\n Camera,\n DirectionalLight,\n Instances,\n Layer,\n MeshFilter,\n MeshRenderer,\n PointLight,\n PointLightShadow,\n PostProcessParams,\n SceneInstance,\n SkyboxBackground,\n Skylight,\n SortKey,\n SpotLight,\n SpriteAnimation,\n SpriteInstances,\n SpriteRegionOverride,\n TileLayer,\n Tilemap,\n Visibility,\n];\n\nfunction registerRenderComponents(world: World): () => void {\n const leases = RENDER_COMPONENTS.map((component) =>\n world.components.register(component).unwrap(),\n );\n return () => {\n for (let index = leases.length - 1; index >= 0; index -= 1) leases[index]?.dispose();\n };\n}\n\n/** Install the built-in render ECS vocabulary in one World. */\nexport function renderComponentsPlugin(): Plugin {\n return {\n name: 'render-components',\n inject: ['world'],\n apply(ctx) {\n ctx.effect(() => registerRenderComponents(ctx.world), 'render/components');\n },\n };\n}\n"]}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Renderer-owned inspection PODs. Keeping these projections free of renderer
3
+ * implementation imports prevents the observation contract from reopening the
4
+ * extract/record dependency graph.
5
+ */
6
+ export interface BatchTopologyInspection {
7
+ readonly revision: number;
8
+ readonly batchCount: number;
9
+ readonly candidateCount: number;
10
+ readonly rebuilds: number;
11
+ readonly patches: number;
12
+ readonly ineligible: number;
13
+ }
14
+ export interface GpuSceneTableInspection {
15
+ readonly capacity: number;
16
+ readonly bytes: number;
17
+ }
18
+ type GpuSceneTableName = 'primitive' | 'instance' | 'transform' | 'drawTemplate' | 'material';
19
+ export interface GpuSceneInspection {
20
+ readonly capacity: number;
21
+ readonly tables: Readonly<Record<GpuSceneTableName, GpuSceneTableInspection>>;
22
+ readonly uploadRanges: number;
23
+ readonly uploadBytes: number;
24
+ readonly capacityGrows: number;
25
+ readonly fullRebuilds: number;
26
+ readonly clearedSlots: number;
27
+ readonly noChangeFrames: number;
28
+ }
29
+ export interface GpuDrivenProductionInspection {
30
+ readonly gpuOwnedSnapshotsMaterialized: number;
31
+ readonly filteredPlanBuilds: number;
32
+ readonly gpuOwnedEntityCount: number;
33
+ readonly candidateUploadBytes: number;
34
+ readonly batchUploadBytes: number;
35
+ readonly viewConstantsUploadBytes: number;
36
+ readonly batchBindGroupCreates: number;
37
+ readonly viewBindGroupCreates: number;
38
+ readonly topologyRevision: number | undefined;
39
+ readonly validatedGpuOwnedRows: number;
40
+ readonly cpuFallbackDrawItems: number;
41
+ }
42
+ export type RenderSceneResyncReason = 'attach' | 'asset-catalog-changed' | 'shared-ref-changed' | 'journal-overflow' | 'unsupported-change' | 'non-rigid-lane' | 'explicit-invalidate';
43
+ export interface PersistentRenderSceneInspection {
44
+ readonly worldEntitiesScanned: number;
45
+ readonly fullRebuilds: number;
46
+ readonly noChangeFrames: number;
47
+ readonly deltaFrames: number;
48
+ readonly transformUpdates: number;
49
+ readonly lastResyncReason: RenderSceneResyncReason | undefined;
50
+ readonly projectionRecords: number;
51
+ readonly topology: BatchTopologyInspection;
52
+ readonly gpu: {
53
+ readonly status: 'inactive';
54
+ } | {
55
+ readonly status: 'unsupported';
56
+ readonly reason: 'storage-buffer-unavailable';
57
+ } | ({
58
+ readonly status: 'resident';
59
+ } & GpuSceneInspection) | {
60
+ readonly status: 'rebuild-pending';
61
+ } | {
62
+ readonly status: 'error';
63
+ };
64
+ }
65
+ export type RenderSceneInspection = PersistentRenderSceneInspection & {
66
+ readonly gpuDriven: GpuDrivenProductionInspection;
67
+ };
68
+ export {};
69
+ //# sourceMappingURL=inspection-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspection-types.d.ts","sourceRoot":"","sources":["../src/inspection-types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,4 @@
1
1
  import type { GpuBuffer } from './gpu-resource';
2
- export declare function temporalInstanceUploadByteLength(current: Float32Array, storageBufferAvailable: boolean): number;
3
- /** Pack current and last-submitted instance transforms into the shared storage ABI. */
4
- export declare function packTemporalInstanceTransforms(current: Float32Array, previous: Float32Array | undefined): Float32Array;
5
2
  /**
6
3
  * One entry of the per-RenderSystem instance-transform GPU storage cache.
7
4
  *
@@ -39,7 +36,7 @@ export interface InstanceBufferCacheErrorSink {
39
36
  * runtime did not flip surfaces as the structured 'destroy-after-destroy'
40
37
  * RhiError from the shim. That error is *not* re-thrown -- this helper
41
38
  * is a sweep that tolerates per-handle failures so the dispose chain can
42
- * make progress (mirrors `GpuResourceStore.destroyAll`'s policy;
39
+ * make progress (mirrors `GpuResidencyCache.destroyAll`'s policy;
43
40
  * plan-strategy D-3 / D-8).
44
41
  *
45
42
  * feat-20260619 M4 (D-6): the optional `errorRegistry` parameter unifies
@@ -1 +1 @@
1
- {"version":3,"file":"instance-buffer-cache.d.ts","sourceRoot":"","sources":["../src/instance-buffer-cache.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,YAAY,EACrB,sBAAsB,EAAE,OAAO,GAC9B,MAAM,CAER;AAED,uFAAuF;AACvF,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,YAAY,GAAG,SAAS,GACjC,YAAY,CAed;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC;AAaD;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,EAC1C,aAAa,CAAC,EAAE,4BAA4B,GAC3C,IAAI,CAGN;AAED,kFAAkF;AAClF,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,wBAAwB,EAAE,EACnC,aAAa,CAAC,EAAE,4BAA4B,GAC3C,IAAI,CAGN"}
1
+ {"version":3,"file":"instance-buffer-cache.d.ts","sourceRoot":"","sources":["../src/instance-buffer-cache.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC;AAaD;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,EAC1C,aAAa,CAAC,EAAE,4BAA4B,GAC3C,IAAI,CAGN;AAED,kFAAkF;AAClF,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,wBAAwB,EAAE,EACnC,aAAa,CAAC,EAAE,4BAA4B,GAC3C,IAAI,CAGN"}
@@ -1,74 +1,2 @@
1
- export type { RenderAssetPort } from './assets/render-asset-port';
2
- export * from './authoring';
3
- export * from './cluster-binner';
4
- export * from './components/camera';
5
- export * from './components/light-helpers';
6
- export { createDebugDrawOnReady, releaseDebugDraw } from './debug-draw-glue';
7
- export { createEngineMetrics } from './engine-metrics';
8
- export * from './environment/generation';
9
- export * from './environment/graph';
10
- export * from './environment/signature';
11
- export * from './errors/index';
12
- export * from './errors/recover';
13
- export * from './extract/schema-readers';
14
- export * from './features/host';
15
- export { createRenderFeatureGraphicsPrepare, validateRenderFeatureGraphicsPass, } from './features/prepared-graphics';
16
- export type { RenderFeatureCapabilityMissingDetail, RenderFeatureCleanupFailure, RenderFeatureDrawRecordingFailedDetail, RenderFeatureErrorDetailByCode, RenderFeaturePassOrderConflictDetail, RenderFeaturePreparationFailedDetail, RenderFeaturePreparedStateMismatchDetail, RenderFeatureRegistrationConflictDetail, RenderFeatureStageFailedDetail, } from './features/types';
17
- export * from './fullscreen-post-process-pass';
18
- export type { GpuResource } from './gpu-resource';
19
- export { GpuBuffer, GpuTexture } from './gpu-resource';
20
- export { GpuResourceStore } from './gpu-resource-store';
21
- export * from './gpu-scene';
22
- export * from './gpu-scene-schema';
23
- export * from './hdrp-buffers';
24
- export * from './hdrp-pipeline';
25
- export * from './ibl/IblPipelineCache';
26
- export * from './ibl/skylight-bind-group';
27
- export * from './index';
28
- export * from './instance-buffer-cache';
29
- export * from './lifecycle';
30
- export * from './light-buffer-layout';
31
- export * from './mesh-material-bindings';
32
- export * from './pbr-pipeline';
33
- export * from './persistent-render-scene';
34
- export * from './pipeline-builder';
35
- export * from './pipeline-errors';
36
- export * from './pipeline-spec';
37
- export * from './post-process-errors';
38
- export * from './prepare/schema-readers';
39
- export * from './record/frame-snapshot';
40
- export * from './record/frame-targets';
41
- export * from './record/index';
42
- export * from './record/main-pass-material';
43
- export * from './record/membership-timing';
44
- export * from './record/skybox-post-pass';
45
- export * from './record/view-ubo';
46
- export * from './render-data';
47
- export * from './render-graph-primitives';
48
- export type { _InternalRenderPipelineContext } from './render-pipeline-context';
49
- export * from './render-scene-projection';
50
- export * from './render-system';
51
- export * from './render-system-extract';
52
- export * from './render-system-fold';
53
- export type { EngineEnvironmentErrorDetail } from './renderer/environment-error';
54
- export { EngineEnvironmentError } from './renderer/environment-error';
55
- export * from './renderer/renderer-factory';
56
- export * from './scene-instances/post-spawn-resolve-joints';
57
- export { collectSubtree } from './scene-utils/collect-subtree';
58
- export * from './shadow-atlas';
59
- export * from './ssao-buffers';
60
- export * from './ssao-config';
61
- export * from './ssao-data';
62
- export * from './surface-format';
63
- export * from './systems/active-camera';
64
- export * from './systems/pass-selector';
65
- export * from './systems/skin-palette-allocator';
66
- export * from './systems/transparent-sort-config';
67
- export * from './taa-history-store';
68
- export * from './temporal-coverage';
69
- export * from './temporal-frame-transaction';
70
- export * from './temporal-view';
71
- export * from './tilemap/resolve-tileset-runtime';
72
- export * from './tilemap-chunk-extract-system';
73
- export { URP_PIPELINE_ID, urpPipeline } from './urp-pipeline';
1
+ export { type ResolvedTilesetRuntime, resolveTilesetRuntime, type TilesetAtlasLookup, type TilesetRuntimeError, type TilesetRuntimeErrorCode, } from '@forgeax/engine-assets-runtime';
74
2
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,sBAAsB,EAC3B,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,GAC7B,MAAM,gCAAgC,CAAC"}
package/dist/internal.mjs CHANGED
@@ -1,45 +1,3 @@
1
- import './chunk-JMSB7AR4.mjs';
2
- export { EngineEnvironmentError, GpuResourceStore, HealthListenerRegistry, LostListenerRegistry, RhiErrorListenerRegistry, SHADOW_PROBE_WGSL, assembleMaterialProjection, buildPipelineForMaterialShader, createEngineMetrics, createMaterialAssetService, createMeshSsboGrowController, createRenderer, createSkinPaletteAllocator, deriveRecoverable, deriveStorageBufferCeiling, loadRhiPack, resolveMaterialShaderBindingContract, resolveMaterialShaderVariantSet, resolveMaterialShaderVertexInputContract, selectHdrpPbrPrewarmVariants, selectNoColorPbrVariant, selectPipelineLayoutForVariant } from './chunk-F2SIOCRM.mjs';
3
- export { _peekPerCellStreamingLayerKeys, computeChunkStreamBounds, effectivePivotYForTilemapFlip, encodeTilemapLayerValue, resetTilemapChunkExtractCache, resetTilemapDerivedEntityTracker, resolveTilesetRuntime, tilemapChunkExtractSystem } from './chunk-KHI6K4C6.mjs';
4
- export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, collectSubtree, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, postSpawnResolveJoints, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-PORZOL2V.mjs';
5
- import { MESH_PER_ENTITY_STRIDE } from './chunk-UOJGMDGP.mjs';
6
- export { ACTIVE_CAMERA_KEY, ATMOSPHERE_BACKGROUND_PARAMS_SLOT, ATMOSPHERE_PARAMS_BYTES, ATMOSPHERE_PARAMS_SLOT_BYTES, ATMOSPHERE_PARAMS_SLOT_COUNT, ATMOSPHERE_PRODUCER_KINDS, ATMOSPHERE_PRODUCER_PASS_COUNT, ATMOSPHERE_SUN_DISC_PARAMS_SLOT, BRDF_LUT_SIZE, BYTES_PER_LIGHT_SLOT, CAPTURE_VIEW_PROJS, CLUSTER_GRID_STRIDE_U32, CUBEMAP_FACE_VERTICES, CascadeVolumeSetBuilder, DEFAULT_CLUSTER_GRID, DEFERRED_COLOR_FORMATS, DEPTH_MIN_PARAMS_BYTE_SIZE, EMPTY_TEMPORAL_COVERAGE, FALLBACK_BYTES_PER_ROW, FOLDED_DRAWS_METRIC_KEY, FOLD_UNIFORM_INSTANCE_CAP, GPU_SCENE_LAYOUTS, GPU_SCENE_PRIMITIVE_FLAGS, GPU_SCENE_SCHEMAS, GPU_SCENE_WGSL, GpuBuffer, GpuScene, GpuTexture, HDRP_PIPELINE_ID, HDRP_UNIFORM_LIGHT_CAPACITY, RhiError as HdrpBufferAllocError, HdrpInstallError, INJECTION_KIND_LENGTHS, INSTANCE_UBO_FULL_ARRAY_BYTES, IRRADIANCE_SIZE, IblCapabilityLossError, KNOWN_PASS_KINDS, LIGHTSLOT_LAYOUT, LIGHT_ARRAY_HEADER_BYTES, LIGHT_ARRAY_MAX_SLOTS, LIGHT_INDEX_LIST_CAPACITY, LightSlotKind, MATERIAL_PER_ENTITY_STRIDE, MAX_LIGHTS, MAX_UNIFORM_INSTANCES, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MESH_PER_ENTITY_STRIDE, MESH_SSBO_BYTES, MESH_UBO_FULL_ARRAY_BYTES, MembershipTimingError, MeshUpdateError, POINT_LIGHT_SHADOW_LAYER_SENTINEL, POINT_LIGHT_STD430_BYTES, POINT_SHADOW_VIEW_SLOT_COUNT, PREFILTER_MIP_LEVELS, PREFILTER_SIZE, PersistentRenderScene, PipelineError, PipelineSpecError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, RenderSceneProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, SHADOW_ATLAS_DEFAULT_FACE_SIZE, SHADOW_ATLAS_DEFAULT_LAYERS, SKIN_MATERIAL_SHADER_ID, SPEC_CONST_TABLE, SPOT_LIGHT_SHADOW_TILE_SENTINEL, SPOT_LIGHT_STD430_BYTES, SPRITE_PASS_PER_INSTANCE_REGION_VARIANT_SET, SSAO_DEFAULT_BIAS, SSAO_DEFAULT_INTENSITY, SSAO_DEFAULT_RADIUS, SSAO_KERNEL_SAMPLE_COUNT, SSAO_UNIFORM_BYTES, SSAO_UNIFORM_INTENSITY_OFFSET, STORAGE_BUFFER_MIN_REQUIRED, ShadowAtlas, TEMPORAL_JITTER_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, TaaHistoryStore, TemporalFrameTransaction, URP_PIPELINE_ID, VIEW_UNIFORM_BUFFER_SIZE, VIEW_UNIFORM_BYTES, VIEW_UNIFORM_SLOT_STRIDE, ZERO_CAMERA_CLEAR_FALLBACK, acquireSwapChainTarget, addBloomPasses, addEnvironmentCompositionPass, addEnvironmentProducerPasses, addFullscreenPass, addPointShadowPass, addScenePass, addShadowPass, addSkyboxPass, addSpotShadowPass, addSsaoPasses, addTonemapPass, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, appendInjection, applyParamSnapshotToUbo, assembleMaterialWithSkylightEntries, assertStorageBufferCap, beginEnvironmentGeneration, bin, buildBeginRenderPassDescriptor, buildBindGroupLayoutDescriptor, buildCascadeLocalCacheTokens, buildFoldDispatchPlan, buildFullscreenPostProcessPass, buildLinearLdrMaterialSpecTable, buildMatchedRenderableIndices, buildPbrMaterialUserRegionEntries, buildPbrPipelineLayouts, buildPbrSkinLayouts, buildPbrViewBglEntries, buildPerSubmeshMaterialBg, buildPipelineDescriptor, buildPointShadowMatrices, buildRenderVisibilityViewDescriptors, buildSpecConstTable, buildUnlitMaterialBgl, buildUnlitMaterialBindGroupEntries, cacheKeyOf, calculateSphereClusterBounds, floatBits as canonicalEnvironmentFloatBits, clampPcfKernelSize, cleanPerEntityCache, clearIblCacheForDevice, clusterSpaceObjectAabb, colorFormatsForPassKind, computeDirectionalCsm, computeInvRangeSquared, computeProjectionMatrix, computeSplitLdrSprite, computeViewMatrix, configureSurface, createClusterBinScratch, createDebugDrawOnReady, createDerivedMaterialSlotPlan, createEnvironmentGenerationState, createEnvironmentPipelineTopology, createEnvironmentProducerGraph, createFullscreenBindGroup, createHdrpBindGroupLayoutDescriptor, createHdrpClusterMembershipBindGroup, createHdrpClusterMembershipBindGroupLayoutDescriptor, createHdrpUnifiedBindGroup, createIblPipelines, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureGraphicsPrepare, createRenderFeatureHost, createRenderFeatureTarget, createRenderPipelineTarget, createRenderSystem, createSkylightFallback, defaultMaterialSnapshot, defaultTransformSnapshot, defaultViewForUserRegionField, degToCos, deriveBglShapeFromShader, deriveCullingRadius, deriveEnvironmentBundleDescriptors, deriveGpuSceneTableLayout, deriveMipUploadLayout, deriveRenderDataCubemap, deriveRenderDataMesh, deriveRenderDataTexture, deriveTextureExtent, derivedParamSchema, detectNineSliceScaleTooSmall, directionalCascadeAtlasSize, directionalCascadeRasterViewport, disposeInstanceBuffers, disposeTransientInstanceBuffers, driveLazyEquirectProjection, encodeDirectionalShadowPass, encodeFullscreenPass, encodeMainPass, encodePointShadowPass, encodeSkyboxPass, encodeSpotShadowPass, ensureMeshSsboCapacity, entityHasTransparentSubmesh, entryHasDepthRead, environmentBundleBytes, environmentClearColor, environmentConsumerSnapshot, environmentGenerationDirty, environmentGenerationEnabled, environmentSignature, evaluateDirectionalShadowCache, evaluateFoldBucketUniformCap, executeEnvironmentProducerTransaction, extractCameraSnapshots, extractEntryResourceHandle, extractFrame, extractFrames, extractRenderableEntity, filterDispatchBySelector, foldDispatchBuckets, generateSsaoKernel, generateSsaoNoise, getActiveCamera, getIblComposedShaders, getIblWgslSource, getOrBuildPipeline, getOrCreateFromChain, getOrCreateHdrpBuffers, getOrCreateIblCache, getOrCreatePerEntity, getOrCreateSsaoBuffers, getOrCreateSsaoFallbackTexture, getRenderFeatureGraphState, getSsaoParameters, gpuSceneFieldOffset, gpuSceneWgsl, graphExecutionPhase, hasIblCache, hdrpPipeline, iblCacheSize, importEnvironmentGraphTargets, importEnvironmentResources, importRenderPipelineSurface, incrementFoldedDrawsMetric, inspectEnvironmentGeneration, interleaveSpriteInstanceBuffer, isEntityFullyTransparent, isGpuMembershipProducerAvailable, isLitMaterialSnapshot, isMaterialBgAssemblyCacheHit, isMeshSsboDevMode, isRenderFeatureTargetHandle, isStandardPbrMaterialShader, makeZeroCameraFallbackSnapshot, matchPass, materialBindingByteLength, materialUboFloatView, mergeSkylightIntoMaterialBgl, ndcPositionToCluster, observeCurrentFrame, packClusterUniform, packLightArrayHeader, packLightSlot, packPointLight, packSpotLight, packTemporalInstanceTransforms, passKindPolicyTable, pointShadowViewOffset, prepareExtractContext, projectFogEnvironment, projectMaterialPipeline, projectRenderFeatureContributions, projectTemporalView, pssmSplit, publishEnvironmentGeneration, rasterItemKey, recordBloomBlurHPass, recordBloomBlurVPass, recordBloomBrightPass, recordBloomCompositePass, recordFrame, recordFxaaPass, recordMainPass, recordPointShadowPass, recordRenderFeatureGraphicsPass, recordResolvedRenderFeatureGraphicsPass, recordShadowPass, recordSkyboxPass, recordSpotShadowPass, recordSsaoBlurPass, recordSsaoCalcPass, refreshExtractedFrameCameras, refreshExtractedFrameLights, refreshExtractedFramePostProcessParams, refreshRenderableMaterialSnapshot, releaseDebugDraw, renderFeatureAttachmentResource, renderStateHash, reportRenderFeatureGraphError, residentTextureView, resolveDepthOnlyView, resolveMaterialSnapshot, resolveMeshMaterialBindings, resolvePostColorDomainContract, resolveShadowMapSize, resolveSpotShadowMapSize, resolveSsaoParameters, resolveSurfaceFormatPair, resolveToneOutputContract, resolveVisibility, routeMaterialPipeline, runIblPrecompute, runRenderFeatureFrame, selectActiveCameraIndex, selectCookedMaterialPipelineForRender, selectEnvironmentSource, selectFog, selectGeometryPipeline, selectLazyEquirectHandle, selectMaterialDrawForRender, selectMaterialPipelineForRender, selectPasses, selectSpritePassVariantSet, selectSwapChainFormat, setActiveCamera, setIblComposedShaders, setIblWgslSource, setMeshSsboDevModeProbeForTests, settlePreparedGraphicsCompletion, snapshotSubmittedTemporalView, sortDispatchByQueue, specsEqual, spriteInstancesCacheHit, summarizeTemporalCoverage, temporalInstanceUploadByteLength, temporalJitterSample, temporalViewId, updateMaterialRuntimeValues, uploadMeshSsboBatch, urpPipeline, userRegionTextureFieldOrder, validateClusterGrid, validateDirection, validateDirectionalLightData, validatePointLightData, validatePointLightShadowData, validateRenderFeatureGraphicsPass, validateSpec, validateSpotLightData, variantSetFromDefines, videoTextureView, viewZToZSlice, warnMultiLightDirectional, warnMultiLightPoint, warnMultiLightSpot, warnMultiSkybox, warnMultiSkylight, worldEntityKey, writeDerivedMaterialPayload, writeMaterialSnapshotPayload, writeViewUbo } from './chunk-UOJGMDGP.mjs';
7
- export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, EquirectProjectionFailedError, Fog, FogOwnerConflictError, FogParametersInvalidError, GbufferAttachmentCountMismatchError, GbufferRtAllocFailedError, GlyphText, HdrpCapsInsufficientError, HdrpDeferredCapsInsufficientError, HdrpIndexListOverflowError, HdrpLightBudgetExceededError, Instances, Layer, MaterialSkinAttrMissingError, Materials, MeshFilter, MeshRenderer, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, ObservationUnavailableError, PointLight, PointLightShadow, PointShadowAtlasBoundsViolationError, PointShadowAtlasUninitializedError, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SPRITE_PLAYBACK_MODE_CLAMP, SPRITE_PLAYBACK_MODE_LOOP, SPRITE_PREMULTIPLIED_ALPHA_BLEND, SceneInstance, ShadowInvalidConfigError, SkinMaterialMismatchError, SkinPaletteOverflowError, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteAnimation, SpriteInstances, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, SpriteRegionOverride, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TRANSPARENT_SORT_CONFIG_KEY, TRANSPARENT_SORT_MODE_DISTANCE, TRANSPARENT_SORT_MODE_LAYER_Y, TRANSPARENT_SORT_MODE_LAYER_YZ, TRANSPARENT_SORT_MODE_LAYER_Z, TaaCapsInsufficientError, TemporalUnsupportedError, TileLayer, Tilemap, VertexStorageBufferUnavailableError, VideoUploadUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, bloomEnabledFromF32, cameraProjectionFromF32, decodeSortScope, encodeSortScope, getTransparentSortConfig, glyphTextLayoutSystem, markTileLayerDirty, materialDrawDiagnostic, materialTextureValue, orthographic, perspective, resetGlyphBakeCache, setTransparentSortConfig, skyboxModeFromF32, spritePlaybackModeFromU32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-DJIMFYX6.mjs';
8
-
9
- // src/extract/schema-readers.ts
10
- function readRenderSchemas(mesh, light, camera) {
11
- return {
12
- mesh: { assetHandle: mesh.assetHandle },
13
- light: { direction: light.direction, intensity: Number(light.intensity ?? 1) },
14
- camera: {
15
- projection: Number(camera.projection ?? 0),
16
- near: Number(camera.near),
17
- far: Number(camera.far)
18
- }
19
- };
20
- }
21
-
22
- // src/record/main-pass-skin.ts
23
- function _computeSkinGroup2DynOffsets(meshSlotIdx, skinByteOffset) {
24
- const meshOffset = meshSlotIdx * MESH_PER_ENTITY_STRIDE;
25
- if (skinByteOffset === void 0) return [meshOffset];
26
- return [meshOffset, skinByteOffset, skinByteOffset];
27
- }
28
- function _skinBgCacheStats(pipelineState) {
29
- return pipelineState._skinBgCacheStats;
30
- }
31
-
32
- // src/prepare/schema-readers.ts
33
- function prepareRenderSchemas(frame) {
34
- return {
35
- meshAssetHandle: frame.mesh.assetHandle,
36
- lightDirection: frame.light.direction,
37
- cameraProjection: frame.camera.projection,
38
- cameraNear: frame.camera.near,
39
- cameraFar: frame.camera.far
40
- };
41
- }
42
-
43
- export { _computeSkinGroup2DynOffsets, _skinBgCacheStats, prepareRenderSchemas, readRenderSchemas };
1
+ export { resolveTilesetRuntime } from '@forgeax/engine-assets-runtime';
44
2
  //# sourceMappingURL=internal.mjs.map
45
3
  //# sourceMappingURL=internal.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/extract/schema-readers.ts","../src/record/main-pass-skin.ts","../src/prepare/schema-readers.ts"],"names":[],"mappings":";;;;;;;;;AASO,SAAS,iBAAA,CACd,IAAA,EACA,KAAA,EACA,MAAA,EACe;AACf,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,EAAE,WAAA,EAAa,IAAA,CAAK,WAAA,EAAY;AAAA,IACtC,KAAA,EAAO,EAAE,SAAA,EAAW,KAAA,CAAM,SAAA,EAAW,WAAW,MAAA,CAAO,KAAA,CAAM,SAAA,IAAa,CAAC,CAAA,EAAE;AAAA,IAC7E,MAAA,EAAQ;AAAA,MACN,UAAA,EAAY,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,CAAC,CAAA;AAAA,MACzC,IAAA,EAAM,MAAA,CAAO,MAAA,CAAO,IAAI,CAAA;AAAA,MACxB,GAAA,EAAK,MAAA,CAAO,MAAA,CAAO,GAAG;AAAA;AACxB,GACF;AACF;;;ACCO,SAAS,4BAAA,CACd,aACA,cAAA,EACmB;AACnB,EAAA,MAAM,aAAa,WAAA,GAAc,sBAAA;AACjC,EAAA,IAAI,cAAA,KAAmB,MAAA,EAAW,OAAO,CAAC,UAAU,CAAA;AACpD,EAAA,OAAO,CAAC,UAAA,EAAY,cAAA,EAAgB,cAAc,CAAA;AACpD;AAeO,SAAS,kBAAkB,aAAA,EAEA;AAChC,EAAA,OAAO,aAAA,CAAc,iBAAA;AACvB;;;ACvCO,SAAS,qBAAqB,KAAA,EAA6C;AAChF,EAAA,OAAO;AAAA,IACL,eAAA,EAAiB,MAAM,IAAA,CAAK,WAAA;AAAA,IAC5B,cAAA,EAAgB,MAAM,KAAA,CAAM,SAAA;AAAA,IAC5B,gBAAA,EAAkB,MAAM,MAAA,CAAO,UAAA;AAAA,IAC/B,UAAA,EAAY,MAAM,MAAA,CAAO,IAAA;AAAA,IACzB,SAAA,EAAW,MAAM,MAAA,CAAO;AAAA,GAC1B;AACF","file":"internal.mjs","sourcesContent":["import type { Camera, DirectionalLight } from '../components';\n\nexport interface RenderExtract {\n readonly mesh: { readonly assetHandle: unknown };\n readonly light: { readonly direction: unknown; readonly intensity: number };\n readonly camera: { readonly projection: number; readonly near: number; readonly far: number };\n}\n\n/** Project the canonical render component rows without copying or adapting their shape. */\nexport function readRenderSchemas(\n mesh: Record<string, unknown>,\n light: Record<string, unknown>,\n camera: Record<string, unknown>,\n): RenderExtract {\n return {\n mesh: { assetHandle: mesh.assetHandle },\n light: { direction: light.direction, intensity: Number(light.intensity ?? 1) },\n camera: {\n projection: Number(camera.projection ?? 0),\n near: Number(camera.near),\n far: Number(camera.far),\n },\n };\n}\n\nexport type RenderCameraSchema = typeof Camera;\nexport type RenderDirectionalLightSchema = typeof DirectionalLight;\n","import { MESH_PER_ENTITY_STRIDE } from './mesh-ssbo';\n\n/**\n * feat-20260612-skin-palette-per-frame-upload M3 / m3-2: pure helper that\n * builds the `setBindGroup(2, ...)` dynamic-offset tuple at the skin /\n * non-skin draw site.\n *\n * - Skin entries (`skinByteOffset !== undefined`) bind a 3-entry mesh-array\n * BGL (binding 0 mesh-array UBO, bindings 1/2 current/previous palette UBOs;\n * all `hasDynamicOffset: true`), so the tuple carries three offsets: the\n * mesh slot follows the per-entity 256-byte stride and both palette slots\n * carry the per-entity cursor M2 m2-6 wrote into\n * `entry.source.skin.byteOffset`.\n * - Non-skin entries bind the URP / HDRP 1-entry mesh-array BGL, so the\n * tuple carries only the mesh slot offset (length 1). Adding palette\n * offset there would trip WebGPU validation against the 1-binding BGL.\n *\n * Extracted from the inline `group2DynamicOffsets = [i * MESH_PER_ENTITY_STRIDE,\n * 0]` site (PR #353 stub) so the contract `group2DynamicOffsets[1] ===\n * byteOffset` is testable from a focused unit fixture without driving\n * recordFrame end-to-end.\n *\n * @internal -- exported for unit test access (m3-1)\n */\nexport function _computeSkinGroup2DynOffsets(\n meshSlotIdx: number,\n skinByteOffset: number | undefined,\n): readonly number[] {\n const meshOffset = meshSlotIdx * MESH_PER_ENTITY_STRIDE;\n if (skinByteOffset === undefined) return [meshOffset];\n return [meshOffset, skinByteOffset, skinByteOffset];\n}\n\n/**\n * feat-20260612-skin-palette-per-frame-upload M3 / m3-2: read-side accessor\n * for the per-frame skin BG cache miss / hit counters published by the\n * record stage. Mirrors the existing `bindGroupCounts.createBindGroup`\n * surface but scoped to the skin-mesh BG cache so the m3-1 acceptanceCheck\n * (miss=1 + hit=N-1 across N skinned entities sharing one allocator buffer\n * + mesh SSBO) can be observed without traversing the full record-stage\n * dispatch log. The PipelineState carries the mutable counter object\n * (`_skinBgCacheStats: { miss, hit }`); the record-stage cache miss / hit\n * branches bump it; this accessor returns the live reference.\n *\n * @internal -- exported for unit test access (m3-1)\n */\nexport function _skinBgCacheStats(pipelineState: {\n readonly _skinBgCacheStats: { miss: number; hit: number };\n}): { miss: number; hit: number } {\n return pipelineState._skinBgCacheStats;\n}\n","import type { RenderExtract } from '../extract/schema-readers';\n\nexport interface PreparedRenderSchemas {\n readonly meshAssetHandle: unknown;\n readonly lightDirection: unknown;\n readonly cameraProjection: number;\n readonly cameraNear: number;\n readonly cameraFar: number;\n}\n\n/** Prepare the extracted fields for record without substituting provisional defaults. */\nexport function prepareRenderSchemas(frame: RenderExtract): PreparedRenderSchemas {\n return {\n meshAssetHandle: frame.mesh.assetHandle,\n lightDirection: frame.light.direction,\n cameraProjection: frame.camera.projection,\n cameraNear: frame.camera.near,\n cameraFar: frame.camera.far,\n };\n}\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"internal.mjs","sourcesContent":[]}