@forgeax/engine-render 0.1.21 → 0.1.24

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 (584) hide show
  1. package/README.md +281 -38
  2. package/dist/assembly/backend-contract.d.ts +13 -0
  3. package/dist/assembly/backend-contract.d.ts.map +1 -1
  4. package/dist/assembly/bundler-contract.d.ts +9 -0
  5. package/dist/assembly/bundler-contract.d.ts.map +1 -0
  6. package/dist/assembly/device-feature-admission.d.ts +8 -0
  7. package/dist/assembly/device-feature-admission.d.ts.map +1 -1
  8. package/dist/assembly/extended-lighting-fallback.d.ts +13 -0
  9. package/dist/assembly/extended-lighting-fallback.d.ts.map +1 -0
  10. package/dist/assembly/factory.d.ts +7 -235
  11. package/dist/assembly/factory.d.ts.map +1 -1
  12. package/dist/assembly/host-contract.d.ts +10 -0
  13. package/dist/assembly/host-contract.d.ts.map +1 -1
  14. package/dist/assembly/material/assembly.d.ts +3 -2
  15. package/dist/assembly/material/assembly.d.ts.map +1 -1
  16. package/dist/assembly/material/standard-layer-projection.d.ts +10 -0
  17. package/dist/assembly/material/standard-layer-projection.d.ts.map +1 -0
  18. package/dist/assembly/material-shader-policy.d.ts +168 -0
  19. package/dist/assembly/material-shader-policy.d.ts.map +1 -0
  20. package/dist/assembly/material-shader-prewarm.d.ts +21 -0
  21. package/dist/assembly/material-shader-prewarm.d.ts.map +1 -0
  22. package/dist/assembly/mesh-ssbo-grow.d.ts +88 -0
  23. package/dist/assembly/mesh-ssbo-grow.d.ts.map +1 -0
  24. package/dist/assembly/recovery/device-loss-fanout.d.ts +14 -0
  25. package/dist/assembly/recovery/device-loss-fanout.d.ts.map +1 -0
  26. package/dist/assembly/recovery/generation.d.ts +46 -0
  27. package/dist/assembly/recovery/generation.d.ts.map +1 -0
  28. package/dist/assembly/recovery/recovery-attempt.d.ts +63 -0
  29. package/dist/assembly/recovery/recovery-attempt.d.ts.map +1 -0
  30. package/dist/assembly/recovery/renderer-recover.d.ts +115 -0
  31. package/dist/assembly/recovery/renderer-recover.d.ts.map +1 -0
  32. package/dist/assembly/renderer-facade.d.ts +10 -0
  33. package/dist/assembly/renderer-facade.d.ts.map +1 -0
  34. package/dist/assembly/renderer-frame-transaction.d.ts +17 -0
  35. package/dist/assembly/renderer-frame-transaction.d.ts.map +1 -1
  36. package/dist/assembly/renderer-helpers.d.ts +19 -0
  37. package/dist/assembly/renderer-helpers.d.ts.map +1 -0
  38. package/dist/assembly/renderer-lifecycle.d.ts +34 -0
  39. package/dist/assembly/renderer-lifecycle.d.ts.map +1 -1
  40. package/dist/assembly/shader-prewarm-policy.d.ts +15 -0
  41. package/dist/assembly/shader-prewarm-policy.d.ts.map +1 -0
  42. package/dist/assembly/webgpu-ready-contract.d.ts +9 -0
  43. package/dist/assembly/webgpu-ready-contract.d.ts.map +1 -0
  44. package/dist/assembly/webgpu-ready.d.ts +55 -0
  45. package/dist/assembly/webgpu-ready.d.ts.map +1 -0
  46. package/dist/assembly/webgpu-renderer.d.ts +152 -0
  47. package/dist/assembly/webgpu-renderer.d.ts.map +1 -0
  48. package/dist/authoring.mjs +1 -1
  49. package/dist/{chunk-PCHBPYML.mjs → chunk-GE3SDD72.mjs} +37 -5
  50. package/dist/chunk-GE3SDD72.mjs.map +1 -0
  51. package/dist/chunk-KZFTK6DO.mjs +1191 -0
  52. package/dist/chunk-KZFTK6DO.mjs.map +1 -0
  53. package/dist/{chunk-FS2KNUQH.mjs → chunk-Q752SHI5.mjs} +332 -568
  54. package/dist/chunk-Q752SHI5.mjs.map +1 -0
  55. package/dist/{chunk-6OPXDQ2E.mjs → chunk-RR5L4SRS.mjs} +33 -294
  56. package/dist/chunk-RR5L4SRS.mjs.map +1 -0
  57. package/dist/chunk-TFH5I7JJ.mjs +296 -0
  58. package/dist/chunk-TFH5I7JJ.mjs.map +1 -0
  59. package/dist/chunk-UQYS7FRM.mjs +1003 -0
  60. package/dist/chunk-UQYS7FRM.mjs.map +1 -0
  61. package/dist/chunk-YKB5DQV7.mjs +345 -0
  62. package/dist/chunk-YKB5DQV7.mjs.map +1 -0
  63. package/dist/{chunk-5YADUCA7.mjs → chunk-YRUYGA4A.mjs} +1189 -1217
  64. package/dist/chunk-YRUYGA4A.mjs.map +1 -0
  65. package/dist/chunk-Z3YYH2MB.mjs +5082 -0
  66. package/dist/chunk-Z3YYH2MB.mjs.map +1 -0
  67. package/dist/cluster-binner.d.ts +5 -0
  68. package/dist/cluster-binner.d.ts.map +1 -1
  69. package/dist/components/index.d.ts +3 -0
  70. package/dist/components/index.d.ts.map +1 -1
  71. package/dist/components/light-helpers.d.ts +4 -0
  72. package/dist/components/light-helpers.d.ts.map +1 -1
  73. package/dist/components/light-probe.d.ts +9 -0
  74. package/dist/components/light-probe.d.ts.map +1 -0
  75. package/dist/components/rect-area-light.d.ts +12 -0
  76. package/dist/components/rect-area-light.d.ts.map +1 -0
  77. package/dist/components/scene-instance.d.ts +4 -0
  78. package/dist/components/scene-instance.d.ts.map +1 -1
  79. package/dist/components/spot-light.d.ts +3 -0
  80. package/dist/components/spot-light.d.ts.map +1 -1
  81. package/dist/construct-renderer.mjs +27276 -23232
  82. package/dist/construct-renderer.mjs.map +1 -1
  83. package/dist/device/device-scope.d.ts +2 -0
  84. package/dist/device/device-scope.d.ts.map +1 -1
  85. package/dist/device/gpu-residency.d.ts +32 -5
  86. package/dist/device/gpu-residency.d.ts.map +1 -1
  87. package/dist/device/lifecycle-transaction.d.ts +2 -0
  88. package/dist/device/lifecycle-transaction.d.ts.map +1 -0
  89. package/dist/environment/frame.d.ts +5 -0
  90. package/dist/environment/frame.d.ts.map +1 -1
  91. package/dist/environment/inspection.d.ts +7 -0
  92. package/dist/environment/inspection.d.ts.map +1 -1
  93. package/dist/environment/lifecycle.d.ts +20 -2
  94. package/dist/environment/lifecycle.d.ts.map +1 -1
  95. package/dist/errors/gpu-driven.d.ts +26 -0
  96. package/dist/errors/gpu-driven.d.ts.map +1 -0
  97. package/dist/errors/index.d.ts +1 -0
  98. package/dist/errors/index.d.ts.map +1 -1
  99. package/dist/errors/recover.d.ts +67 -3
  100. package/dist/errors/recover.d.ts.map +1 -1
  101. package/dist/errors/render.d.ts +39 -1
  102. package/dist/errors/render.d.ts.map +1 -1
  103. package/dist/extract/contracts.d.ts +899 -0
  104. package/dist/extract/contracts.d.ts.map +1 -0
  105. package/dist/extract/gpu-driven.d.ts +50 -0
  106. package/dist/extract/gpu-driven.d.ts.map +1 -0
  107. package/dist/extract/visibility.d.ts.map +1 -1
  108. package/dist/features/host.d.ts +2 -0
  109. package/dist/features/host.d.ts.map +1 -1
  110. package/dist/features/prepared-gpu-work.d.ts +3 -0
  111. package/dist/features/prepared-gpu-work.d.ts.map +1 -1
  112. package/dist/features/prepared-graphics-store.d.ts +2 -0
  113. package/dist/features/prepared-graphics-store.d.ts.map +1 -1
  114. package/dist/gpu-driven/batch-topology.d.ts +34 -0
  115. package/dist/gpu-driven/batch-topology.d.ts.map +1 -1
  116. package/dist/gpu-driven/prepared-draw.d.ts +63 -0
  117. package/dist/gpu-driven/prepared-draw.d.ts.map +1 -0
  118. package/dist/gpu-driven/production-raster.d.ts +126 -2
  119. package/dist/gpu-driven/production-raster.d.ts.map +1 -1
  120. package/dist/gpu-driven/view-gpu.d.ts +64 -1
  121. package/dist/gpu-driven/view-gpu.d.ts.map +1 -1
  122. package/dist/gpu-scene-schema.d.ts +14 -0
  123. package/dist/gpu-scene-schema.d.ts.map +1 -1
  124. package/dist/gpu-scene.d.ts +9 -1
  125. package/dist/gpu-scene.d.ts.map +1 -1
  126. package/dist/gpu-usage.d.ts +0 -1
  127. package/dist/gpu-usage.d.ts.map +1 -1
  128. package/dist/hdrp-buffers.d.ts +3 -3
  129. package/dist/hdrp-buffers.d.ts.map +1 -1
  130. package/dist/ibl/IblPipelineCache.d.ts +7 -6
  131. package/dist/ibl/IblPipelineCache.d.ts.map +1 -1
  132. package/dist/ibl/skylight-bind-group.d.ts +7 -1
  133. package/dist/ibl/skylight-bind-group.d.ts.map +1 -1
  134. package/dist/index.d.ts +13 -2
  135. package/dist/index.d.ts.map +1 -1
  136. package/dist/index.mjs +90 -5
  137. package/dist/index.mjs.map +1 -1
  138. package/dist/inspection-types.d.ts +163 -1
  139. package/dist/inspection-types.d.ts.map +1 -1
  140. package/dist/internal.d.ts +9 -0
  141. package/dist/internal.d.ts.map +1 -1
  142. package/dist/internal.mjs +23 -2
  143. package/dist/internal.mjs.map +1 -1
  144. package/dist/light-buffer-layout.d.ts +60 -148
  145. package/dist/light-buffer-layout.d.ts.map +1 -1
  146. package/dist/materials.d.ts +34 -10
  147. package/dist/materials.d.ts.map +1 -1
  148. package/dist/mesh-material-bindings.d.ts +56 -0
  149. package/dist/mesh-material-bindings.d.ts.map +1 -1
  150. package/dist/occlusion-proxy.d.ts +4 -0
  151. package/dist/occlusion-proxy.d.ts.map +1 -0
  152. package/dist/pbr-pipeline.d.ts +58 -21
  153. package/dist/pbr-pipeline.d.ts.map +1 -1
  154. package/dist/pipeline/standard-forward-lane.d.ts.map +1 -1
  155. package/dist/pipeline/standard-lighting/graph.d.ts.map +1 -1
  156. package/dist/pipeline/standard-lighting/light-frame.d.ts +3 -3
  157. package/dist/pipeline/standard-lighting/light-frame.d.ts.map +1 -1
  158. package/dist/pipeline/standard-lighting/topology.d.ts +1 -1
  159. package/dist/pipeline/standard-lighting/topology.d.ts.map +1 -1
  160. package/dist/pipeline/standard-lighting/transport.d.ts.map +1 -1
  161. package/dist/pipeline/standard-pipeline.d.ts.map +1 -1
  162. package/dist/pipeline-builder.d.ts +2 -0
  163. package/dist/pipeline-builder.d.ts.map +1 -1
  164. package/dist/pipeline-spec.d.ts +1 -1
  165. package/dist/pipeline-spec.d.ts.map +1 -1
  166. package/dist/plugin.d.ts.map +1 -1
  167. package/dist/points-lines/prepare.d.ts +3 -0
  168. package/dist/points-lines/prepare.d.ts.map +1 -1
  169. package/dist/points-lines/standard-owner.d.ts +33 -0
  170. package/dist/points-lines/standard-owner.d.ts.map +1 -0
  171. package/dist/prepare/extended-lighting/ltc-resources.d.ts +31 -0
  172. package/dist/prepare/extended-lighting/ltc-resources.d.ts.map +1 -0
  173. package/dist/prepare/extended-lighting/resources.d.ts +72 -0
  174. package/dist/prepare/extended-lighting/resources.d.ts.map +1 -0
  175. package/dist/prepare/extended-lighting/spot-modifiers.d.ts +42 -0
  176. package/dist/prepare/extended-lighting/spot-modifiers.d.ts.map +1 -0
  177. package/dist/prepare/extended-lighting/state.d.ts +24 -0
  178. package/dist/prepare/extended-lighting/state.d.ts.map +1 -0
  179. package/dist/record/frame-lighting.d.ts +8 -6
  180. package/dist/record/frame-lighting.d.ts.map +1 -1
  181. package/dist/record/frame-snapshot.d.ts +55 -10
  182. package/dist/record/frame-snapshot.d.ts.map +1 -1
  183. package/dist/record/frame-targets.d.ts.map +1 -1
  184. package/dist/record/frame.d.ts +21 -5
  185. package/dist/record/frame.d.ts.map +1 -1
  186. package/dist/record/gpu-timing.d.ts +19 -7
  187. package/dist/record/gpu-timing.d.ts.map +1 -1
  188. package/dist/record/helpers.d.ts +0 -20
  189. package/dist/record/helpers.d.ts.map +1 -1
  190. package/dist/record/main-pass-geometry.d.ts +20 -2
  191. package/dist/record/main-pass-geometry.d.ts.map +1 -1
  192. package/dist/record/main-pass-material.d.ts +10 -18
  193. package/dist/record/main-pass-material.d.ts.map +1 -1
  194. package/dist/record/main-pass-sprite-draws.d.ts.map +1 -1
  195. package/dist/record/main-pass.d.ts.map +1 -1
  196. package/dist/record/mesh-ssbo.d.ts +11 -3
  197. package/dist/record/mesh-ssbo.d.ts.map +1 -1
  198. package/dist/record/recovery-pipeline.d.ts +30 -0
  199. package/dist/record/recovery-pipeline.d.ts.map +1 -0
  200. package/dist/record/render-context.d.ts +82 -9
  201. package/dist/record/render-context.d.ts.map +1 -1
  202. package/dist/record/shadow-pass.d.ts.map +1 -1
  203. package/dist/record/typed-frame-graph.d.ts +49 -2
  204. package/dist/record/typed-frame-graph.d.ts.map +1 -1
  205. package/dist/record/view-ubo.d.ts +1 -2
  206. package/dist/record/view-ubo.d.ts.map +1 -1
  207. package/dist/recovery/render-system-candidate.d.ts +65 -0
  208. package/dist/recovery/render-system-candidate.d.ts.map +1 -0
  209. package/dist/reflection/inspection.d.ts +10 -0
  210. package/dist/reflection/inspection.d.ts.map +1 -0
  211. package/dist/reflection/projection.d.ts +49 -0
  212. package/dist/reflection/projection.d.ts.map +1 -1
  213. package/dist/reflection/record-owner.d.ts +60 -0
  214. package/dist/reflection/record-owner.d.ts.map +1 -0
  215. package/dist/render-contract.d.ts +78 -15
  216. package/dist/render-contract.d.ts.map +1 -1
  217. package/dist/render-pipeline.d.ts +7 -0
  218. package/dist/render-pipeline.d.ts.map +1 -1
  219. package/dist/render-system-extract-tail.d.ts +12 -0
  220. package/dist/render-system-extract-tail.d.ts.map +1 -0
  221. package/dist/render-system-extract.d.ts +252 -30
  222. package/dist/render-system-extract.d.ts.map +1 -1
  223. package/dist/render-system.d.ts +140 -5
  224. package/dist/render-system.d.ts.map +1 -1
  225. package/dist/scene/probe-blend-record.d.ts +22 -0
  226. package/dist/scene/probe-blend-record.d.ts.map +1 -0
  227. package/dist/scene/probe-blend.d.ts +142 -0
  228. package/dist/scene/probe-blend.d.ts.map +1 -0
  229. package/dist/scene/render-scene-types.d.ts +0 -6
  230. package/dist/scene/render-scene-types.d.ts.map +1 -1
  231. package/dist/scene/render-scene.d.ts +122 -9
  232. package/dist/scene/render-scene.d.ts.map +1 -1
  233. package/dist/scene/visibility/bounds.d.ts +20 -0
  234. package/dist/scene/visibility/bounds.d.ts.map +1 -0
  235. package/dist/scene/visibility/budget.d.ts +16 -0
  236. package/dist/scene/visibility/budget.d.ts.map +1 -0
  237. package/dist/scene/visibility/facet.d.ts +73 -0
  238. package/dist/scene/visibility/facet.d.ts.map +1 -0
  239. package/dist/scene/visibility/gpu-frame-timing.d.ts +41 -0
  240. package/dist/scene/visibility/gpu-frame-timing.d.ts.map +1 -0
  241. package/dist/scene/visibility/gpu-lod.d.ts +46 -0
  242. package/dist/scene/visibility/gpu-lod.d.ts.map +1 -0
  243. package/dist/scene/visibility/inspection.d.ts +132 -0
  244. package/dist/scene/visibility/inspection.d.ts.map +1 -0
  245. package/dist/scene/visibility/lod-selector.d.ts +25 -0
  246. package/dist/scene/visibility/lod-selector.d.ts.map +1 -0
  247. package/dist/scene/visibility/occlusion-confidence.d.ts +81 -0
  248. package/dist/scene/visibility/occlusion-confidence.d.ts.map +1 -0
  249. package/dist/scene/visibility/occlusion-pass.d.ts +57 -0
  250. package/dist/scene/visibility/occlusion-pass.d.ts.map +1 -0
  251. package/dist/scene/visibility/occlusion-query-pool.d.ts +57 -0
  252. package/dist/scene/visibility/occlusion-query-pool.d.ts.map +1 -0
  253. package/dist/scene/visibility/occlusion-runtime.d.ts +96 -0
  254. package/dist/scene/visibility/occlusion-runtime.d.ts.map +1 -0
  255. package/dist/scene/visibility/types.d.ts +34 -0
  256. package/dist/scene/visibility/types.d.ts.map +1 -0
  257. package/dist/ssr/admission.d.ts +122 -0
  258. package/dist/ssr/admission.d.ts.map +1 -0
  259. package/dist/ssr/composition.d.ts +32 -0
  260. package/dist/ssr/composition.d.ts.map +1 -0
  261. package/dist/ssr/errors.d.ts +39 -0
  262. package/dist/ssr/errors.d.ts.map +1 -0
  263. package/dist/ssr/identity.d.ts +13 -0
  264. package/dist/ssr/identity.d.ts.map +1 -0
  265. package/dist/systems/skin-palette-allocator.d.ts +1 -1
  266. package/dist/temporal/frame-coordinator.d.ts +13 -0
  267. package/dist/temporal/frame-coordinator.d.ts.map +1 -1
  268. package/dist/temporal/frame.d.ts +2 -0
  269. package/dist/temporal/frame.d.ts.map +1 -1
  270. package/dist/temporal/index.mjs +6 -5
  271. package/dist/temporal/taa-history-store.d.ts +15 -1
  272. package/dist/temporal/taa-history-store.d.ts.map +1 -1
  273. package/dist/temporal/transaction.d.ts +5 -0
  274. package/dist/temporal/transaction.d.ts.map +1 -1
  275. package/dist/temporal/view.d.ts +7 -0
  276. package/dist/temporal/view.d.ts.map +1 -1
  277. package/dist/tilemap-chunk-extract-system.d.ts +1 -1
  278. package/dist/typed-render-graph-primitives.d.ts +4 -0
  279. package/dist/typed-render-graph-primitives.d.ts.map +1 -1
  280. package/dist/volume/passes.d.ts +8 -4
  281. package/dist/volume/passes.d.ts.map +1 -1
  282. package/package.json +20 -20
  283. package/src/__tests__/cluster-grid-default-surface.unit.test.ts +5 -0
  284. package/src/__tests__/detached-inspection.integration.test.ts +6 -0
  285. package/src/__tests__/device-feature-admission.unit.test.ts +19 -1
  286. package/src/__tests__/device-loss-fanout.unit.test.ts +107 -0
  287. package/src/__tests__/device-scope-lifecycle.unit.test.ts +21 -0
  288. package/src/__tests__/direct-light-snapshot.unit.test.ts +59 -3
  289. package/src/__tests__/environment-generation.integration.test.ts +39 -0
  290. package/src/__tests__/evidence-identity.ts +13 -0
  291. package/src/__tests__/evidence-identity.unit.test.ts +24 -0
  292. package/src/__tests__/expose-renderer-errors.unit.test.ts +34 -0
  293. package/src/__tests__/extended-lighting-recovery.browser.test.ts +14 -0
  294. package/src/__tests__/extended-lighting-recovery.dawn.test.ts +14 -0
  295. package/src/__tests__/extended-lighting-recovery.integration.test.ts +81 -0
  296. package/src/__tests__/extended-lighting-resources.unit.test.ts +51 -0
  297. package/src/__tests__/extended-lighting-zero-feature.integration.test.ts +52 -0
  298. package/src/__tests__/factory-contract.integration.test.ts +154 -6
  299. package/src/__tests__/fallback-row-stride-surface.unit.test.ts +4 -1
  300. package/src/__tests__/frame-observation.contract.test.ts +15 -0
  301. package/src/__tests__/gpu-driven-batch-topology-pbr.unit.test.ts +146 -0
  302. package/src/__tests__/gpu-driven-indirect-raster-evidence.ts +1 -0
  303. package/src/__tests__/gpu-driven-indirect-raster.dawn.test.ts +1 -0
  304. package/src/__tests__/gpu-driven-production.integration.test.ts +572 -9
  305. package/src/__tests__/gpu-driven-scaling.unit.test.ts +66 -2
  306. package/src/__tests__/gpu-driven-view-gpu-evidence.ts +26 -1
  307. package/src/__tests__/gpu-driven-view-graph.integration.test.ts +89 -2
  308. package/src/__tests__/gpu-driven-view.browser.test.ts +3 -3
  309. package/src/__tests__/gpu-driven-view.dawn.test.ts +3 -3
  310. package/src/__tests__/gpu-driven-view.unit.test.ts +50 -0
  311. package/src/__tests__/gpu-lod-evidence.ts +188 -0
  312. package/src/__tests__/gpu-lod-fallback.integration.test.ts +10 -0
  313. package/src/__tests__/gpu-lod-indirect.integration.test.ts +40 -0
  314. package/src/__tests__/gpu-lod-parity.dawn.test.ts +29 -0
  315. package/src/__tests__/gpu-lod-readiness.integration.test.ts +52 -0
  316. package/src/__tests__/gpu-lod-schema.unit.test.ts +66 -0
  317. package/src/__tests__/gpu-lod-selector.unit.test.ts +28 -0
  318. package/src/__tests__/gpu-lod-silhouette.browser.test.ts +13 -0
  319. package/src/__tests__/gpu-resource-store-stride.unit.test.ts +66 -1
  320. package/src/__tests__/gpu-scene.dawn.test.ts +8 -1
  321. package/src/__tests__/gpu-scene.unit.test.ts +49 -3
  322. package/src/__tests__/ibl/face-uniforms.unit.test.ts +2 -0
  323. package/src/__tests__/ibl-residency-publication.unit.test.ts +113 -0
  324. package/src/__tests__/light-buffer-layout.unit.test.ts +113 -3
  325. package/src/__tests__/light-inspection.unit.test.ts +55 -0
  326. package/src/__tests__/light-resource-error.unit.test.ts +43 -0
  327. package/src/__tests__/lighting-scene-roundtrip.integration.test.ts +109 -0
  328. package/src/__tests__/lod-bounds.unit.test.ts +42 -0
  329. package/src/__tests__/lod-cpu-lane.integration.test.ts +55 -0
  330. package/src/__tests__/lod-cpu-no-change.perf.test.ts +19 -0
  331. package/src/__tests__/lod-gpu-frame-timing.unit.test.ts +49 -0
  332. package/src/__tests__/lod-multi-view.integration.test.ts +63 -0
  333. package/src/__tests__/lod-occlusion-device-loss.integration.test.ts +27 -0
  334. package/src/__tests__/lod-occlusion-final-decision.integration.test.ts +47 -0
  335. package/src/__tests__/lod-occlusion-inspection.integration.test.ts +217 -0
  336. package/src/__tests__/lod-occlusion-inspection.schema.test-d.ts +14 -0
  337. package/src/__tests__/lod-occlusion-inspection.unit.test.ts +72 -0
  338. package/src/__tests__/lod-occlusion-visual-evidence.ts +91 -0
  339. package/src/__tests__/lod-occlusion.browser.test.ts +15 -0
  340. package/src/__tests__/lod-occlusion.dawn.test.ts +20 -0
  341. package/src/__tests__/lod-selector.profile.test.ts +35 -0
  342. package/src/__tests__/lod-selector.unit.test.ts +68 -0
  343. package/src/__tests__/lod-visibility-identity.unit.test.ts +198 -0
  344. package/src/__tests__/lod-visibility-lifecycle.integration.test.ts +132 -0
  345. package/src/__tests__/ltc-resources.unit.test.ts +32 -0
  346. package/src/__tests__/material-contract-inventory.unit.test.ts +41 -9
  347. package/src/__tests__/material-cooked-projection.unit.test.ts +19 -1
  348. package/src/__tests__/material-static-dynamic-route.unit.test.ts +29 -0
  349. package/src/__tests__/material-stride-surface.unit.test.ts +7 -3
  350. package/src/__tests__/materials-standard-contract.unit.test.ts +104 -0
  351. package/src/__tests__/mesh-buffer-usage-surface.unit.test.ts +1 -1
  352. package/src/__tests__/occlusion-confidence.unit.test.ts +168 -0
  353. package/src/__tests__/occlusion-invalidation.integration.test.ts +37 -0
  354. package/src/__tests__/occlusion-pass-routing.unit.test.ts +16 -0
  355. package/src/__tests__/occlusion-pass.dawn.test.ts +20 -0
  356. package/src/__tests__/occlusion-pass.integration.test.ts +43 -0
  357. package/src/__tests__/occlusion-pass.rhi-null.test.ts +22 -0
  358. package/src/__tests__/occlusion-query-pool.rhi-null.test.ts +21 -0
  359. package/src/__tests__/occlusion-query-pool.unit.test.ts +95 -0
  360. package/src/__tests__/occlusion-query-ticket.integration.test.ts +47 -0
  361. package/src/__tests__/occlusion-query.dawn.test.ts +16 -0
  362. package/src/__tests__/occlusion-query.evidence.ts +178 -0
  363. package/src/__tests__/occlusion-query.rhi-null.test.ts +31 -0
  364. package/src/__tests__/occlusion-runtime.unit.test.ts +120 -0
  365. package/src/__tests__/physical-clearcoat.integration.test.ts +89 -0
  366. package/src/__tests__/prepared-gpu-driven-pbr.integration.test.ts +196 -0
  367. package/src/__tests__/prepared-graphics-pipeline-warmup.unit.test.ts +1 -1
  368. package/src/__tests__/probe-bindings.unit.test.ts +200 -0
  369. package/src/__tests__/probe-blend-numeric.unit.test.ts +67 -0
  370. package/src/__tests__/probe-blend-oracle.unit.test.ts +136 -0
  371. package/src/__tests__/probe-capacity.integration.test.ts +97 -0
  372. package/src/__tests__/probe-recovery.integration.test.ts +104 -0
  373. package/src/__tests__/probe-scene-dirty.integration.test.ts +211 -0
  374. package/src/__tests__/profiler-phase-catalog.test.ts +4 -1
  375. package/src/__tests__/profiler-phase-token.test.ts +1 -0
  376. package/src/__tests__/recover-error-policy-owner.unit.test.ts +6 -3
  377. package/src/__tests__/recovery-candidate-prepare.contract.test.ts +140 -0
  378. package/src/__tests__/rect-area-boundary.unit.test.ts +24 -0
  379. package/src/__tests__/reflection-fallback-graph.unit.test.ts +67 -0
  380. package/src/__tests__/reflection-fallback-inspection.unit.test.ts +77 -0
  381. package/src/__tests__/reflection-fallback-lifecycle.integration.test.ts +21 -0
  382. package/src/__tests__/reflection-fallback-projection.unit.test.ts +90 -0
  383. package/src/__tests__/reflection-fallback-source.unit.test.ts +32 -0
  384. package/src/__tests__/reflection-probe-owner-placement.unit.test.ts +39 -0
  385. package/src/__tests__/reflection-probe-record-owner.characterization.unit.test.ts +120 -0
  386. package/src/__tests__/render-error-code-owner.test-d.ts +1 -0
  387. package/src/__tests__/render-feature-docs.unit.test.ts +12 -7
  388. package/src/__tests__/render-graph-fallback.integration.test.ts +24 -0
  389. package/src/__tests__/render-perf/extended-lighting.bench.test.ts +66 -0
  390. package/src/__tests__/render-scene-projection.unit.test.ts +447 -18
  391. package/src/__tests__/renderer-factory-material-contract.unit.test.ts +160 -17
  392. package/src/__tests__/renderer-frame-generation-fence.integration.test.ts +47 -0
  393. package/src/__tests__/renderer-generation-assembly.unit.test.ts +77 -0
  394. package/src/__tests__/renderer-generation-failure.unit.test.ts +108 -0
  395. package/src/__tests__/renderer-producer-root-matrix.integration.test.ts +33 -0
  396. package/src/__tests__/renderer-recovery-capability-matrix.unit.test.ts +59 -0
  397. package/src/__tests__/renderer-recovery-contract.unit.test.ts +73 -0
  398. package/src/__tests__/renderer-recovery-lifecycle.unit.test.ts +216 -0
  399. package/src/__tests__/renderer-target-history-recovery.integration.test.ts +80 -0
  400. package/src/__tests__/shader-manifest-fixture.ts +13 -16
  401. package/src/__tests__/shader-stage-surface.unit.test.ts +1 -1
  402. package/src/__tests__/skin-motion-regression.unit.test.ts +22 -0
  403. package/src/__tests__/skinned-shadow-caster.test.ts +2 -2
  404. package/src/__tests__/spot-modifier-projection.unit.test.ts +70 -0
  405. package/src/__tests__/ssr-admission-matrix.integration.test.ts +206 -0
  406. package/src/__tests__/ssr-composition.unit.test.ts +46 -0
  407. package/src/__tests__/ssr-fallback-zero-work.bench.test.ts +94 -0
  408. package/src/__tests__/ssr-recovery-errors.unit.test.ts +58 -0
  409. package/src/__tests__/standard-cluster-variant-resolution.unit.test.ts +67 -0
  410. package/src/__tests__/standard-clustered-pipeline.unit.test.ts +7 -0
  411. package/src/__tests__/standard-layer-projection.unit.test.ts +23 -0
  412. package/src/__tests__/standard-lighting-inspection.integration.test.ts +1 -1
  413. package/src/__tests__/standard-lighting-write.unit.test.ts +66 -2
  414. package/src/__tests__/temporal-fallback-generation.integration.test.ts +16 -0
  415. package/src/__tests__/temporal-view.unit.test.ts +3 -3
  416. package/src/__tests__/transmission-prewarm.unit.test.ts +111 -32
  417. package/src/__tests__/visibility-budget.integration.test.ts +140 -0
  418. package/src/__tests__/visibility-budget.unit.test.ts +70 -0
  419. package/src/__tests__/visibility-extract.integration.test.ts +11 -6
  420. package/src/__tests__/volumetric-fog-point-spot-accumulation.integration.test.ts +6 -3
  421. package/src/__tests__/volumetric-fog-stage-readback.dawn.test.ts +31 -28
  422. package/src/__tests__/volumetric-fog-topology.unit.test.ts +3 -1
  423. package/src/assembly/backend-contract.ts +13 -0
  424. package/src/assembly/bundler-contract.ts +9 -0
  425. package/src/assembly/device-feature-admission.ts +26 -9
  426. package/src/assembly/extended-lighting-fallback.ts +216 -0
  427. package/src/assembly/factory.ts +81 -9634
  428. package/src/assembly/host-contract.ts +10 -0
  429. package/src/assembly/material/assembly.ts +18 -2
  430. package/src/assembly/material/standard-layer-projection.ts +16 -0
  431. package/src/assembly/material-shader-policy.ts +854 -0
  432. package/src/assembly/material-shader-prewarm.ts +88 -0
  433. package/src/assembly/mesh-ssbo-grow.ts +270 -0
  434. package/src/assembly/recovery/device-loss-fanout.ts +89 -0
  435. package/src/assembly/recovery/generation.ts +141 -0
  436. package/src/assembly/recovery/recovery-attempt.ts +800 -0
  437. package/src/assembly/recovery/renderer-recover.ts +906 -0
  438. package/src/assembly/renderer-facade.ts +342 -0
  439. package/src/assembly/renderer-frame-transaction.ts +45 -0
  440. package/src/assembly/renderer-helpers.ts +99 -0
  441. package/src/assembly/renderer-lifecycle.ts +159 -0
  442. package/src/assembly/shader-prewarm-policy.ts +157 -0
  443. package/src/assembly/webgpu-ready-contract.ts +14 -0
  444. package/src/assembly/webgpu-ready.ts +4079 -0
  445. package/src/assembly/webgpu-renderer.ts +4095 -0
  446. package/src/cluster-binner.ts +31 -0
  447. package/src/components/__tests__/lighting-authoring.unit.test.ts +39 -0
  448. package/src/components/__tests__/rect-area-light.unit.test.ts +33 -0
  449. package/src/components/camera.ts +1 -1
  450. package/src/components/index.ts +3 -0
  451. package/src/components/light-helpers.ts +52 -1
  452. package/src/components/light-probe.ts +13 -0
  453. package/src/components/rect-area-light.ts +15 -0
  454. package/src/components/scene-instance.ts +6 -0
  455. package/src/components/spot-light.ts +3 -0
  456. package/src/debug-draw-glue.ts +1 -1
  457. package/src/device/__tests__/extended-lighting-recovery.unit.test.ts +24 -0
  458. package/src/device/device-scope.ts +35 -6
  459. package/src/device/gpu-residency.ts +334 -35
  460. package/src/device/lifecycle-transaction.ts +12 -0
  461. package/src/environment/frame.ts +6 -0
  462. package/src/environment/inspection.ts +10 -0
  463. package/src/environment/lifecycle.ts +122 -9
  464. package/src/errors/gpu-driven.ts +92 -0
  465. package/src/errors/index.ts +1 -0
  466. package/src/errors/recover.ts +108 -5
  467. package/src/errors/render.ts +72 -1
  468. package/src/extract/camera.ts +3 -3
  469. package/src/extract/contracts.ts +974 -0
  470. package/src/extract/gpu-driven.ts +108 -0
  471. package/src/extract/visibility.ts +0 -23
  472. package/src/features/host.ts +16 -0
  473. package/src/features/prepared-gpu-work.ts +20 -2
  474. package/src/features/prepared-graphics-store.ts +17 -0
  475. package/src/gpu-driven/batch-topology.ts +206 -28
  476. package/src/gpu-driven/prepared-draw.ts +208 -0
  477. package/src/gpu-driven/production-raster.ts +1046 -39
  478. package/src/gpu-driven/view-gpu.ts +411 -29
  479. package/src/gpu-scene-schema.ts +13 -0
  480. package/src/gpu-scene.ts +137 -67
  481. package/src/gpu-usage.ts +0 -1
  482. package/src/hdrp-buffers.ts +6 -6
  483. package/src/ibl/IblPipelineCache.ts +134 -50
  484. package/src/ibl/skylight-bind-group.ts +26 -0
  485. package/src/index.ts +83 -1
  486. package/src/inspection-types.ts +220 -1
  487. package/src/internal.ts +38 -0
  488. package/src/light-buffer-layout.ts +157 -324
  489. package/src/materials.ts +278 -47
  490. package/src/mesh-material-bindings.ts +59 -0
  491. package/src/occlusion-proxy.ts +64 -0
  492. package/src/pbr-pipeline.ts +290 -60
  493. package/src/pipeline/standard-forward-lane.ts +47 -0
  494. package/src/pipeline/standard-lighting/graph.ts +2 -1
  495. package/src/pipeline/standard-lighting/light-frame.ts +3 -2
  496. package/src/pipeline/standard-lighting/topology.ts +1 -1
  497. package/src/pipeline/standard-lighting/transport.ts +2 -1
  498. package/src/pipeline/standard-pipeline.ts +2 -0
  499. package/src/pipeline-builder.ts +5 -2
  500. package/src/pipeline-spec.ts +12 -1
  501. package/src/plugin.ts +4 -0
  502. package/src/points-lines/__tests__/cache-recovery.unit.test.ts +22 -0
  503. package/src/points-lines/prepare.ts +9 -0
  504. package/src/points-lines/standard-owner.ts +403 -0
  505. package/src/prepare/__tests__/extended-lighting-capability.unit.test.ts +56 -0
  506. package/src/prepare/extended-lighting/ltc-resources.ts +136 -0
  507. package/src/prepare/extended-lighting/resources.ts +389 -0
  508. package/src/prepare/extended-lighting/spot-modifiers.ts +194 -0
  509. package/src/prepare/extended-lighting/state.ts +92 -0
  510. package/src/record/__tests__/frame-targets-recovery.unit.test.ts +60 -0
  511. package/src/record/__tests__/gpu-timing.unit.test.ts +177 -0
  512. package/src/record/__tests__/main-pass-geometry.unit.test.ts +26 -1
  513. package/src/record/__tests__/mesh-ssbo.unit.test.ts +38 -0
  514. package/src/record/__tests__/recovery-pipeline.unit.test.ts +124 -0
  515. package/src/record/__tests__/sprite-material-abi.unit.test.ts +28 -13
  516. package/src/record/__tests__/standard-pbr-ubo-layout.unit.test.ts +47 -4
  517. package/src/record/__tests__/temporal-payload.unit.test.ts +29 -28
  518. package/src/record/__tests__/typed-frame-graph-plan.unit.test.ts +21 -2
  519. package/src/record/frame-lighting.ts +252 -53
  520. package/src/record/frame-snapshot.ts +72 -12
  521. package/src/record/frame-targets.ts +11 -1
  522. package/src/record/frame.ts +416 -95
  523. package/src/record/gpu-timing.ts +108 -44
  524. package/src/record/helpers.ts +1 -59
  525. package/src/record/main-pass-geometry.ts +434 -44
  526. package/src/record/main-pass-material.ts +324 -210
  527. package/src/record/main-pass-sprite-draws.ts +58 -92
  528. package/src/record/main-pass.ts +94 -6
  529. package/src/record/mesh-ssbo.ts +79 -46
  530. package/src/record/recovery-pipeline.ts +695 -0
  531. package/src/record/render-context.ts +99 -7
  532. package/src/record/shadow-pass.ts +66 -40
  533. package/src/record/typed-frame-graph.ts +270 -84
  534. package/src/record/view-ubo.ts +17 -27
  535. package/src/recovery/render-system-candidate.ts +839 -0
  536. package/src/reflection/inspection.ts +67 -0
  537. package/src/reflection/projection.ts +196 -1
  538. package/src/reflection/record-owner.ts +1283 -0
  539. package/src/render-contract.ts +82 -12
  540. package/src/render-pipeline.ts +5 -0
  541. package/src/render-system-extract-tail.ts +2983 -0
  542. package/src/render-system-extract.ts +290 -2784
  543. package/src/render-system.ts +1597 -1192
  544. package/src/scene/__tests__/changed-block-summary.candidate.test.ts +36 -0
  545. package/src/scene/probe-blend-record.ts +54 -0
  546. package/src/scene/probe-blend.ts +813 -0
  547. package/src/scene/render-scene-types.ts +0 -7
  548. package/src/scene/render-scene.ts +972 -184
  549. package/src/scene/visibility/bounds.ts +57 -0
  550. package/src/scene/visibility/budget.ts +40 -0
  551. package/src/scene/visibility/facet.ts +400 -0
  552. package/src/scene/visibility/gpu-frame-timing.ts +101 -0
  553. package/src/scene/visibility/gpu-lod.ts +119 -0
  554. package/src/scene/visibility/inspection.ts +313 -0
  555. package/src/scene/visibility/lod-selector.ts +84 -0
  556. package/src/scene/visibility/occlusion-confidence.ts +478 -0
  557. package/src/scene/visibility/occlusion-pass.ts +165 -0
  558. package/src/scene/visibility/occlusion-query-pool.ts +178 -0
  559. package/src/scene/visibility/occlusion-runtime.ts +672 -0
  560. package/src/scene/visibility/types.ts +50 -0
  561. package/src/ssr/admission.ts +451 -0
  562. package/src/ssr/composition.ts +73 -0
  563. package/src/ssr/errors.ts +76 -0
  564. package/src/ssr/identity.ts +12 -0
  565. package/src/systems/skin-palette-allocator.ts +1 -1
  566. package/src/temporal/frame-coordinator.ts +30 -1
  567. package/src/temporal/frame.ts +14 -1
  568. package/src/temporal/taa-history-store.ts +46 -2
  569. package/src/temporal/temporal-view.ts +1 -1
  570. package/src/temporal/transaction.ts +9 -0
  571. package/src/temporal/view.ts +11 -0
  572. package/src/tilemap-chunk-extract-system.ts +5 -5
  573. package/src/transmission/__tests__/standard-transmission.dawn.test.ts +19 -12
  574. package/src/typed-render-graph-primitives.ts +48 -0
  575. package/src/volume/passes.ts +46 -49
  576. package/dist/.tsbuildinfo +0 -1
  577. package/dist/chunk-5YADUCA7.mjs.map +0 -1
  578. package/dist/chunk-6OPXDQ2E.mjs.map +0 -1
  579. package/dist/chunk-BXBQQKFQ.mjs +0 -67
  580. package/dist/chunk-BXBQQKFQ.mjs.map +0 -1
  581. package/dist/chunk-FS2KNUQH.mjs.map +0 -1
  582. package/dist/chunk-PCHBPYML.mjs.map +0 -1
  583. package/dist/chunk-VFPLTKCU.mjs +0 -192
  584. package/dist/chunk-VFPLTKCU.mjs.map +0 -1
@@ -0,0 +1,30 @@
1
+ import type { StandardTopologyInputValue } from '../pipeline/standard-lighting/topology';
2
+ import { type PipelineSpec } from '../pipeline-spec';
3
+ import type { CameraSnapshot } from '../render-contract';
4
+ import type { DispatchEntry } from '../render-system-extract';
5
+ import type { ValidatedRenderable } from './frame-snapshot';
6
+ import type { PipelineState, RecoveryColdWorkGuard, RenderSystemInternals } from './render-context';
7
+ export interface RecoveryPipelineReadiness {
8
+ readonly pipelineSpecs: readonly PipelineSpec[];
9
+ /** Re-resolve every candidate request and assert a stable cache hit. */
10
+ readonly assertFirstRecoveryFrame: () => void;
11
+ }
12
+ /**
13
+ * Create the one-shot assertion used by the first frame after publication.
14
+ * Recording a miss is a failure at the owner seam; the draw path never gets a
15
+ * chance to submit a frame that hides a shader/pipeline or static-residency
16
+ * cold build behind an apparently successful receipt.
17
+ */
18
+ export declare function createRecoveryColdWorkGuard(): RecoveryColdWorkGuard;
19
+ export declare function prepareRecoveryPipelineReadiness(input: {
20
+ readonly internals: RenderSystemInternals;
21
+ readonly pipelineState: PipelineState;
22
+ readonly camera: CameraSnapshot;
23
+ readonly standardLighting: StandardTopologyInputValue | undefined;
24
+ readonly validated: readonly ValidatedRenderable[];
25
+ readonly dispatch: readonly DispatchEntry[];
26
+ readonly shadowCastersActive: boolean;
27
+ readonly splitLdrSprite: boolean;
28
+ readonly reflectionFallbackAvailable: boolean;
29
+ }): RecoveryPipelineReadiness;
30
+ //# sourceMappingURL=recovery-pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery-pipeline.d.ts","sourceRoot":"","sources":["../../src/record/recovery-pipeline.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACzF,OAAO,EAGL,KAAK,YAAY,EAKlB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,0BAA0B,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAG5D,OAAO,KAAK,EAEV,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,wEAAwE;IACxE,QAAQ,CAAC,wBAAwB,EAAE,MAAM,IAAI,CAAC;CAC/C;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,IAAI,qBAAqB,CAsCnE;AAugBD,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAClE,QAAQ,CAAC,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,2BAA2B,EAAE,OAAO,CAAC;CAC/C,GAAG,yBAAyB,CA0E5B"}
@@ -5,7 +5,7 @@ import type { Profiler } from '@forgeax/engine-profiler';
5
5
  import type { CompiledRenderGraphInfo } from '@forgeax/engine-render-graph';
6
6
  import type { BindGroup, BindGroupLayout, Buffer, ComputePipeline, PipelineLayout, Result, RhiCanvasContext, RhiCommandEncoder, RhiDevice, RenderPipeline as RhiRenderPipeline, Sampler, Texture, TextureFormat, TextureView } from '@forgeax/engine-rhi';
7
7
  import { RhiError } from '@forgeax/engine-rhi';
8
- import type { MaterialRuntimeArtifact } from '@forgeax/engine-shader';
8
+ import { type MaterialRuntimeArtifact, type MaterialShaderArtifact } from '@forgeax/engine-shader';
9
9
  import type { MaterialRenderState, ParamSchemaEntry, PassKind, PrimitiveTopology, VertexAttributeMap } from '@forgeax/engine-types';
10
10
  import type { MaterialRenderProjection } from '../assembly/material/assembly';
11
11
  import type { DeviceScope } from '../device/device-scope';
@@ -24,6 +24,7 @@ import type { PointsLinesInspection } from '../points-lines/inspection';
24
24
  import type { PointsLinesRecordPlan } from '../points-lines/record';
25
25
  import type { ReflectionProbeTable } from '../reflection/gpu-table';
26
26
  import type { ReflectionProbeSelectionResult } from '../reflection/projection';
27
+ import type { SsrAdmissionIdentity } from '../ssr/identity';
27
28
  import type { GpuPassTimingReason } from './gpu-pass-timing/errors';
28
29
  import type { GpuPassTimingCapture, GpuPassTimingFrameIdentity, GpuPassTimingSession } from './gpu-pass-timing/session';
29
30
  export interface PointsLinesRecordSubmission {
@@ -36,12 +37,44 @@ export interface ReflectionProbeRecordState {
36
37
  readonly table: ReflectionProbeTable;
37
38
  readonly selections: ReadonlyMap<string, ReflectionProbeSelectionResult>;
38
39
  readonly graph: import('./typed-frame-graph').ReflectionProbeGraphState;
39
- readonly completeSubmission: (submitted: boolean, completed?: Promise<unknown>) => void;
40
+ /** Detached committed fallback projections joined by main-pass renderable key. */
41
+ readonly fallbackProjections?: ReadonlyMap<string, import('../inspection-types').ReflectionFallbackReceipt>;
42
+ /** Demand is derived from this frame's renderable/source selection. */
43
+ readonly fallbackDemand?: boolean;
44
+ /** True when at least one selected row must prove a non-zero readback. */
45
+ readonly fallbackHasNonNeutral?: boolean;
46
+ readonly completeSubmission: (submitted: boolean, completed?: Promise<unknown>, fallbackOutput?: {
47
+ readonly format: TextureFormat;
48
+ readonly size: {
49
+ readonly width: number;
50
+ readonly height: number;
51
+ };
52
+ readonly frameId: number;
53
+ readonly graphGeneration: number;
54
+ readonly textureIdentity: number;
55
+ readonly readback?: Promise<{
56
+ readonly linearHdr: readonly [number, number, number, number];
57
+ readonly hash: string;
58
+ readonly graphGeneration: number;
59
+ readonly textureIdentity: number;
60
+ }>;
61
+ }, fallbackRequested?: boolean) => Promise<void>;
40
62
  }
41
63
  export interface MaterialShaderPipelineEntry {
42
64
  readonly pipeline: RhiRenderPipeline;
43
65
  readonly group2Contract: PipelineGroup2Contract;
44
66
  }
67
+ /**
68
+ * Armed only for the first published recovery frame. Candidate preparation
69
+ * must make every pipeline and static residency lookup a cache hit before this
70
+ * guard is armed; a miss is a hard failure before queue submission.
71
+ */
72
+ export interface RecoveryColdWorkGuard {
73
+ arm(): void;
74
+ notePipelineColdWork(): void;
75
+ noteUploadColdWork(): void;
76
+ finish(): void;
77
+ }
45
78
  import type { RenderDebugOverlay, RenderPipelineContext, RenderRecordPhase, VolumetricFogShaderSources } from '../render-contract';
46
79
  import type { DispatchEntry, MaterialSnapshot, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
47
80
  import type { SkinPaletteAllocator } from '../systems/skin-palette-allocator';
@@ -51,21 +84,32 @@ import type { BindGroupCounts, BloomFrameReceipts, DispatchCounts, MaterialBgAss
51
84
  import type { FoldDispatchPlan } from './mesh-ssbo';
52
85
  export interface RenderSystemRuntime {
53
86
  readonly device: RhiDevice;
87
+ /** Internal backend-fixture hook evaluated at the submit transaction edge. */
88
+ readonly beforeSubmit?: ((device: RhiDevice) => RhiError | undefined) | undefined;
54
89
  readonly deviceScope: DeviceScope;
90
+ /** Resolve a recorder/backend wrapper before configuring the native surface. */
91
+ readonly resolveSurfaceDevice?: (device: RhiDevice) => Result<RhiDevice, RhiError>;
55
92
  readonly errorRegistry: RhiErrorListenerRegistry;
56
93
  readonly debugOverlay?: RenderDebugOverlay | undefined;
57
94
  readonly healthRegistry: HealthListenerRegistry;
58
95
  readonly getMaterialProjection?: (materialGuid: string) => MaterialRenderProjection | undefined;
59
96
  readonly getMaterialArtifact?: (specializationKey: string) => MaterialRuntimeArtifact | undefined;
60
- readonly getMaterialShaderPipeline?: (materialShaderId: string, isHdr: boolean, renderState?: MaterialRenderState, topology?: PrimitiveTopology, indexFormat?: 'uint16' | 'uint32', variantSet?: string, passKind?: PassKind, meshAttributes?: VertexAttributeMap, sampleCount?: number, colorFormatOverride?: GPUTextureFormat, shaderUvSetCount?: number, depthFormatOverride?: GPUTextureFormat | null, vertexLayout?: string, vertexLayoutProjection?: VertexLayoutProjection, shaderModuleMode?: RenderFeatureShaderModuleMode, layoutKindOverride?: 'pbr' | 'pbr-skin') => RhiRenderPipeline | null;
61
- readonly getMaterialShaderPipelineEntry?: (materialShaderId: string, isHdr: boolean, renderState?: MaterialRenderState, topology?: PrimitiveTopology, indexFormat?: 'uint16' | 'uint32', variantSet?: string, passKind?: PassKind, meshAttributes?: VertexAttributeMap, sampleCount?: number, colorFormatOverride?: GPUTextureFormat, shaderUvSetCount?: number, depthFormatOverride?: GPUTextureFormat | null, vertexLayout?: string, vertexLayoutProjection?: VertexLayoutProjection, shaderModuleMode?: RenderFeatureShaderModuleMode) => MaterialShaderPipelineEntry | null;
97
+ /** Producer-owned cooked Standard PBR artifact used by GPU-driven projection. */
98
+ readonly getMaterialShaderArtifact?: (materialShaderId: string) => MaterialShaderArtifact | undefined;
99
+ readonly getMaterialShaderPipeline?: (materialShaderId: string, isHdr: boolean, renderState?: MaterialRenderState, topology?: PrimitiveTopology, indexFormat?: 'uint16' | 'uint32', variantSet?: string, passKind?: PassKind, meshAttributes?: VertexAttributeMap, sampleCount?: number, colorFormatOverride?: GPUTextureFormat, shaderUvSetCount?: number, depthFormatOverride?: GPUTextureFormat | null, vertexLayout?: string, vertexLayoutProjection?: VertexLayoutProjection, shaderModuleMode?: RenderFeatureShaderModuleMode, layoutKindOverride?: 'pbr' | 'pbr-skin', additionalColorFormats?: readonly GPUTextureFormat[]) => RhiRenderPipeline | null;
100
+ readonly getMaterialShaderPipelineEntry?: (materialShaderId: string, isHdr: boolean, renderState?: MaterialRenderState, topology?: PrimitiveTopology, indexFormat?: 'uint16' | 'uint32', variantSet?: string, passKind?: PassKind, meshAttributes?: VertexAttributeMap, sampleCount?: number, colorFormatOverride?: GPUTextureFormat, shaderUvSetCount?: number, depthFormatOverride?: GPUTextureFormat | null, vertexLayout?: string, vertexLayoutProjection?: VertexLayoutProjection, shaderModuleMode?: RenderFeatureShaderModuleMode, layoutKindOverride?: 'pbr' | 'pbr-skin', additionalColorFormats?: readonly GPUTextureFormat[]) => MaterialShaderPipelineEntry | null;
101
+ /** Reflection-derived UV count included in the material PipelineSpec cache key. */
102
+ readonly getMaterialShaderUvSetCount?: (materialShaderId: string) => number | undefined;
62
103
  readonly getMaterialShaderBindingContract?: (materialShaderId: string) => 'group-0' | 'group-0-resource' | 'view-only' | 'view-and-scene-depth' | 'render-material';
63
104
  readonly getParamSchema?: (materialShaderId: string) => readonly ParamSchemaEntry[] | undefined;
64
- readonly getMaterialBindGroupLayout?: (materialShaderId: string) => BindGroupLayout | undefined;
105
+ readonly getMaterialBindGroupLayout?: (materialShaderId: string, materialParamSchema?: readonly ParamSchemaEntry[]) => BindGroupLayout | undefined;
106
+ recoveryColdWorkGuard?: RecoveryColdWorkGuard | undefined;
65
107
  readonly metrics: EngineMetrics;
66
108
  readonly lookupPostProcess?: (id: string) => import('../fullscreen-post-process-pass').PostProcessShaderEntry | undefined;
67
109
  readonly getPostProcessParamsBuffer?: (id: string) => Buffer | undefined;
68
110
  readonly getPostProcessPipeline?: (id: string, bgl: BindGroupLayout, colorFormat: GPUTextureFormat, entry?: import('../fullscreen-post-process-pass').PostProcessShaderEntry) => RhiRenderPipeline | null;
111
+ /** Candidate-owned post-process pipelines transferred at publication. */
112
+ readonly getRecoveryPostProcessPipelines?: () => ReadonlyMap<string, RhiRenderPipeline>;
69
113
  readonly clearPostProcessPipelineCache?: (id: string) => void;
70
114
  readonly invalidateShaderModule?: (label: string) => void;
71
115
  readonly dynamicTextureStore?: DynamicTextureStore | undefined;
@@ -201,9 +245,9 @@ export interface PipelineState {
201
245
  readonly buffer: Buffer;
202
246
  readonly sizeInBytes: number;
203
247
  };
204
- readonly pointLightsBuffer: Buffer;
205
- readonly spotLightsBuffer: Buffer;
206
248
  readonly instancesBindGroupLayout: BindGroupLayout;
249
+ /** Probe-enabled slot-3 layout; omitted from no-probe bind groups. */
250
+ readonly probeInstancesBindGroupLayout?: BindGroupLayout;
207
251
  readonly identityInstanceBuffer: Buffer;
208
252
  readonly defaultSampler: Sampler;
209
253
  readonly nearestSampler: Sampler;
@@ -213,28 +257,52 @@ export interface PipelineState {
213
257
  readonly unlitPipelineMsaa: RhiRenderPipeline | null;
214
258
  readonly unlitPipelineHdrMsaa: RhiRenderPipeline | null;
215
259
  readonly pbrPipelineLayout: PipelineLayout | null;
260
+ readonly pbrProbePipelineLayout?: PipelineLayout | null;
216
261
  readonly hdrpPbrPipelineLayout: PipelineLayout | null;
262
+ readonly hdrpProbePbrPipelineLayout?: PipelineLayout | null;
217
263
  readonly hdrpClusterMembershipPipeline: ComputePipeline | null;
218
264
  readonly hdrpClusterMembershipBindGroupLayout: BindGroupLayout | null;
219
265
  readonly pbrSkinPipelineLayout: PipelineLayout | null;
266
+ readonly pbrSkinProbePipelineLayout?: PipelineLayout | null;
220
267
  readonly pbrSkinMeshBindGroupLayout: BindGroupLayout | null;
221
268
  readonly hdrpSkinPipelineLayout: PipelineLayout | null;
222
269
  readonly hdrpSkinMeshBindGroupLayout: BindGroupLayout | null;
223
270
  readonly skinPaletteAllocator: SkinPaletteAllocator | null;
224
271
  readonly defaultWhiteTextureView: TextureView;
225
272
  readonly defaultNormalTextureView: TextureView;
273
+ /** Missing anisotropy maps encode a neutral direction and unit strength. */
274
+ readonly defaultAnisotropyTextureView?: TextureView;
226
275
  readonly unlitPipelineHdr: RhiRenderPipeline | null;
227
276
  readonly shadowFallbackTextureView: TextureView;
228
277
  readonly shadowAtlasFallbackTextureView: TextureView;
278
+ readonly extendedLightingAvailable?: boolean;
279
+ readonly iesProfileTexture?: Texture;
280
+ readonly cookieTexture?: Texture;
281
+ readonly cookieMatrixBuffer?: Buffer;
282
+ spotModifierUploadState?: {
283
+ readonly ies: Map<number, number>;
284
+ readonly cookie: Map<number, number>;
285
+ readonly cookieMatrix: Map<number, number>;
286
+ };
287
+ readonly iesProfileTextureView?: TextureView;
288
+ readonly cookieTextureView?: TextureView;
289
+ readonly ltcLambertTextureView?: TextureView;
290
+ readonly ltcGgxTextureView?: TextureView;
229
291
  readonly shadowParamsBuffer: Buffer;
230
292
  readonly skylightFallback: SkylightFallback | null;
231
293
  readonly perPassResources: PerPassResources;
232
294
  }
233
295
  export interface RenderSystemInternals extends RenderSystemRuntime {
234
296
  readonly canvas: HTMLCanvasElement | OffscreenCanvas;
297
+ /** Build identity injected by the host's build-tool adapter. */
298
+ readonly build?: string | undefined;
299
+ /** Host identity binding for the renderer-owned SSR dependency seam. */
300
+ readonly ssrIdentity?: SsrAdmissionIdentity | undefined;
235
301
  readonly standardProfile?: StandardProfile | undefined;
236
302
  readonly standardPipeline: RenderFrameState['activePipeline'];
237
303
  readonly featureHost?: RenderFeatureHost | undefined;
304
+ /** Install a detached feature host only at the recovery publication boundary. */
305
+ readonly setFeatureHost?: ((host: RenderFeatureHost) => void) | undefined;
238
306
  readonly shaderModuleFactory?: PipelineBuilderShaderModuleFactory;
239
307
  readonly createShaderModule?: (device: import('@forgeax/engine-rhi').RhiDevice, descriptor: {
240
308
  readonly code: string;
@@ -290,6 +358,8 @@ export interface _StandardForwardSceneView {
290
358
  readonly directionalShadowCacheReuse: boolean;
291
359
  readonly world: World;
292
360
  readonly gpuDrivenEntityKeys: ReadonlySet<number>;
361
+ /** Renderer-local world namespace paired with gpuDrivenEntityKeys. */
362
+ readonly gpuDrivenWorldKeys?: readonly number[];
293
363
  readonly tonemapActive: boolean;
294
364
  readonly geometryColorView: TextureView | null;
295
365
  readonly geometryDepthView: TextureView | null;
@@ -298,6 +368,8 @@ export interface _StandardForwardSceneView {
298
368
  readonly splitLdrSprite: boolean;
299
369
  readonly ldrSpritePassView: TextureView | null;
300
370
  readonly transparentColorFormat?: GPUTextureFormat;
371
+ /** Second Standard main-pass attachment used by the fallback producer. */
372
+ readonly reflectionFallbackColorFormat?: GPUTextureFormat;
301
373
  readonly dispatch: readonly DispatchEntry[];
302
374
  readonly hdrpClusterBindGroup: BindGroup | null;
303
375
  readonly hdrpClusterMembershipBindGroup: BindGroup | null;
@@ -317,11 +389,12 @@ export interface _StandardForwardSceneView {
317
389
  readonly payload: Uint8Array;
318
390
  };
319
391
  hdrpSsaoBlurredView?: TextureView;
392
+ readonly occlusion?: import('../scene/visibility/occlusion-runtime').OcclusionFrameProjection;
320
393
  }
321
394
  export type _InternalRenderPipelineContext = RenderPipelineContext & _StandardForwardSceneView;
322
395
  export type RecordProfileRunner = <T>(phase: RenderRecordPhase, action: () => T) => T;
323
- export declare const STANDARD_PBR_UBO_SIZE = 384;
324
- export declare const MATERIAL_PER_ENTITY_STRIDE = 512;
396
+ export declare const STANDARD_PBR_UBO_SIZE: number;
397
+ export declare const MATERIAL_PER_ENTITY_STRIDE: number;
325
398
  export type SwapChainFormatPair = {
326
399
  readonly storage: GPUTextureFormat;
327
400
  readonly view: GPUTextureFormat;
@@ -1 +1 @@
1
- {"version":3,"file":"render-context.d.ts","sourceRoot":"","sources":["../../src/record/render-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-context.d.ts","sourceRoot":"","sources":["../../src/record/render-context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"shadow-pass.d.ts","sourceRoot":"","sources":["../../src/record/shadow-pass.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,MAAM,EAGX,KAAK,QAAQ,EACb,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAuB,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAgB/E,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAY/E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAIvE,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,yBAAyB,QAAgC,CAAC;AAEvE,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,eAAe,GACtB,IAAI,CAkBN;AA0OD,wBAAgB,2BAA2B,CACzC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3F,IAAI,CAwBN;AAED,wBAAgB,qBAAqB,CACnC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GACX,IAAI,CAuBN;AAED,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,aAAa,EAAE,MAAM,GACpB,IAAI,CA8CN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,SAAS,aAAa,EAAE,CAG1B;AAED;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAmBpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAajD"}
1
+ {"version":3,"file":"shadow-pass.d.ts","sourceRoot":"","sources":["../../src/record/shadow-pass.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,MAAM,EAGX,KAAK,QAAQ,EACb,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAuB,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAiB/E,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAY/E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAIvE,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,yBAAyB,QAAgC,CAAC;AAEvE,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,eAAe,GACtB,IAAI,CAkBN;AA2RD,wBAAgB,2BAA2B,CACzC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3F,IAAI,CAwBN;AAED,wBAAgB,qBAAqB,CACnC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,GACX,IAAI,CAuBN;AAED,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,aAAa,EAAE,MAAM,GACpB,IAAI,CA8CN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,SAAS,aAAa,EAAE,CAG1B;AAED;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAmBpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,QAAQ,EAAE,YAAY,GACrB,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAajD"}
@@ -1,5 +1,6 @@
1
1
  import { type CompiledRenderGraph, RenderGraphBuilder, RenderGraphError } from '@forgeax/engine-render-graph';
2
2
  import type { BindGroup, Buffer, RenderPipeline, RhiCommandEncoder, Sampler, Texture, TextureFormat, TextureView } from '@forgeax/engine-rhi';
3
+ import { RhiError } from '@forgeax/engine-rhi';
3
4
  import { type Result } from '@forgeax/engine-types';
4
5
  import { type RenderError } from '../errors/render';
5
6
  import { type RenderFeaturePlannedFrame } from '../features/plan';
@@ -8,6 +9,7 @@ import { type StandardTopologyInputValue } from '../pipeline/standard-lighting/t
8
9
  import type { CameraSnapshot } from '../render-contract';
9
10
  import type { RenderPipelineFrame } from '../render-pipeline';
10
11
  import type { ExtractedLights, ExtractedVolumetricFog } from '../render-system-extract';
12
+ import type { SsrAdmissionResult } from '../ssr/admission';
11
13
  import type { RenderTarget } from '../targets/contracts';
12
14
  import type { RenderTargetPhysical } from '../targets/physical';
13
15
  import type { TransmissionDemand } from '../transmission/projection';
@@ -25,6 +27,47 @@ export interface TemporalGraphRoster {
25
27
  readonly passes: readonly string[];
26
28
  readonly uploads: number;
27
29
  }
30
+ export interface ReflectionFallbackGraphRoster {
31
+ readonly enabled: boolean;
32
+ readonly attachments: readonly string[];
33
+ readonly passes: readonly string[];
34
+ readonly bindings: readonly string[];
35
+ readonly historyCount: 0;
36
+ readonly temporalDemand: 0;
37
+ }
38
+ export interface ReflectionFallbackGraphCandidate {
39
+ readonly generation: number;
40
+ readonly source: 'probe' | 'skylight' | 'neutral';
41
+ readonly roster: ReflectionFallbackGraphRoster;
42
+ }
43
+ export interface SsrAdmissionGraphRoster {
44
+ readonly enabled: boolean;
45
+ readonly attachments: readonly string[];
46
+ readonly passes: readonly string[];
47
+ readonly bindings: readonly string[];
48
+ readonly historyCount: 0;
49
+ readonly temporalDemand: 0;
50
+ }
51
+ /**
52
+ * Admission is the sole switch for parent SSR graph work. A blocked result
53
+ * projects to an empty roster, so missing receipts cannot allocate or bind
54
+ * any SSR resource.
55
+ */
56
+ export declare function createSsrAdmissionGraphRoster(admission: Pick<SsrAdmissionResult, 'status'>): SsrAdmissionGraphRoster;
57
+ export type ReflectionFallbackGraphFailure = 'compile-failed' | 'encode-failed' | 'submit-failed';
58
+ export declare function createReflectionFallbackGraphRoster(input: {
59
+ readonly fallbackDemand: boolean;
60
+ }): ReflectionFallbackGraphRoster;
61
+ export declare function commitReflectionFallbackGraph(candidate: ReflectionFallbackGraphCandidate, result: {
62
+ readonly ok: true;
63
+ } | {
64
+ readonly ok: false;
65
+ readonly reason: ReflectionFallbackGraphFailure;
66
+ }): {
67
+ readonly visible: boolean;
68
+ readonly generation: number;
69
+ readonly source?: ReflectionFallbackGraphCandidate['source'];
70
+ };
28
71
  export declare function shouldUseTemporalFrameTransaction(antialias: CameraSnapshot['antialias'], temporalDemand?: boolean): boolean;
29
72
  export declare function isMotionBlurTemporalDemand(motionBlur: CameraSnapshot['motionBlur'] | undefined): boolean;
30
73
  /**
@@ -130,6 +173,10 @@ export declare function resolvePostProcessChainAdmission(effects: readonly strin
130
173
  * leave the renderer without a graph when this was the first attempt).
131
174
  */
132
175
  export declare function settleVolumetricFogGraphCandidate(frameState: RenderFrameState, submitted: boolean): void;
133
- export declare function ensureCompiledFrameGraph(internals: RenderSystemInternals, frameState: RenderFrameState, pipelineState: PipelineState, camera: CameraSnapshot, lights: ExtractedLights, width: number, height: number, shadowMapSize: number | undefined, gpuDriven?: PreparedGpuDrivenFrame, featureGraphCandidate?: RenderFeatureGraphCandidate, cubeCaptureState?: CubeCaptureGraphState, clearOnly?: boolean, transmissionDemand?: TransmissionDemand, volumetricFog?: ExtractedVolumetricFog, volumeTopologyCandidate?: boolean, standardLighting?: StandardTopologyInputValue): CompiledRenderGraph<RenderPipelineFrame> | null;
134
- export declare function executeCompiledFrameGraph(internals: RenderSystemInternals, frameState: RenderFrameState, frame: RenderPipelineFrame, encoder: RhiCommandEncoder, runPass?: import('@forgeax/engine-render-graph').RenderGraphPassRunner, readbackFaces?: readonly number[], onSubmitted?: (completed: Promise<unknown>) => void, timingCapture?: GpuTimingCapture): boolean;
176
+ export declare function ensureCompiledFrameGraph(internals: RenderSystemInternals, frameState: RenderFrameState, pipelineState: PipelineState, camera: CameraSnapshot, lights: ExtractedLights, width: number, height: number, shadowMapSize: number | undefined, gpuDriven?: PreparedGpuDrivenFrame, featureGraphCandidate?: RenderFeatureGraphCandidate, cubeCaptureState?: CubeCaptureGraphState, clearOnly?: boolean, transmissionDemand?: TransmissionDemand, occlusion?: import('../scene/visibility/occlusion-runtime').OcclusionFrameProjection, volumetricFog?: ExtractedVolumetricFog, volumeTopologyCandidate?: boolean, standardLighting?: StandardTopologyInputValue, onRecoveryError?: (error: unknown) => void): CompiledRenderGraph<RenderPipelineFrame> | null;
177
+ export declare function executeCompiledFrameGraph(internals: RenderSystemInternals, frameState: RenderFrameState, frame: RenderPipelineFrame, encoder: RhiCommandEncoder, runPass?: import('@forgeax/engine-render-graph').RenderGraphPassRunner, frameHooks?: {
178
+ readonly afterGraphExecute?: () => Result<void, RhiError>;
179
+ readonly onSubmitted?: () => void;
180
+ readonly onAborted?: () => void;
181
+ }, readbackFaces?: readonly number[], onSubmitted?: (completed: Promise<unknown>) => void, timingCapture?: GpuTimingCapture): boolean;
135
182
  //# sourceMappingURL=typed-frame-graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typed-frame-graph.d.ts","sourceRoot":"","sources":["../../src/record/typed-frame-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-frame-graph.d.ts","sourceRoot":"","sources":["../../src/record/typed-frame-graph.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import type { Buffer, RhiQueue } from '@forgeax/engine-rhi';
2
- import type { FogFrame } from '../extract/environment';
3
2
  import type { PointsLinesStyle } from '../points-lines/snapshot';
4
3
  import type { CameraSnapshot } from '../render-contract';
5
4
  import type { DirectionalLightSnapshot, ExtractedLights, SpotLightSnapshot } from '../render-system-extract';
@@ -47,5 +46,5 @@ export declare function writePointsLinesViewUbo(queue: RhiQueue, buffer: Buffer,
47
46
  *
48
47
  * @internal
49
48
  */
50
- export declare function writeViewUbo(queue: RhiQueue, viewUniformBuffer: Buffer, camera: CameraSnapshot, light: DirectionalLightSnapshot, lights: ExtractedLights, spotShadowSnapshots: readonly SpotLightSnapshot[], fogOrTemporalOrOffset?: FogFrame | TemporalView | LegacyTemporalView | number, temporal?: TemporalView, projectorSpotIndex?: number): void;
49
+ export declare function writeViewUbo(queue: RhiQueue, viewUniformBuffer: Buffer, camera: CameraSnapshot, light: DirectionalLightSnapshot, lights: ExtractedLights, spotShadowSnapshots: readonly SpotLightSnapshot[], temporalOrOffset?: TemporalView | LegacyTemporalView | number, projectorSpotIndex?: number): void;
51
50
  //# sourceMappingURL=view-ubo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-ubo.d.ts","sourceRoot":"","sources":["../../src/record/view-ubo.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,4BAA4B,OAAO,CAAC;AACjD,eAAO,MAAM,6BAA6B,QACoB,CAAC;AAC/D,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,2BAA2B,QAAmC,CAAC;AAC5E,eAAO,MAAM,+BAA+B,QAAkC,CAAC;AAC/E,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,wBAAwB,QAC4D,CAAC;AAElG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzE;AAyBD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EACzB,KAAK,CAAC,EAAE,gBAAgB,EACxB,UAAU,SAAI,GACb,IAAI,CA8BN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,QAAQ,EACf,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,wBAAwB,EAC/B,MAAM,EAAE,eAAe,EACvB,mBAAmB,EAAE,SAAS,iBAAiB,EAAE,EACjD,qBAAqB,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,kBAAkB,GAAG,MAAM,EAC7E,QAAQ,CAAC,EAAE,YAAY,EACvB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,IAAI,CA+JN"}
1
+ {"version":3,"file":"view-ubo.d.ts","sourceRoot":"","sources":["../../src/record/view-ubo.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,4BAA4B,OAAO,CAAC;AACjD,eAAO,MAAM,6BAA6B,QACoB,CAAC;AAC/D,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAC7C,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,2BAA2B,QAAmC,CAAC;AAC5E,eAAO,MAAM,+BAA+B,QAAkC,CAAC;AAC/E,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,wBAAwB,QAC4D,CAAC;AAElG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzE;AAyBD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EACzB,KAAK,CAAC,EAAE,gBAAgB,EACxB,UAAU,SAAI,GACb,IAAI,CA8BN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,QAAQ,EACf,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,wBAAwB,EAC/B,MAAM,EAAE,eAAe,EACvB,mBAAmB,EAAE,SAAS,iBAAiB,EAAE,EACjD,gBAAgB,CAAC,EAAE,YAAY,GAAG,kBAAkB,GAAG,MAAM,EAC7D,kBAAkB,CAAC,EAAE,MAAM,GAC1B,IAAI,CAuJN"}
@@ -0,0 +1,65 @@
1
+ import type { World } from '@forgeax/engine-ecs';
2
+ import { type RenderPipeline, type Result, RhiError } from '@forgeax/engine-rhi';
3
+ import type { Handle } from '@forgeax/engine-types';
4
+ import type { EnvironmentLifecycle } from '../environment/lifecycle';
5
+ import { type RenderFeaturePreparedGraphicsResolverInput } from '../features/host';
6
+ import type { RenderFeatureGpuWorkOwner } from '../features/prepared-gpu-work';
7
+ import { type PostProcessShaderEntry } from '../fullscreen-post-process-pass';
8
+ import { GpuDrivenProduction } from '../gpu-driven/production-raster';
9
+ import type { PipelineBuilderShaderModuleFactory } from '../pipeline-builder';
10
+ import type { PreparedGraphicsResolver } from '../prepare/prepared-graphics-resolver';
11
+ import type { RenderFrameState, ValidatedRenderable } from '../record/frame-snapshot';
12
+ import type { PointsLinesRecordOwner, RenderSystemInternals } from '../record/render-context';
13
+ import type { RecoveryGraphCandidate, RecoveryGraphCandidatePreparation, RecoveryGraphCandidateRuntime, RecoveryGraphSetupSubmission, RecoveryPointsLinesCandidate } from '../render-system';
14
+ import type { ExtractedFrame, MaterialSnapshot } from '../render-system-extract';
15
+ import type { PersistentRenderScene } from '../scene/render-scene';
16
+ export interface PreparedResolverCaches {
17
+ readonly preparedPipelineIds: WeakMap<object, string>;
18
+ readonly preparedMaterialPipelineShaders: WeakMap<object, string>;
19
+ readonly preparedGroup0Pipelines: WeakSet<object>;
20
+ readonly preparedViewOnlyPipelines: WeakSet<object>;
21
+ readonly preparedRenderMaterialPipelines: WeakSet<object>;
22
+ readonly preparedAssetHandles: WeakMap<World, Map<string, number>>;
23
+ }
24
+ export interface RecoveryFrameSeed {
25
+ readonly frame: ExtractedFrame;
26
+ readonly worlds: readonly World[];
27
+ readonly cameraOwner: number;
28
+ readonly resourceOwner: number;
29
+ readonly width: number;
30
+ readonly height: number;
31
+ }
32
+ export interface RenderSystemRecoveryDependencies {
33
+ readonly frameState: RenderFrameState;
34
+ readonly internals: RenderSystemInternals;
35
+ readonly getEnvironmentLifecycle: () => EnvironmentLifecycle;
36
+ readonly getGpuDrivenProduction: () => GpuDrivenProduction;
37
+ readonly setGpuDrivenProduction: (production: GpuDrivenProduction) => void;
38
+ readonly disposeFeatureGpuWork: () => void;
39
+ readonly setFeatureGpuWork: (owner: RenderFeatureGpuWorkOwner) => void;
40
+ readonly getActiveFeaturePostProcessEntries: () => ReadonlyMap<string, PostProcessShaderEntry>;
41
+ readonly setActiveFeaturePostProcessEntries: (entries: ReadonlyMap<string, PostProcessShaderEntry>) => void;
42
+ readonly postProcessPipelineCache: Map<string, RenderPipeline>;
43
+ readonly clearPostProcessPipelineCache: (id: string) => void;
44
+ readonly clearPostProcessPipelineEntry: (id: string, entry: PostProcessShaderEntry) => void;
45
+ readonly invalidatePostProcessModule: (id: string) => void;
46
+ readonly persistentRenderScene: PersistentRenderScene;
47
+ readonly gpuDrivenShaderFactory: PipelineBuilderShaderModuleFactory;
48
+ readonly createFeatureGpuWorkOwner: (runtime: RenderSystemInternals) => RenderFeatureGpuWorkOwner;
49
+ readonly pointsLinesOwner: PointsLinesRecordOwner & {
50
+ prepareRecoveryCandidate: (entries: readonly ValidatedRenderable[], clustered: boolean, runtime: RenderSystemInternals) => RecoveryPointsLinesCandidate | undefined;
51
+ };
52
+ readonly createPreparedResolverFactory: (runtime: RenderSystemInternals, gpuWork: RenderFeatureGpuWorkOwner, worlds: readonly World[], caches: PreparedResolverCaches) => (input: RenderFeaturePreparedGraphicsResolverInput) => PreparedGraphicsResolver;
53
+ readonly createPreparedResolverCaches: () => PreparedResolverCaches;
54
+ }
55
+ export interface RenderSystemRecoveryOwner {
56
+ setLastSuccessfulFrameSeed(seed: RecoveryFrameSeed): void;
57
+ prepareRecoveryGraphCandidate(runtime: RecoveryGraphCandidateRuntime): RecoveryGraphCandidatePreparation;
58
+ submitCandidateSetup(candidate: RecoveryGraphCandidate, isValid: () => boolean): Result<RecoveryGraphSetupSubmission, RhiError>;
59
+ publishRecoveryGraphCandidate(candidate: RecoveryGraphCandidate): void;
60
+ discardRecoveryGraphCandidate(candidate: RecoveryGraphCandidate): void;
61
+ }
62
+ export declare function materialTextureHandles(material: MaterialSnapshot): readonly Handle<'TextureAsset', 'shared'>[];
63
+ export declare function materialSamplerHandles(material: MaterialSnapshot): readonly Handle<'SamplerAsset', 'shared'>[];
64
+ export declare function createRenderSystemRecovery(deps: RenderSystemRecoveryDependencies): RenderSystemRecoveryOwner;
65
+ //# sourceMappingURL=render-system-candidate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-system-candidate.d.ts","sourceRoot":"","sources":["../../src/recovery/render-system-candidate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { ReflectionFallbackFailureStage, ReflectionFallbackInspection, ReflectionFallbackReceipt } from '../inspection-types';
2
+ export interface ReflectionFallbackFailureInput {
3
+ readonly stage: ReflectionFallbackFailureStage;
4
+ readonly code: string;
5
+ readonly expected: string;
6
+ readonly detail?: Readonly<Record<string, unknown>>;
7
+ }
8
+ /** Projects producer state and the latest closed failure into detached facts. */
9
+ export declare function inspectReflectionFallback(receipt: ReflectionFallbackReceipt, failure?: ReflectionFallbackFailureInput): ReflectionFallbackInspection;
10
+ //# sourceMappingURL=inspection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspection.d.ts","sourceRoot":"","sources":["../../src/reflection/inspection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,4BAA4B,EAC5B,yBAAyB,EAE1B,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,8BAA8B,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACrD;AAqCD,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,yBAAyB,EAClC,OAAO,CAAC,EAAE,8BAA8B,GACvC,4BAA4B,CAa9B"}
@@ -66,10 +66,59 @@ export interface SkylightSelection {
66
66
  readonly kind: 'skylight';
67
67
  }
68
68
  export type ReflectionProbeSelectionResult = ReflectionProbeSelection | SkylightSelection;
69
+ export type ReflectionFallbackSource = 'probe' | 'skylight' | 'neutral';
70
+ export interface ReflectionFallbackProjectionInput {
71
+ /** Stable renderable identity used to join the main-pass projection. */
72
+ readonly renderableKey?: string;
73
+ /** Stable producer source identity; never a live GPU handle. */
74
+ readonly sourceKey?: string;
75
+ readonly source: ReflectionFallbackSource;
76
+ readonly coverage: number;
77
+ readonly extent?: readonly [number, number, number];
78
+ readonly linearHdr: readonly [number, number, number, number];
79
+ readonly brdfSignature: string;
80
+ }
81
+ export interface ReflectionFallbackProjection extends ReflectionFallbackProjectionInput {
82
+ readonly source: ReflectionFallbackSource;
83
+ }
84
+ export type ReflectionFallbackMismatchKind = 'source' | 'coverage' | 'extent' | 'brdf';
85
+ export interface ReflectionFallbackMismatch {
86
+ readonly code: 'reflection-fallback-source-mismatch' | 'reflection-fallback-coverage-mismatch' | 'reflection-fallback-extent-mismatch' | 'reflection-fallback-brdf-mismatch';
87
+ readonly expected: string;
88
+ readonly actual: string;
89
+ }
90
+ export interface ReflectionFallbackInputInvalid {
91
+ readonly code: 'reflection-fallback-input-invalid';
92
+ readonly field: string;
93
+ readonly expected: string;
94
+ }
95
+ export type ReflectionFallbackProjectionResult = {
96
+ readonly ok: true;
97
+ readonly value: ReflectionFallbackProjection;
98
+ } | {
99
+ readonly ok: false;
100
+ readonly error: ReflectionFallbackInputInvalid;
101
+ };
102
+ export declare function resolveReflectionFallbackSource(selection: ReflectionProbeSelectionResult, probeReady: boolean, skylightAvailable?: boolean): ReflectionFallbackSource;
103
+ export declare function reflectionFallbackCoverage(source: ReflectionFallbackSource, fact: ReflectionProbeFact | undefined, selection: ReflectionProbeSelectionResult): number;
104
+ export declare function reflectionFallbackSourceKey(source: ReflectionFallbackSource, selection: ReflectionProbeSelectionResult, skylight?: {
105
+ readonly entityHandle: number;
106
+ readonly equirectHandle: number;
107
+ }): string;
108
+ export declare function reflectionFallbackProjectionSignature(input: ReflectionFallbackProjectionInput): string;
109
+ export declare function deriveReflectionFallbackProjection(input: ReflectionFallbackProjectionInput): ReflectionFallbackProjectionResult;
110
+ export declare function validateReflectionFallbackCompatibility(expected: ReflectionFallbackProjectionInput, actual: ReflectionFallbackProjectionInput): {
111
+ readonly ok: true;
112
+ } | {
113
+ readonly ok: false;
114
+ readonly error: ReflectionFallbackMismatch;
115
+ };
69
116
  export declare function selectReflectionProbe(facts: readonly ReflectionProbeFact[], primitiveCenter: readonly [number, number, number]): ReflectionProbeSelectionResult;
70
117
  export interface ReflectionProbePrimitive {
71
118
  readonly worldId: number;
72
119
  readonly entityKey: number;
120
+ /** Main-pass renderable key; world/entity is retained as the compatibility fallback. */
121
+ readonly renderableKey?: string;
73
122
  readonly center: readonly [number, number, number];
74
123
  }
75
124
  export interface ReflectionProbeProjectionSnapshot {