@forgeax/engine-render 0.1.33 → 0.1.35

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 (624) hide show
  1. package/README.md +1062 -127
  2. package/dist/assembly/backend-contract.d.ts +2 -0
  3. package/dist/assembly/backend-contract.d.ts.map +1 -1
  4. package/dist/assembly/barrel-distortion-inspection.d.ts +3 -0
  5. package/dist/assembly/barrel-distortion-inspection.d.ts.map +1 -0
  6. package/dist/assembly/canvas-draw-guard.d.ts +3 -0
  7. package/dist/assembly/canvas-draw-guard.d.ts.map +1 -0
  8. package/dist/assembly/cloud-shadow-entry.d.ts +4 -0
  9. package/dist/assembly/cloud-shadow-entry.d.ts.map +1 -0
  10. package/dist/assembly/device-feature-admission.d.ts +2 -2
  11. package/dist/assembly/dynamic-geometry-host.d.ts +4 -1
  12. package/dist/assembly/dynamic-geometry-host.d.ts.map +1 -1
  13. package/dist/assembly/dynamic-geometry-runtime.d.ts +1 -1
  14. package/dist/assembly/dynamic-geometry-runtime.d.ts.map +1 -1
  15. package/dist/assembly/factory.d.ts +1 -1
  16. package/dist/assembly/factory.d.ts.map +1 -1
  17. package/dist/assembly/host-contract.d.ts +6 -5
  18. package/dist/assembly/host-contract.d.ts.map +1 -1
  19. package/dist/assembly/material/assembly.d.ts.map +1 -1
  20. package/dist/assembly/material/pipeline-helpers.d.ts +5 -0
  21. package/dist/assembly/material/pipeline-helpers.d.ts.map +1 -1
  22. package/dist/assembly/material-shader-policy.d.ts +16 -2
  23. package/dist/assembly/material-shader-policy.d.ts.map +1 -1
  24. package/dist/assembly/material-shader-prewarm.d.ts.map +1 -1
  25. package/dist/assembly/recovery/device-loss-fanout.d.ts.map +1 -1
  26. package/dist/assembly/recovery/renderer-recover.d.ts +2 -0
  27. package/dist/assembly/recovery/renderer-recover.d.ts.map +1 -1
  28. package/dist/assembly/render-feature-post-processes.d.ts +6 -0
  29. package/dist/assembly/render-feature-post-processes.d.ts.map +1 -0
  30. package/dist/assembly/render-target-host.d.ts +5 -0
  31. package/dist/assembly/render-target-host.d.ts.map +1 -1
  32. package/dist/assembly/renderer-facade.d.ts.map +1 -1
  33. package/dist/assembly/renderer-feature-inspection.d.ts +1 -1
  34. package/dist/assembly/renderer-feature-inspection.d.ts.map +1 -1
  35. package/dist/assembly/renderer-frame-transaction.d.ts +12 -0
  36. package/dist/assembly/renderer-frame-transaction.d.ts.map +1 -1
  37. package/dist/assembly/renderer-inspection.d.ts +11 -0
  38. package/dist/assembly/renderer-inspection.d.ts.map +1 -1
  39. package/dist/assembly/webgpu-pbr-ready.d.ts +1 -0
  40. package/dist/assembly/webgpu-pbr-ready.d.ts.map +1 -1
  41. package/dist/assembly/webgpu-ready-per-pass.d.ts +39 -0
  42. package/dist/assembly/webgpu-ready-per-pass.d.ts.map +1 -0
  43. package/dist/assembly/webgpu-ready.d.ts +1 -1
  44. package/dist/assembly/webgpu-ready.d.ts.map +1 -1
  45. package/dist/assembly/webgpu-renderer-bootstrap.d.ts.map +1 -1
  46. package/dist/assembly/webgpu-renderer-observation-owner.d.ts +35 -0
  47. package/dist/assembly/webgpu-renderer-observation-owner.d.ts.map +1 -0
  48. package/dist/assembly/webgpu-renderer.d.ts +2 -1
  49. package/dist/assembly/webgpu-renderer.d.ts.map +1 -1
  50. package/dist/authoring.mjs +2 -4
  51. package/dist/authoring.mjs.map +1 -1
  52. package/dist/barrel-distortion.d.ts +47 -0
  53. package/dist/barrel-distortion.d.ts.map +1 -0
  54. package/dist/chunk-3XUBWRY2.mjs +1842 -0
  55. package/dist/chunk-3XUBWRY2.mjs.map +1 -0
  56. package/dist/{chunk-OO3DRYK7.mjs → chunk-G6HDNGY7.mjs} +2400 -1767
  57. package/dist/chunk-G6HDNGY7.mjs.map +1 -0
  58. package/dist/{chunk-ZDQWGQW7.mjs → chunk-LM5IE7GF.mjs} +4 -4
  59. package/dist/{chunk-ZDQWGQW7.mjs.map → chunk-LM5IE7GF.mjs.map} +1 -1
  60. package/dist/{chunk-VOZWDM3L.mjs → chunk-LNIUIKQ7.mjs} +1514 -498
  61. package/dist/chunk-LNIUIKQ7.mjs.map +1 -0
  62. package/dist/chunk-MXTWKZO4.mjs +3268 -0
  63. package/dist/chunk-MXTWKZO4.mjs.map +1 -0
  64. package/dist/chunk-MZ4C7EHF.mjs +6942 -0
  65. package/dist/chunk-MZ4C7EHF.mjs.map +1 -0
  66. package/dist/chunk-RIPAEGI6.mjs +48 -0
  67. package/dist/chunk-RIPAEGI6.mjs.map +1 -0
  68. package/dist/{chunk-LEAXOMYJ.mjs → chunk-SGPUJW3F.mjs} +117 -5
  69. package/dist/chunk-SGPUJW3F.mjs.map +1 -0
  70. package/dist/{chunk-PA5DRJNI.mjs → chunk-X2KA6WHM.mjs} +29 -4
  71. package/dist/chunk-X2KA6WHM.mjs.map +1 -0
  72. package/dist/{chunk-BLXGONR2.mjs → chunk-XSFB7XXQ.mjs} +51 -4
  73. package/dist/chunk-XSFB7XXQ.mjs.map +1 -0
  74. package/dist/cloud/density.d.ts +55 -0
  75. package/dist/cloud/density.d.ts.map +1 -0
  76. package/dist/cloud/extract.d.ts +25 -0
  77. package/dist/cloud/extract.d.ts.map +1 -0
  78. package/dist/cloud/feature.d.ts +57 -0
  79. package/dist/cloud/feature.d.ts.map +1 -0
  80. package/dist/cloud/frame-context.d.ts +8 -0
  81. package/dist/cloud/frame-context.d.ts.map +1 -0
  82. package/dist/cloud/inspection.d.ts +59 -0
  83. package/dist/cloud/inspection.d.ts.map +1 -0
  84. package/dist/cloud/optics.d.ts +56 -0
  85. package/dist/cloud/optics.d.ts.map +1 -0
  86. package/dist/cloud/parameters.d.ts +73 -0
  87. package/dist/cloud/parameters.d.ts.map +1 -0
  88. package/dist/cloud/resources.d.ts +60 -0
  89. package/dist/cloud/resources.d.ts.map +1 -0
  90. package/dist/cloud/shadow.d.ts +42 -0
  91. package/dist/cloud/shadow.d.ts.map +1 -0
  92. package/dist/cloud/temporal.d.ts +74 -0
  93. package/dist/cloud/temporal.d.ts.map +1 -0
  94. package/dist/components/barrel-distortion.d.ts +13 -0
  95. package/dist/components/barrel-distortion.d.ts.map +1 -0
  96. package/dist/components/cloud-layer.d.ts +29 -0
  97. package/dist/components/cloud-layer.d.ts.map +1 -0
  98. package/dist/components/index.d.ts +2 -0
  99. package/dist/components/index.d.ts.map +1 -1
  100. package/dist/components/instances.d.ts +20 -6
  101. package/dist/components/instances.d.ts.map +1 -1
  102. package/dist/construct-renderer.d.ts +1 -1
  103. package/dist/construct-renderer.d.ts.map +1 -1
  104. package/dist/construct-renderer.mjs +8406 -5785
  105. package/dist/construct-renderer.mjs.map +1 -1
  106. package/dist/device/gpu-residency.d.ts +19 -19
  107. package/dist/device/gpu-residency.d.ts.map +1 -1
  108. package/dist/dynamic-geometry.d.ts +5 -1
  109. package/dist/dynamic-geometry.d.ts.map +1 -1
  110. package/dist/errors/cloud.d.ts +59 -0
  111. package/dist/errors/cloud.d.ts.map +1 -0
  112. package/dist/errors/render.d.ts +20 -5
  113. package/dist/errors/render.d.ts.map +1 -1
  114. package/dist/examples/single-layer-medium-surface.d.ts +47 -0
  115. package/dist/examples/single-layer-medium-surface.d.ts.map +1 -0
  116. package/dist/extract/camera.d.ts.map +1 -1
  117. package/dist/extract/contracts.d.ts +5 -1
  118. package/dist/extract/contracts.d.ts.map +1 -1
  119. package/dist/extract/material-context.d.ts +7 -0
  120. package/dist/extract/material-context.d.ts.map +1 -0
  121. package/dist/features/barrel-distortion.d.ts +29 -0
  122. package/dist/features/barrel-distortion.d.ts.map +1 -0
  123. package/dist/features/error-reporting.d.ts +6 -2
  124. package/dist/features/error-reporting.d.ts.map +1 -1
  125. package/dist/features/host.d.ts +15 -0
  126. package/dist/features/host.d.ts.map +1 -1
  127. package/dist/features/plan.d.ts +10 -0
  128. package/dist/features/plan.d.ts.map +1 -1
  129. package/dist/features/render-graph-contribution.d.ts +5 -0
  130. package/dist/features/render-graph-contribution.d.ts.map +1 -1
  131. package/dist/features/render-graph-raster.d.ts +1 -0
  132. package/dist/features/render-graph-raster.d.ts.map +1 -1
  133. package/dist/features/targets.d.ts +2 -0
  134. package/dist/features/targets.d.ts.map +1 -1
  135. package/dist/features/types.d.ts +48 -0
  136. package/dist/features/types.d.ts.map +1 -1
  137. package/dist/fullscreen-post-process-pass.d.ts +15 -7
  138. package/dist/fullscreen-post-process-pass.d.ts.map +1 -1
  139. package/dist/glyph-text-layout-system.d.ts +1 -1
  140. package/dist/glyph-text-layout-system.d.ts.map +1 -1
  141. package/dist/gpu-dirty-ranges.d.ts +11 -0
  142. package/dist/gpu-dirty-ranges.d.ts.map +1 -0
  143. package/dist/gpu-driven/batch-topology.d.ts +17 -0
  144. package/dist/gpu-driven/batch-topology.d.ts.map +1 -1
  145. package/dist/gpu-driven/material-artifacts.d.ts +6 -0
  146. package/dist/gpu-driven/material-artifacts.d.ts.map +1 -1
  147. package/dist/gpu-driven/prepared-draw.d.ts.map +1 -1
  148. package/dist/gpu-driven/production-raster-material.d.ts +178 -0
  149. package/dist/gpu-driven/production-raster-material.d.ts.map +1 -0
  150. package/dist/gpu-driven/production-raster.d.ts +47 -3
  151. package/dist/gpu-driven/production-raster.d.ts.map +1 -1
  152. package/dist/gpu-driven/resource-allocation.d.ts +31 -0
  153. package/dist/gpu-driven/resource-allocation.d.ts.map +1 -0
  154. package/dist/gpu-driven/shadow-ownership.d.ts +14 -0
  155. package/dist/gpu-driven/shadow-ownership.d.ts.map +1 -0
  156. package/dist/gpu-driven/view-gpu.d.ts +26 -2
  157. package/dist/gpu-driven/view-gpu.d.ts.map +1 -1
  158. package/dist/gpu-scene.d.ts +5 -0
  159. package/dist/gpu-scene.d.ts.map +1 -1
  160. package/dist/hdrp-buffers.d.ts +2 -2
  161. package/dist/hdrp-buffers.d.ts.map +1 -1
  162. package/dist/ibl/frame-resources.d.ts.map +1 -1
  163. package/dist/ibl/skylight-bind-group.d.ts +14 -5
  164. package/dist/ibl/skylight-bind-group.d.ts.map +1 -1
  165. package/dist/index.d.ts +30 -7
  166. package/dist/index.d.ts.map +1 -1
  167. package/dist/index.mjs +780 -9
  168. package/dist/index.mjs.map +1 -1
  169. package/dist/inspection-types.d.ts +135 -1
  170. package/dist/inspection-types.d.ts.map +1 -1
  171. package/dist/instance-buffer-cache.d.ts +4 -4
  172. package/dist/instance-buffer-cache.d.ts.map +1 -1
  173. package/dist/instances.d.ts +47 -100
  174. package/dist/instances.d.ts.map +1 -1
  175. package/dist/internal.mjs +7 -8
  176. package/dist/internal.mjs.map +1 -1
  177. package/dist/pbr-pipeline.d.ts +22 -4
  178. package/dist/pbr-pipeline.d.ts.map +1 -1
  179. package/dist/pipeline/single-layer-medium-passes.d.ts +73 -0
  180. package/dist/pipeline/single-layer-medium-passes.d.ts.map +1 -0
  181. package/dist/pipeline/standard-forward-lane.d.ts.map +1 -1
  182. package/dist/pipeline/standard-output/graph.d.ts.map +1 -1
  183. package/dist/pipeline/standard-output/lut-gpu.d.ts +2 -2
  184. package/dist/pipeline/standard-output/lut-gpu.d.ts.map +1 -1
  185. package/dist/pipeline/standard-output/resources.d.ts +2 -2
  186. package/dist/pipeline/standard-output/resources.d.ts.map +1 -1
  187. package/dist/pipeline/standard-output/types.d.ts +4 -2
  188. package/dist/pipeline/standard-output/types.d.ts.map +1 -1
  189. package/dist/pipeline/standard-pipeline.d.ts.map +1 -1
  190. package/dist/pipeline/standard-post.d.ts.map +1 -1
  191. package/dist/pipeline-builder.d.ts +1 -1
  192. package/dist/pipeline-builder.d.ts.map +1 -1
  193. package/dist/plugin.d.ts.map +1 -1
  194. package/dist/prepare/prepared-graphics-resolver.d.ts +2 -0
  195. package/dist/prepare/prepared-graphics-resolver.d.ts.map +1 -1
  196. package/dist/publication/contract.d.ts +77 -0
  197. package/dist/publication/contract.d.ts.map +1 -0
  198. package/dist/publication/dependencies.d.ts +7 -0
  199. package/dist/publication/dependencies.d.ts.map +1 -0
  200. package/dist/publication/prepare-geometry.d.ts +9 -0
  201. package/dist/publication/prepare-geometry.d.ts.map +1 -0
  202. package/dist/publication/programs.d.ts +5 -0
  203. package/dist/publication/programs.d.ts.map +1 -0
  204. package/dist/publication/publisher.d.ts +33 -0
  205. package/dist/publication/publisher.d.ts.map +1 -0
  206. package/dist/publication/receiver.d.ts +29 -0
  207. package/dist/publication/receiver.d.ts.map +1 -0
  208. package/dist/publication/resource-scope.d.ts +18 -0
  209. package/dist/publication/resource-scope.d.ts.map +1 -0
  210. package/dist/publication/targets.d.ts +33 -0
  211. package/dist/publication/targets.d.ts.map +1 -0
  212. package/dist/publication/video.d.ts +5 -0
  213. package/dist/publication/video.d.ts.map +1 -0
  214. package/dist/record/barrel-distortion-frame.d.ts +15 -0
  215. package/dist/record/barrel-distortion-frame.d.ts.map +1 -0
  216. package/dist/record/dynamic-geometry-consumption.d.ts +10 -2
  217. package/dist/record/dynamic-geometry-consumption.d.ts.map +1 -1
  218. package/dist/record/fold-buckets.d.ts +95 -0
  219. package/dist/record/fold-buckets.d.ts.map +1 -0
  220. package/dist/record/fold-instance-buffer.d.ts +6 -0
  221. package/dist/record/fold-instance-buffer.d.ts.map +1 -0
  222. package/dist/record/frame-lighting.d.ts +1 -0
  223. package/dist/record/frame-lighting.d.ts.map +1 -1
  224. package/dist/record/frame-snapshot.d.ts +43 -9
  225. package/dist/record/frame-snapshot.d.ts.map +1 -1
  226. package/dist/record/frame.d.ts +15 -65
  227. package/dist/record/frame.d.ts.map +1 -1
  228. package/dist/record/gpu-draw-receipts.d.ts +11 -0
  229. package/dist/record/gpu-draw-receipts.d.ts.map +1 -0
  230. package/dist/record/gpu-timing.d.ts +8 -0
  231. package/dist/record/gpu-timing.d.ts.map +1 -1
  232. package/dist/record/helpers.d.ts +2 -2
  233. package/dist/record/helpers.d.ts.map +1 -1
  234. package/dist/record/main-pass-geometry.d.ts +22 -6
  235. package/dist/record/main-pass-geometry.d.ts.map +1 -1
  236. package/dist/record/main-pass-material.d.ts +14 -10
  237. package/dist/record/main-pass-material.d.ts.map +1 -1
  238. package/dist/record/main-pass-sprite-draws.d.ts +3 -16
  239. package/dist/record/main-pass-sprite-draws.d.ts.map +1 -1
  240. package/dist/record/main-pass.d.ts +13 -2
  241. package/dist/record/main-pass.d.ts.map +1 -1
  242. package/dist/record/motion-blur-receipt.d.ts +11 -0
  243. package/dist/record/motion-blur-receipt.d.ts.map +1 -0
  244. package/dist/record/prepared-material-bindings.d.ts +3 -3
  245. package/dist/record/prepared-material-bindings.d.ts.map +1 -1
  246. package/dist/record/probe-blend-buffer.d.ts +16 -0
  247. package/dist/record/probe-blend-buffer.d.ts.map +1 -0
  248. package/dist/record/recovery-pipeline.d.ts.map +1 -1
  249. package/dist/record/render-context.d.ts +24 -5
  250. package/dist/record/render-context.d.ts.map +1 -1
  251. package/dist/record/shadow-pass.d.ts +2 -0
  252. package/dist/record/shadow-pass.d.ts.map +1 -1
  253. package/dist/record/skybox-post-pass.d.ts +1 -1
  254. package/dist/record/skybox-post-pass.d.ts.map +1 -1
  255. package/dist/record/sprite-instance-buffer.d.ts +31 -0
  256. package/dist/record/sprite-instance-buffer.d.ts.map +1 -0
  257. package/dist/record/target-capture-graph.d.ts +19 -0
  258. package/dist/record/target-capture-graph.d.ts.map +1 -0
  259. package/dist/record/typed-frame-graph.d.ts +24 -15
  260. package/dist/record/typed-frame-graph.d.ts.map +1 -1
  261. package/dist/record/view-ubo.d.ts +11 -3
  262. package/dist/record/view-ubo.d.ts.map +1 -1
  263. package/dist/record/volume-params.d.ts +9 -0
  264. package/dist/record/volume-params.d.ts.map +1 -0
  265. package/dist/recovery/render-system-candidate.d.ts +14 -4
  266. package/dist/recovery/render-system-candidate.d.ts.map +1 -1
  267. package/dist/reflection/record-owner.d.ts.map +1 -1
  268. package/dist/render-contract.d.ts +46 -5
  269. package/dist/render-contract.d.ts.map +1 -1
  270. package/dist/render-graph-primitives.d.ts.map +1 -1
  271. package/dist/render-pipeline.d.ts +103 -2
  272. package/dist/render-pipeline.d.ts.map +1 -1
  273. package/dist/render-system-extract-tail.d.ts +3 -2
  274. package/dist/render-system-extract-tail.d.ts.map +1 -1
  275. package/dist/render-system-extract.d.ts +18 -9
  276. package/dist/render-system-extract.d.ts.map +1 -1
  277. package/dist/render-system-presentation.d.ts +23 -0
  278. package/dist/render-system-presentation.d.ts.map +1 -0
  279. package/dist/render-system-producer-roots.d.ts +10 -0
  280. package/dist/render-system-producer-roots.d.ts.map +1 -0
  281. package/dist/render-system-projections.d.ts +3 -2
  282. package/dist/render-system-projections.d.ts.map +1 -1
  283. package/dist/render-system-residency.d.ts +12 -0
  284. package/dist/render-system-residency.d.ts.map +1 -0
  285. package/dist/render-system.d.ts +22 -21
  286. package/dist/render-system.d.ts.map +1 -1
  287. package/dist/scene/probe-blend.d.ts +27 -0
  288. package/dist/scene/probe-blend.d.ts.map +1 -1
  289. package/dist/scene/render-scene.d.ts +18 -7
  290. package/dist/scene/render-scene.d.ts.map +1 -1
  291. package/dist/scene/render-source.d.ts +42 -0
  292. package/dist/scene/render-source.d.ts.map +1 -0
  293. package/dist/scene/source-systems.d.ts +6 -0
  294. package/dist/scene/source-systems.d.ts.map +1 -0
  295. package/dist/ssao-buffers.d.ts +9 -0
  296. package/dist/ssao-buffers.d.ts.map +1 -1
  297. package/dist/surface/dynamic-input.d.ts +133 -0
  298. package/dist/surface/dynamic-input.d.ts.map +1 -0
  299. package/dist/surface/gpu-driven.d.ts +41 -0
  300. package/dist/surface/gpu-driven.d.ts.map +1 -0
  301. package/dist/surface/submission-observation.d.ts +136 -0
  302. package/dist/surface/submission-observation.d.ts.map +1 -0
  303. package/dist/systems/skin-palette-allocator.d.ts.map +1 -1
  304. package/dist/systems/skin-palette-types.d.ts +10 -0
  305. package/dist/systems/skin-palette-types.d.ts.map +1 -1
  306. package/dist/systems/transparent-dispatch.d.ts +2 -2
  307. package/dist/systems/transparent-dispatch.d.ts.map +1 -1
  308. package/dist/systems/transparent-sort-config.d.ts +2 -1
  309. package/dist/systems/transparent-sort-config.d.ts.map +1 -1
  310. package/dist/temporal/gpu.d.ts +13 -1
  311. package/dist/temporal/gpu.d.ts.map +1 -1
  312. package/dist/temporal/index.mjs +6 -7
  313. package/dist/temporal/inspection.d.ts.map +1 -1
  314. package/dist/temporal/standard-scene-data.d.ts.map +1 -1
  315. package/dist/temporal/target-coverage-attachment.d.ts.map +1 -1
  316. package/dist/transmission/single-layer-medium.d.ts +89 -0
  317. package/dist/transmission/single-layer-medium.d.ts.map +1 -0
  318. package/dist/typed-render-graph-primitives.d.ts +14 -2
  319. package/dist/typed-render-graph-primitives.d.ts.map +1 -1
  320. package/dist/volume/component.d.ts +9 -4
  321. package/dist/volume/component.d.ts.map +1 -1
  322. package/dist/volume/extract.d.ts +1 -1
  323. package/dist/volume/extract.d.ts.map +1 -1
  324. package/dist/volume/inspection.d.ts +2 -0
  325. package/dist/volume/inspection.d.ts.map +1 -1
  326. package/dist/volume/passes.d.ts +4 -1
  327. package/dist/volume/passes.d.ts.map +1 -1
  328. package/dist/volume/resources.d.ts.map +1 -1
  329. package/package.json +22 -21
  330. package/src/__tests__/atmosphere-daylight.dawn.test.ts +72 -0
  331. package/src/__tests__/auto-exposure-transaction.integration.test.ts +4 -9
  332. package/src/__tests__/barrel-distortion-lkg.integration.test.ts +353 -0
  333. package/src/__tests__/barrel-distortion.dawn.test.ts +41 -0
  334. package/src/__tests__/barrel-distortion.unit.test.ts +364 -0
  335. package/src/__tests__/construct-renderer-identity.unit.test.ts +49 -0
  336. package/src/__tests__/detached-recovery-graph.unit.test.ts +277 -0
  337. package/src/__tests__/device-feature-admission.unit.test.ts +3 -2
  338. package/src/__tests__/device-loss-fanout.unit.test.ts +36 -1
  339. package/src/__tests__/docs-gate-green.unit.test.ts +112 -1
  340. package/src/__tests__/factory-contract.integration.test.ts +295 -45
  341. package/src/__tests__/feature-depth-input.dawn.test.ts +129 -2
  342. package/src/__tests__/fullscreen-feature-plan.unit.test.ts +14 -3
  343. package/src/__tests__/gpu-dirty-ranges.unit.test.ts +22 -0
  344. package/src/__tests__/gpu-driven-baseline.characterization.test.ts +16 -3
  345. package/src/__tests__/gpu-driven-batch-topology-pbr.unit.test.ts +12 -0
  346. package/src/__tests__/gpu-driven-material-artifacts.unit.test.ts +143 -0
  347. package/src/__tests__/gpu-driven-pbr.dawn.test.ts +5 -6
  348. package/src/__tests__/gpu-driven-production.integration.test.ts +482 -3
  349. package/src/__tests__/gpu-driven-shadow-views.dawn.test.ts +6 -5
  350. package/src/__tests__/gpu-driven-view-gpu-evidence.ts +94 -6
  351. package/src/__tests__/gpu-driven-view-graph.integration.test.ts +18 -2
  352. package/src/__tests__/gpu-driven-view.browser.test.ts +5 -8
  353. package/src/__tests__/gpu-driven-view.dawn.test.ts +6 -2
  354. package/src/__tests__/gpu-driven-view.unit.test.ts +1 -1
  355. package/src/__tests__/gpu-pass-timing-lifecycle.integration.test.ts +1 -0
  356. package/src/__tests__/gpu-pass-timing.browser.test.ts +6 -4
  357. package/src/__tests__/gpu-pass-timing.rhi-null.unit.test.ts +1 -0
  358. package/src/__tests__/gpu-scene.unit.test.ts +119 -9
  359. package/src/__tests__/instance-allocation-failure.unit.test.ts +57 -0
  360. package/src/__tests__/instances-culling.integration.test.ts +10 -36
  361. package/src/__tests__/instances-store.unit.test.ts +97 -305
  362. package/src/__tests__/instances-world-ownership.integration.test.ts +62 -0
  363. package/src/__tests__/ktx2-basis-gpu-consumer.dawn.test.ts +4 -1
  364. package/src/__tests__/main-pass-material-medium-selection.unit.test.ts +145 -0
  365. package/src/__tests__/material-shader-prewarm.unit.test.ts +59 -0
  366. package/src/__tests__/material-snapshot-mutation.integration.test.ts +39 -1
  367. package/src/__tests__/materials-standard-contract.unit.test.ts +0 -1
  368. package/src/__tests__/morph-culling-reentry.dawn.test.ts +5 -5
  369. package/src/__tests__/morph-visual-evidence.integration.test.ts +8 -7
  370. package/src/__tests__/motion-blur-compute.dawn.test.ts +13 -7
  371. package/src/__tests__/motion-blur.pixel.integration.test.ts +2 -2
  372. package/src/__tests__/nineslice-handle-surface.unit.test.ts +4 -4
  373. package/src/__tests__/pbr-view-layout.unit.test.ts +9 -0
  374. package/src/__tests__/physical-clearcoat.integration.test.ts +66 -8
  375. package/src/__tests__/physical-material-budget.unit.test.ts +40 -0
  376. package/src/__tests__/prepared-graphics-capability.unit.test.ts +66 -2
  377. package/src/__tests__/probe-bindings.unit.test.ts +582 -1
  378. package/src/__tests__/probe-scene-dirty.integration.test.ts +28 -1
  379. package/src/__tests__/receipt-observation-retirement.unit.test.ts +65 -0
  380. package/src/__tests__/recovery-candidate-prepare.contract.test.ts +69 -0
  381. package/src/__tests__/render-error-code-owner.test-d.ts +8 -0
  382. package/src/__tests__/render-feature-diagnostics.unit.test.ts +15 -2
  383. package/src/__tests__/render-feature-error-reporting.unit.test.ts +21 -1
  384. package/src/__tests__/render-feature-prepared-diagnostics.unit.test.ts +10 -1
  385. package/src/__tests__/render-feature-retry.unit.test.ts +12 -1
  386. package/src/__tests__/render-scene-mixed-updates.integration.test.ts +145 -19
  387. package/src/__tests__/render-scene-projection.unit.test.ts +36 -11
  388. package/src/__tests__/render-scene-temporal-retry.unit.test.ts +20 -20
  389. package/src/__tests__/render-target-probe-soak.perf.test.ts +2 -2
  390. package/src/__tests__/render-temporal-environment-consumer.browser.test.ts +3 -3
  391. package/src/__tests__/render-temporal-environment-consumer.dawn.test.ts +5 -2
  392. package/src/__tests__/renderer-factory-material-contract.unit.test.ts +42 -8
  393. package/src/__tests__/renderer-frame-generation-fence.integration.test.ts +16 -0
  394. package/src/__tests__/renderer-frame-transaction.integration.test.ts +26 -10
  395. package/src/__tests__/resource-allocation.unit.test.ts +123 -0
  396. package/src/__tests__/single-layer-medium-passes.unit.test.ts +275 -0
  397. package/src/__tests__/skin-motion-regression.unit.test.ts +70 -1
  398. package/src/__tests__/skin-palette-recycling.dawn.test.ts +97 -0
  399. package/src/__tests__/skinned-shadow-caster.test.ts +15 -0
  400. package/src/__tests__/ssr-carrier-public-contract.unit.test.ts +21 -0
  401. package/src/__tests__/ssr-gpu-dispatch.browser.test.ts +4 -4
  402. package/src/__tests__/ssr-gpu-dispatch.dawn.test.ts +2 -2
  403. package/src/__tests__/ssr-gpu-dispatch.ts +1 -1
  404. package/src/__tests__/ssr-receiver-coverage.dawn.test.ts +6 -2
  405. package/src/__tests__/standard-output-chain-contract.unit.test.ts +28 -0
  406. package/src/__tests__/standard-pbr-artifact-assembly.unit.test.ts +46 -1
  407. package/src/__tests__/standard-pipeline.integration.test.ts +182 -1
  408. package/src/__tests__/surface-dynamic-buffer-lifecycle.unit.test.ts +506 -0
  409. package/src/__tests__/surface-submission-observation.unit.test.ts +812 -0
  410. package/src/__tests__/temporal-history-lifecycle.unit.test.ts +32 -0
  411. package/src/__tests__/temporal-performance.integration.test.ts +3 -3
  412. package/src/__tests__/visibility-instances.integration.test.ts +7 -19
  413. package/src/__tests__/visibility-producer-matrix.integration.test.ts +9 -20
  414. package/src/__tests__/volume-optics-oracle.unit.test.ts +4 -2
  415. package/src/__tests__/volumetric-fog-budget-recovery.integration.test.ts +30 -20
  416. package/src/__tests__/volumetric-fog-errors.unit.test.ts +4 -3
  417. package/src/__tests__/volumetric-fog-multiple.unit.test.ts +55 -0
  418. package/src/__tests__/volumetric-fog-spot-frame-optics.integration.test.ts +1 -1
  419. package/src/__tests__/volumetric-fog-stage-readback.dawn.test.ts +113 -9
  420. package/src/__tests__/volumetric-fog-topology.unit.test.ts +5 -3
  421. package/src/assembly/backend-contract.ts +30 -0
  422. package/src/assembly/barrel-distortion-inspection.ts +22 -0
  423. package/src/assembly/canvas-draw-guard.ts +11 -0
  424. package/src/assembly/cloud-shadow-entry.ts +22 -0
  425. package/src/assembly/device-feature-admission.ts +2 -2
  426. package/src/assembly/dynamic-geometry-host.ts +65 -37
  427. package/src/assembly/dynamic-geometry-runtime.ts +7 -1
  428. package/src/assembly/factory.ts +2 -30
  429. package/src/assembly/host-contract.ts +8 -5
  430. package/src/assembly/material/assembly.ts +25 -13
  431. package/src/assembly/material/pipeline-helpers.ts +53 -12
  432. package/src/assembly/material-shader-policy.ts +55 -0
  433. package/src/assembly/material-shader-prewarm.ts +21 -10
  434. package/src/assembly/recovery/device-loss-fanout.ts +13 -0
  435. package/src/assembly/recovery/renderer-recover.ts +50 -18
  436. package/src/assembly/render-feature-post-processes.ts +54 -0
  437. package/src/assembly/render-target-host.ts +57 -47
  438. package/src/assembly/renderer-facade.ts +7 -2
  439. package/src/assembly/renderer-feature-inspection.ts +8 -2
  440. package/src/assembly/renderer-frame-transaction.ts +23 -0
  441. package/src/assembly/renderer-inspection.ts +28 -0
  442. package/src/assembly/skin-palette-owner.ts +1 -1
  443. package/src/assembly/temporal-post-process-prewarm.ts +3 -3
  444. package/src/assembly/webgpu-pbr-ready.ts +9 -1
  445. package/src/assembly/webgpu-ready-per-pass.ts +104 -0
  446. package/src/assembly/webgpu-ready.ts +116 -62
  447. package/src/assembly/webgpu-renderer-bootstrap.ts +0 -12
  448. package/src/assembly/webgpu-renderer-observation-owner.ts +222 -0
  449. package/src/assembly/webgpu-renderer.ts +303 -313
  450. package/src/assembly/webgpu-vertex-layouts.ts +1 -1
  451. package/src/barrel-distortion.ts +247 -0
  452. package/src/cloud/__tests__/cloud-density-parity.dawn.test.ts +173 -0
  453. package/src/cloud/__tests__/cloud-layer-framebuffer-y.dawn.test.ts +265 -0
  454. package/src/cloud/__tests__/cloud-layer.browser.test.ts +432 -0
  455. package/src/cloud/__tests__/cloud-layer.unit.test.ts +634 -0
  456. package/src/cloud/density.ts +600 -0
  457. package/src/cloud/extract.ts +110 -0
  458. package/src/cloud/feature.ts +1810 -0
  459. package/src/cloud/frame-context.ts +42 -0
  460. package/src/cloud/inspection.ts +130 -0
  461. package/src/cloud/optics.ts +285 -0
  462. package/src/cloud/parameters.ts +255 -0
  463. package/src/cloud/resources.ts +122 -0
  464. package/src/cloud/shadow.ts +167 -0
  465. package/src/cloud/temporal.ts +226 -0
  466. package/src/components/barrel-distortion.ts +46 -0
  467. package/src/components/cloud-layer.ts +47 -0
  468. package/src/components/index.ts +2 -0
  469. package/src/components/instances.ts +18 -45
  470. package/src/components/sprite-instances.ts +1 -1
  471. package/src/construct-renderer.ts +1 -1
  472. package/src/device/gpu-residency.ts +26 -25
  473. package/src/dynamic-geometry.ts +12 -1
  474. package/src/errors/cloud.ts +103 -0
  475. package/src/errors/render.ts +47 -8
  476. package/src/examples/single-layer-medium-surface.ts +59 -0
  477. package/src/extract/camera.ts +15 -1
  478. package/src/extract/contracts.ts +5 -0
  479. package/src/extract/material-context.ts +21 -0
  480. package/src/features/barrel-distortion.ts +172 -0
  481. package/src/features/error-reporting.ts +26 -6
  482. package/src/features/host.ts +128 -19
  483. package/src/features/plan.ts +10 -0
  484. package/src/features/render-graph-contribution.ts +9 -0
  485. package/src/features/render-graph-raster.ts +45 -3
  486. package/src/features/targets.ts +66 -0
  487. package/src/features/types.ts +51 -0
  488. package/src/fullscreen-post-process-pass.ts +41 -9
  489. package/src/glyph-text-layout-system.ts +2 -2
  490. package/src/gpu-dirty-ranges.ts +48 -0
  491. package/src/gpu-driven/batch-topology.ts +53 -0
  492. package/src/gpu-driven/material-artifacts.ts +33 -25
  493. package/src/gpu-driven/prepared-draw.ts +12 -4
  494. package/src/gpu-driven/production-raster-material.ts +1894 -0
  495. package/src/gpu-driven/production-raster.ts +825 -784
  496. package/src/gpu-driven/resource-allocation.ts +142 -0
  497. package/src/gpu-driven/shadow-ownership.ts +71 -0
  498. package/src/gpu-driven/view-gpu.ts +164 -10
  499. package/src/gpu-scene.ts +75 -84
  500. package/src/hdrp-buffers.ts +4 -3
  501. package/src/ibl/frame-resources.ts +0 -1
  502. package/src/ibl/skylight-bind-group.ts +62 -32
  503. package/src/index.ts +205 -9
  504. package/src/inspection-types.ts +162 -0
  505. package/src/instance-buffer-cache.ts +4 -4
  506. package/src/instances.ts +152 -569
  507. package/src/pbr-pipeline.ts +230 -30
  508. package/src/pipeline/single-layer-medium-passes.ts +267 -0
  509. package/src/pipeline/standard-forward-lane.ts +313 -57
  510. package/src/pipeline/standard-output/graph.ts +8 -2
  511. package/src/pipeline/standard-output/lut-gpu.ts +3 -3
  512. package/src/pipeline/standard-output/resources.ts +2 -2
  513. package/src/pipeline/standard-output/types.ts +12 -1
  514. package/src/pipeline/standard-pipeline.ts +291 -18
  515. package/src/pipeline/standard-post.ts +90 -24
  516. package/src/pipeline-builder.ts +1 -1
  517. package/src/plugin.ts +4 -0
  518. package/src/points-lines/__tests__/points-lines.bench.ts +17 -8
  519. package/src/prepare/prepared-graphics-resolver.ts +2 -0
  520. package/src/publication/__tests__/derived-geometry.integration.test.ts +177 -0
  521. package/src/publication/__tests__/features.integration.test.ts +122 -0
  522. package/src/publication/__tests__/programs.unit.test.ts +25 -0
  523. package/src/publication/__tests__/publication.integration.test.ts +370 -0
  524. package/src/publication/__tests__/targets.integration.test.ts +120 -0
  525. package/src/publication/__tests__/video.browser.test.ts +50 -0
  526. package/src/publication/contract.ts +104 -0
  527. package/src/publication/dependencies.ts +54 -0
  528. package/src/publication/prepare-geometry.ts +94 -0
  529. package/src/publication/programs.ts +45 -0
  530. package/src/publication/publisher.ts +618 -0
  531. package/src/publication/receiver.ts +297 -0
  532. package/src/publication/resource-scope.ts +31 -0
  533. package/src/publication/targets.ts +182 -0
  534. package/src/publication/video.ts +33 -0
  535. package/src/record/__tests__/main-pass-geometry.unit.test.ts +30 -0
  536. package/src/record/__tests__/material-bg-cache.unit.test.ts +15 -1
  537. package/src/record/__tests__/sprite-material-abi.unit.test.ts +9 -11
  538. package/src/record/__tests__/temporal-payload.unit.test.ts +1 -1
  539. package/src/record/__tests__/transparent-group2-selection.unit.test.ts +11 -0
  540. package/src/record/__tests__/typed-frame-graph-plan.unit.test.ts +1 -0
  541. package/src/record/__tests__/video-texture-view.unit.test.ts +9 -9
  542. package/src/record/__tests__/view-ubo-layout.unit.test.ts +4 -3
  543. package/src/record/barrel-distortion-frame.ts +110 -0
  544. package/src/record/dynamic-geometry-consumption.ts +39 -9
  545. package/src/record/fold-buckets.ts +855 -0
  546. package/src/record/fold-instance-buffer.ts +51 -0
  547. package/src/record/frame-lighting.ts +36 -2
  548. package/src/record/frame-snapshot.ts +45 -9
  549. package/src/record/frame.ts +258 -1105
  550. package/src/record/gpu-draw-receipts.ts +38 -0
  551. package/src/record/gpu-timing.ts +48 -5
  552. package/src/record/helpers.ts +2 -2
  553. package/src/record/main-pass-geometry.ts +272 -84
  554. package/src/record/main-pass-material.ts +102 -36
  555. package/src/record/main-pass-sprite-draws.ts +13 -217
  556. package/src/record/main-pass.ts +164 -27
  557. package/src/record/motion-blur-receipt.ts +91 -0
  558. package/src/record/prepared-material-bindings.ts +11 -6
  559. package/src/record/probe-blend-buffer.ts +180 -0
  560. package/src/record/recovery-pipeline.ts +35 -3
  561. package/src/record/render-context.ts +41 -5
  562. package/src/record/shadow-pass.ts +30 -4
  563. package/src/record/skybox-post-pass.ts +28 -4
  564. package/src/record/sprite-instance-buffer.ts +155 -0
  565. package/src/record/target-capture-graph.ts +258 -0
  566. package/src/record/typed-frame-graph.ts +776 -340
  567. package/src/record/view-ubo.ts +27 -4
  568. package/src/record/volume-params.ts +225 -0
  569. package/src/recovery/render-system-candidate.ts +243 -50
  570. package/src/reflection/record-owner.ts +7 -3
  571. package/src/render-contract.ts +54 -5
  572. package/src/render-graph-primitives.ts +7 -1
  573. package/src/render-pipeline.ts +130 -0
  574. package/src/render-system-extract-tail.ts +90 -78
  575. package/src/render-system-extract.ts +76 -76
  576. package/src/render-system-presentation.ts +56 -0
  577. package/src/render-system-producer-roots.ts +96 -0
  578. package/src/render-system-projections.ts +3 -2
  579. package/src/render-system-residency.ts +159 -0
  580. package/src/render-system.ts +421 -408
  581. package/src/scene/probe-blend.ts +96 -4
  582. package/src/scene/render-scene.ts +416 -337
  583. package/src/scene/render-source.ts +90 -0
  584. package/src/scene/source-systems.ts +33 -0
  585. package/src/ssao-buffers.ts +95 -2
  586. package/src/surface/__tests__/dynamic-input.unit.test.ts +374 -0
  587. package/src/surface/__tests__/gpu-driven.unit.test.ts +87 -0
  588. package/src/surface/dynamic-input.ts +658 -0
  589. package/src/surface/gpu-driven.ts +147 -0
  590. package/src/surface/submission-observation.ts +517 -0
  591. package/src/systems/skin-palette-allocator.ts +5 -1
  592. package/src/systems/skin-palette-types.ts +11 -0
  593. package/src/systems/transparent-dispatch.ts +2 -2
  594. package/src/systems/transparent-sort-config.ts +3 -1
  595. package/src/temporal/gpu.ts +101 -17
  596. package/src/temporal/inspection.ts +7 -1
  597. package/src/temporal/standard-scene-data.ts +5 -0
  598. package/src/temporal/target-coverage-attachment.ts +4 -0
  599. package/src/transmission/__tests__/single-layer-medium.unit.test.ts +149 -0
  600. package/src/transmission/__tests__/standard-transmission.dawn.test.ts +12 -11
  601. package/src/transmission/single-layer-medium.ts +322 -0
  602. package/src/typed-render-graph-primitives.ts +70 -2
  603. package/src/volume/component.ts +10 -9
  604. package/src/volume/extract.ts +11 -5
  605. package/src/volume/inspection.ts +3 -0
  606. package/src/volume/passes.ts +87 -4
  607. package/src/volume/resources.ts +2 -1
  608. package/dist/chunk-3RTCJTH4.mjs +0 -1610
  609. package/dist/chunk-3RTCJTH4.mjs.map +0 -1
  610. package/dist/chunk-BLXGONR2.mjs.map +0 -1
  611. package/dist/chunk-ILQ5MEZF.mjs +0 -32
  612. package/dist/chunk-ILQ5MEZF.mjs.map +0 -1
  613. package/dist/chunk-LEAXOMYJ.mjs.map +0 -1
  614. package/dist/chunk-NB2S7ZRX.mjs +0 -1783
  615. package/dist/chunk-NB2S7ZRX.mjs.map +0 -1
  616. package/dist/chunk-NNQL7CB3.mjs +0 -1713
  617. package/dist/chunk-NNQL7CB3.mjs.map +0 -1
  618. package/dist/chunk-OO3DRYK7.mjs.map +0 -1
  619. package/dist/chunk-PA5DRJNI.mjs.map +0 -1
  620. package/dist/chunk-PLAXOOX5.mjs +0 -1907
  621. package/dist/chunk-PLAXOOX5.mjs.map +0 -1
  622. package/dist/chunk-RXZ3RGOU.mjs +0 -53
  623. package/dist/chunk-RXZ3RGOU.mjs.map +0 -1
  624. package/dist/chunk-VOZWDM3L.mjs.map +0 -1
@@ -1,7 +1,9 @@
1
- import type { World } from '@forgeax/engine-ecs';
1
+ import type { RenderResourceScope } from '../publication/resource-scope';
2
2
  import type { RenderReadVersion } from '@forgeax/engine-ecs/projection';
3
3
  import type { CompiledRenderGraphInfo, ResolvedColorTargetDescriptor } from '@forgeax/engine-render-graph';
4
4
  import type { BindGroup, BindGroupLayout, Buffer, RhiDevice, Texture, TextureView } from '@forgeax/engine-rhi';
5
+ import type { MaterialShaderArtifact } from '@forgeax/engine-shader';
6
+ import type { BarrelDistortionMapping } from '../barrel-distortion';
5
7
  import type { ClusterBinScratch } from '../cluster-binner';
6
8
  import type { DirectionalShadowQuality } from '../components/directional-shadow-filter';
7
9
  import type { EnvironmentGeneration } from '../environment/generation';
@@ -9,7 +11,7 @@ import type { EnvironmentLifecycle } from '../environment/lifecycle';
9
11
  import type { DepthOfFieldParams } from '../features/depth-of-field/depth-of-field-params';
10
12
  import type { GpuBuffer } from '../gpu-resource';
11
13
  import type { MotionBlurExecutionReceipt } from '../inspection-types';
12
- import type { InstanceCollectionStore } from '../instances';
14
+ import type { InstanceProjectionStore } from '../instances';
13
15
  import type { IblBindingInspection } from '../mesh-material-bindings';
14
16
  import type { StandardLightingInspection } from '../pipeline/standard-lighting/inspection';
15
17
  import type { AutoExposureGpuResources } from '../pipeline/standard-output/auto-exposure/gpu';
@@ -278,6 +280,12 @@ export declare function makeZeroCameraFallbackSnapshot(): CameraSnapshot;
278
280
  */
279
281
  export interface RenderFrameState {
280
282
  frameNumber: number;
283
+ /** Actual Surface commands staged for the renderer-owned submission fence. */
284
+ surfaceSubmissionObservation: import('../surface/submission-observation').SurfaceSubmissionCandidate | undefined;
285
+ /** Exact producer artifacts accepted by the last submitted GPU frame. */
286
+ recoveryMaterialArtifacts?: ReadonlyMap<string, MaterialShaderArtifact> | undefined;
287
+ /** Exact ShadowCaster artifacts accepted by the last submitted GPU frame. */
288
+ recoveryShadowMaterialArtifacts?: ReadonlyMap<string, MaterialShaderArtifact> | undefined;
281
289
  /** Last successful Motion Blur compute execution; failed submits retain the prior receipt. */
282
290
  motionBlurExecution?: MotionBlurExecutionReceipt;
283
291
  /** Final-submit Standard IBL binding-chain receipt for this frame. */
@@ -348,6 +356,18 @@ export interface RenderFrameState {
348
356
  } | undefined;
349
357
  /** A DoF candidate was present when the frame failed to submit. */
350
358
  depthOfFieldLastSubmitFailed?: boolean | undefined;
359
+ /**
360
+ * General graph replacement staged by the barrel/output path. The candidate
361
+ * is promoted only after the surrounding command buffer submits; failed
362
+ * encode/finish/submit restores the complete graph projection as one unit.
363
+ */
364
+ barrelDistortionPreviousGraph?: CompiledRenderGraph<RenderPipelineFrame> | null;
365
+ barrelDistortionPreviousGraphKey?: string | null;
366
+ barrelDistortionPreviousPerFrameGraph?: RenderFrameState['perFrameGraph'];
367
+ barrelDistortionPreviousGraphGeneration?: number;
368
+ barrelDistortionPreviousCompiledGraphGeneration?: number;
369
+ barrelDistortionPreviousStandardLightingGraphSignature?: string;
370
+ barrelDistortionCandidateGraph?: CompiledRenderGraph<RenderPipelineFrame> | null;
351
371
  /**
352
372
  * Last-known-good graph held while a volume topology candidate is tested.
353
373
  * The candidate is promoted only after its command buffer is submitted;
@@ -384,6 +404,10 @@ export interface RenderFrameState {
384
404
  reflectionFallbackCompletion?: Promise<void> | undefined;
385
405
  /** Camera antialias mode for the last successfully submitted graph. */
386
406
  lastSuccessfulCameraAntialias: CameraSnapshot['antialias'] | undefined;
407
+ /** Last accepted output-space barrel mapping, promoted with the picture. */
408
+ lastSuccessfulBarrelDistortion: BarrelDistortionMapping | undefined;
409
+ /** Whether the current frame graph was retained from an accepted LKG. */
410
+ barrelDistortionGraphResolution?: 'accepted' | 'retained';
387
411
  /** Staged TAA GPU state is promoted only after queue.submit succeeds. */
388
412
  temporalGpuState: TemporalGpuState | undefined;
389
413
  /** Device-scoped auto-exposure buffers imported by the Standard graph. */
@@ -406,6 +430,10 @@ export interface RenderFrameState {
406
430
  activeTemporalGpuState: TemporalGpuState | undefined;
407
431
  /** Submitted temporal generations retained until their queue fence resolves. */
408
432
  readonly retiringTemporalGpuStates: Set<TemporalGpuState>;
433
+ /** The accepted graph currently owns CloudLayer ping-pong history. */
434
+ cloudHistoryActive?: boolean;
435
+ /** Candidate CloudLayer history ownership, promoted only after submit. */
436
+ pendingCloudHistoryActive?: boolean;
409
437
  /** Last successful projection; candidate frames never overwrite it. */
410
438
  lastSuccessfulTemporalView: TemporalView | undefined;
411
439
  pendingTemporalCommit: TemporalCommitOutcome;
@@ -417,8 +445,8 @@ export interface RenderFrameState {
417
445
  currentDirectionalShadowView: TextureView | null;
418
446
  currentSpotShadowView: TextureView | null;
419
447
  readonly instanceBuffers: Map<number, InstanceBufferCacheEntry>;
420
- /** Renderer-owned collection owner used for record-stage residency facts. */
421
- readonly instanceCollections?: InstanceCollectionStore;
448
+ /** Renderer-private World projection receiving record-stage residency facts. */
449
+ readonly instanceCollections?: InstanceProjectionStore;
422
450
  /** Stable buffers for renderer-owned collections split by device cap. */
423
451
  readonly instanceBufferChunks?: Map<string, InstanceBufferCacheEntry>;
424
452
  /** Per-object ProbeBlendRecord buffers; upload is one atomic 160B write. */
@@ -426,6 +454,12 @@ export interface RenderFrameState {
426
454
  /** One renderer-owned record array; each object selects its 256B-aligned lane. */
427
455
  probeBlendRecordBuffer?: GpuBuffer;
428
456
  probeBlendRecordBufferCapacity: number;
457
+ /** Last producer revision fully uploaded to the current device buffer. */
458
+ probeBlendRecordProjection?: {
459
+ readonly projection: import('../scene/probe-blend').ProbeBlendBufferProjection;
460
+ readonly device: RhiDevice;
461
+ readonly buffer: GpuBuffer | undefined;
462
+ };
429
463
  /** Per-entity vertex buffers for the Standard CPU morph lane. */
430
464
  readonly morphBuffers?: Map<number, MorphBufferCacheEntry>;
431
465
  readonly hdrpClusterBinScratch: ClusterBinScratch;
@@ -691,8 +725,8 @@ export interface BloomFrameReceipts {
691
725
  */
692
726
  export interface ValidatedRenderable {
693
727
  readonly source: RenderableSnapshot;
694
- /** World that owns the renderable's asset handles and material snapshots. */
695
- readonly world?: World;
728
+ /** RenderResourceScope that owns the renderable's asset handles and material snapshots. */
729
+ readonly world?: RenderResourceScope;
696
730
  readonly mesh: MeshGpuHandles;
697
731
  readonly renderableIndex: number;
698
732
  readonly renderState: MaterialRenderState | undefined;
@@ -723,7 +757,7 @@ export interface ValidatedRenderable {
723
757
  * @internal
724
758
  */
725
759
  export interface DirectionalShadowCache {
726
- readonly worlds: readonly World[];
760
+ readonly worlds: readonly RenderResourceScope[];
727
761
  readonly worldStateTokens: readonly DirectionalShadowWorldState[];
728
762
  readonly assetCatalogEpoch: number;
729
763
  readonly pipelineHandle: number;
@@ -738,8 +772,8 @@ export interface DirectionalShadowCache {
738
772
  * ECS state that can change the contents of a directional shadow map.
739
773
  *
740
774
  * The ECS-owned RenderReadLease is the only render-facing mutation boundary.
741
- * Its version is intentionally conservative: any published World change
742
- * invalidates the cached atlas, while render never reaches through World for
775
+ * Its version is intentionally conservative: any published RenderResourceScope change
776
+ * invalidates the cached atlas, while render never reaches through RenderResourceScope for
743
777
  * component-clock storage.
744
778
  */
745
779
  export interface DirectionalShadowWorldState {
@@ -1 +1 @@
1
- {"version":3,"file":"frame-snapshot.d.ts","sourceRoot":"","sources":["../../src/record/frame-snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frame-snapshot.d.ts","sourceRoot":"","sources":["../../src/record/frame-snapshot.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,25 @@
1
1
  import type { FogFrame } from '../extract/environment';
2
- import { type World } from '@forgeax/engine-ecs';
2
+ import type { RenderResourceScope } from '../publication/resource-scope';
3
3
  import type { RenderReadLease } from '@forgeax/engine-ecs/projection';
4
4
  import { type CurrentFrameObservationLease } from '@forgeax/engine-render-graph';
5
5
  import { type Result, type TextureFormat } from '@forgeax/engine-rhi';
6
+ import type { ExtractedCloudLayer } from '../cloud/extract';
6
7
  import type { MeshGpuHandles } from '../device/gpu-residency';
7
8
  import { ObservationUnavailableError } from '../errors/render';
8
9
  import type { GpuDrivenProduction } from '../gpu-driven/production-raster';
9
10
  import type { GpuDrivenLodSubmitIdentity } from '../gpu-driven/view-gpu';
10
11
  import type { CameraSnapshot, CubeCameraSnapshot, RenderRecordPhase } from '../render-contract';
11
- import type { DispatchEntry, ExtractedLights, ExtractedVolumetricFog, MaterialSnapshot, RenderableSnapshot, ShadowCasterMembership, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
12
+ import type { DispatchEntry, ExtractedLights, ExtractedVolumetricFog, RenderableSnapshot, ShadowCasterMembership, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
12
13
  import type { PersistentGpuDrivenState, PersistentShadowCasterProjection } from '../scene/render-scene';
13
14
  import type { OcclusionFrameProjection } from '../scene/visibility/occlusion-runtime';
14
15
  import { type SsrDependenciesInspection } from '../ssr/admission';
16
+ import type { SurfaceDynamicInputFrame } from '../surface/dynamic-input';
15
17
  import type { TransmissionDemand } from '../transmission/projection';
16
18
  import { prepareFrameLighting } from './frame-lighting';
17
19
  import { type BindGroupCounts, type DispatchCounts, type FrameObservationSource, type RenderFrameState, type ValidatedRenderable } from './frame-snapshot';
18
- import { type FoldBucket, type FoldDispatchPlan } from './mesh-ssbo';
20
+ import { type RenderableDrawReceipt } from './gpu-draw-receipts';
19
21
  import type { PipelineState, RenderSystemInternals } from './render-context';
22
+ export { buildDispatchPlan, buildMaterialSlotPlan, findRenderablePrefixForSlotCapacity, materialSlotCountForPrefix, validateRenderables, } from './fold-buckets';
20
23
  export type { FrameObservationSource } from './frame-snapshot';
21
24
  export type FrameObservationReadback = (lease: CurrentFrameObservationLease) => Promise<Result<Uint8Array, Error>>;
22
25
  export interface FrameObservationOptions {
@@ -49,47 +52,23 @@ import { type CubeCaptureGraphState, type RenderFeatureGraphCandidate } from './
49
52
  /**
50
53
  * Resolve the GPU mesh view used by the optional production raster before its
51
54
  * filtering pass runs. The result is keyed by the retained RenderScene slot,
52
- * which preserves the World namespace already used by gpuStore. User meshes
55
+ * which preserves the RenderResourceScope namespace already used by gpuStore. User meshes
53
56
  * are pull-resident during record; relying only on the boot-time builtin map
54
57
  * would make the first frame classify every imported mesh as a CPU fallback
55
58
  * and would hide its LOD ranges from the GPU cull. Builtins are the only
56
59
  * process-static entries and may be read from PipelineState.meshes.
57
60
  */
58
- export declare function gpuDrivenMeshesForFrame(internals: RenderSystemInternals, pipelineState: PipelineState, worlds: readonly World[], scene: PersistentGpuDrivenState | undefined): ReadonlyMap<number, MeshGpuHandles>;
59
- /**
60
- * A frame-local material table. Repeated snapshot objects share one UBO slot;
61
- * each renderable keeps only the slot index used by each authored material.
62
- */
63
- export interface MaterialSlotPlan<T extends object> {
64
- readonly slotIndices: readonly (readonly number[])[];
65
- readonly slots: readonly T[];
66
- /** Index of the first renderable that referenced each slot. */
67
- readonly slotOwners: readonly number[];
68
- }
69
- /**
70
- * Intern identical material snapshots into one frame-local slot table.
71
- * Snapshot identity is the extract layer's invalidation token, so this keeps
72
- * the same correctness boundary while avoiding duplicate payload assembly and
73
- * upload for repeated scene instances.
74
- */
75
- export declare function buildMaterialSlotPlan<T extends object>(materialGroups: readonly (readonly T[])[], bindingClass?: (material: T, owner: number) => string): MaterialSlotPlan<T>;
76
- /**
77
- * Return the largest complete renderable prefix supported by a shared
78
- * mesh/material capacity. Mesh rows consume one slot per renderable; material
79
- * rows use the deduplicated slot indices assigned in first-seen order.
80
- */
81
- export declare function findRenderablePrefixForSlotCapacity(materialSlotIndices: readonly (readonly number[])[], slotCapacity: number): number;
82
- /** Count material slots reachable from a prefix of a first-seen slot plan. */
83
- export declare function materialSlotCountForPrefix(materialSlotIndices: readonly (readonly number[])[], renderableCount: number): number;
61
+ export declare function gpuDrivenMeshesForFrame(internals: RenderSystemInternals, pipelineState: PipelineState, worlds: readonly RenderResourceScope[], scene: PersistentGpuDrivenState | undefined): ReadonlyMap<number, MeshGpuHandles>;
84
62
  export type RecordProfileRunner = <T>(phase: RenderRecordPhase, action: () => T) => T;
85
63
  export interface CubeCaptureFrameInput {
86
64
  readonly captureDispatch?: readonly DispatchEntry[];
87
65
  readonly snapshots: readonly CubeCameraSnapshot[];
66
+ readonly auxiliaryCameras: readonly CameraSnapshot[];
88
67
  readonly scheduler: import('../capture/scheduler').CubeCaptureScheduler;
89
68
  readonly state: CubeCaptureGraphState;
90
69
  readonly reflectionProbes?: import('./render-context').ReflectionProbeRecordState;
91
70
  }
92
- export declare function recordFrame(internals: RenderSystemInternals, world: World, cameras: CameraSnapshot[], lights: ExtractedLights, renderables: readonly RenderableSnapshot[], transparentDispatch: readonly DispatchEntry[], frameState: RenderFrameState, dispatchCounts: DispatchCounts, bindGroupCounts: BindGroupCounts, skylight: SkylightSnapshot | undefined, skylightCount: number, skybox: SkyboxSnapshot | undefined, skyboxCount: number, postProcessParams: ReadonlyMap<string, Uint8Array>, worlds?: readonly World[], profilePhase?: RecordProfileRunner, gpuDriven?: {
71
+ export declare function recordFrame(internals: RenderSystemInternals, world: RenderResourceScope, cameras: CameraSnapshot[], lights: ExtractedLights, renderables: readonly RenderableSnapshot[], transparentDispatch: readonly DispatchEntry[], frameState: RenderFrameState, dispatchCounts: DispatchCounts, bindGroupCounts: BindGroupCounts, skylight: SkylightSnapshot | undefined, skylightCount: number, skybox: SkyboxSnapshot | undefined, skyboxCount: number, postProcessParams: ReadonlyMap<string, Uint8Array>, worlds?: readonly RenderResourceScope[], profilePhase?: RecordProfileRunner, gpuDriven?: {
93
72
  readonly owner: GpuDrivenProduction;
94
73
  readonly scene: PersistentGpuDrivenState | undefined;
95
74
  readonly onSceneDemand: (sceneRowsRequired: boolean) => void;
@@ -98,38 +77,9 @@ export declare function recordFrame(internals: RenderSystemInternals, world: Wor
98
77
  readonly telemetryCandidateCount?: number;
99
78
  readonly telemetrySubmit?: GpuDrivenLodSubmitIdentity;
100
79
  readonly occlusion?: OcclusionFrameProjection;
101
- }, renderReadLeases?: readonly RenderReadLease[], featureGraphCandidate?: RenderFeatureGraphCandidate, pointsLinesOwner?: import('./render-context').PointsLinesRecordOwner, cubeCapture?: CubeCaptureFrameInput, environmentSignature?: string, fogSignature?: string, environmentReady?: boolean, transmissionDemand?: TransmissionDemand, shadowCasterEntityKeys?: ReadonlySet<number>, shadowCasterDrawKeys?: ReadonlySet<string> | undefined, volumetricFog?: ExtractedVolumetricFog, timingCapture?: GpuTimingCapture, shadowCasterMembership?: readonly ShadowCasterMembership[], shadowCasterProjection?: PersistentShadowCasterProjection, shadowCasterWorldKeys?: readonly number[], preparedLighting?: ReturnType<typeof prepareFrameLighting>, ssrDependencies?: SsrDependenciesInspection, onRenderableDraw?: (entry: ValidatedRenderable) => void, analyticFog?: FogFrame, sampleTimeSeconds?: number, temporalReset?: boolean): boolean;
102
- /**
103
- * feat-20260704 M3/w18: validate renderable handles + collect the render plan,
104
- * extracted verbatim from `recordFrame`. Empty `renderables` input or all-
105
- * unregistered handles both yield an empty result (the Case E clear-pass-only
106
- * path). Builds per-entry renderState / stencilReference overlays from the
107
- * transparent-dispatch entries, resolves each MeshFilter.assetHandle through
108
- * the AssetRegistry + GPU store (with the sprite 9-slice mesh swap), and fires
109
- * structured `asset-not-registered` errors for handles that fail to resolve.
110
- *
111
- * @internal
112
- */
113
- export declare function validateRenderables(internals: RenderSystemInternals, world: World, worlds: readonly World[], pipelineState: PipelineState, frameState: RenderFrameState, renderables: readonly RenderableSnapshot[], transparentDispatch: readonly DispatchEntry[], excludedEntityKeys?: ReadonlySet<number>, worldKeys?: readonly number[]): ValidatedRenderable[];
114
- /**
115
- * feat-20260704 M3/w18: build the dispatch-ordered render plan, extracted
116
- * verbatim from `recordFrame`. (1) M3/w26 dispatch-ordered reorder: reorder
117
- * `validated` to follow the transparent-dispatch order (extract-order fallback
118
- * for unmatched entries). (2) feat-20260608 mesh-SSBO capacity gate: size the
119
- * mesh-SSBO + material-UBO pair to the larger of entity vs cumulative
120
- * material-slot count, truncating on ceiling (graceful degradation). (3)
121
- * feat-20260622 fold dispatch plan: build + apply the WebGL2 uniform-cap
122
- * fallback + bump the folded-draws metric.
123
- *
124
- * @internal
125
- */
126
- export declare function buildDispatchPlan(internals: RenderSystemInternals, validated: readonly ValidatedRenderable[], transparentDispatch: readonly DispatchEntry[], foldBuckets: readonly FoldBucket[], shadowValidated?: readonly ValidatedRenderable[], materialBindingClasses?: ReadonlyMap<string, string>): {
127
- validatedOrdered: readonly ValidatedRenderable[];
128
- shadowValidatedOrdered: readonly ValidatedRenderable[];
129
- foldDispatchPlan: FoldDispatchPlan | null;
130
- materialSlotIndices: readonly (readonly number[])[];
131
- materialSlots: readonly MaterialSnapshot[];
132
- materialSlotOwners: readonly ValidatedRenderable[];
133
- materialSlotCount: number;
134
- };
80
+ readonly frameTime?: number;
81
+ readonly deviceGeneration?: number;
82
+ readonly surfaceDynamicInput?: SurfaceDynamicInputFrame;
83
+ readonly geometryLane?: 'automatic' | 'direct';
84
+ }, renderReadLeases?: readonly RenderReadLease[], featureGraphCandidate?: RenderFeatureGraphCandidate, pointsLinesOwner?: import('./render-context').PointsLinesRecordOwner, cubeCapture?: CubeCaptureFrameInput, environmentSignature?: string, fogSignature?: string, environmentReady?: boolean, transmissionDemand?: TransmissionDemand, shadowCasterEntityKeys?: ReadonlySet<number>, shadowCasterDrawKeys?: ReadonlySet<string> | undefined, volumetricFog?: ExtractedVolumetricFog, timingCapture?: GpuTimingCapture, shadowCasterMembership?: readonly ShadowCasterMembership[], shadowCasterProjection?: PersistentShadowCasterProjection, shadowCasterWorldKeys?: readonly number[], preparedLighting?: ReturnType<typeof prepareFrameLighting>, ssrDependencies?: SsrDependenciesInspection, onRenderableDraw?: (entry: ValidatedRenderable, submeshIndex?: number, receipt?: RenderableDrawReceipt) => void, analyticFog?: FogFrame, sampleTimeSeconds?: number, temporalReset?: boolean, cloudLayer?: ExtractedCloudLayer): boolean;
135
85
  //# sourceMappingURL=frame.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/record/frame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/record/frame.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { RenderableSnapshot } from '../render-system-extract';
2
+ /** Internal receipt for one concrete CPU/GPU presentation draw unit. */
3
+ export interface RenderableDrawReceipt {
4
+ readonly lane: 'cpu' | 'gpu';
5
+ readonly ready: boolean;
6
+ }
7
+ /** Emit receipts only for draw items claimed by the GPU raster owner. */
8
+ export declare function emitGpuDrivenDrawReceipts<T extends {
9
+ readonly source: Pick<RenderableSnapshot, 'worldId' | 'entityKey' | 'material' | 'materials' | 'gpuDrivenDraws'>;
10
+ }>(entry: T, drawKeys: ReadonlySet<string>, onRenderableDraw: (entry: T, submeshIndex: number, receipt: RenderableDrawReceipt) => void): void;
11
+ //# sourceMappingURL=gpu-draw-receipts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-draw-receipts.d.ts","sourceRoot":"","sources":["../../src/record/gpu-draw-receipts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,wEAAwE;AACxE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,yEAAyE;AACzE,wBAAgB,yBAAyB,CACvC,CAAC,SAAS;IACR,QAAQ,CAAC,MAAM,EAAE,IAAI,CACnB,kBAAkB,EAClB,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,gBAAgB,CACtE,CAAC;CACH,EAED,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,EAC7B,gBAAgB,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,KAAK,IAAI,GACzF,IAAI,CAeN"}
@@ -17,6 +17,14 @@ export type VolumeTimingObservation = {
17
17
  readonly name: string;
18
18
  readonly milliseconds: number;
19
19
  }[];
20
+ /** Cloud producer timings captured by the same physical timestamp lane. */
21
+ readonly cloud?: {
22
+ readonly totalMs: number;
23
+ readonly passes: readonly {
24
+ readonly name: string;
25
+ readonly milliseconds: number;
26
+ }[];
27
+ };
20
28
  } | {
21
29
  readonly status: 'unavailable';
22
30
  readonly reason: string;
@@ -1 +1 @@
1
- {"version":3,"file":"gpu-timing.d.ts","sourceRoot":"","sources":["../../src/record/gpu-timing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAM,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAsBxD,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AAS1C,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,MAAM,uBAAuB,GAC/B;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACtF,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC;AAMN,MAAM,MAAM,2BAA2B,GAAG,4BAA4B,CAAC;AAEvE;;;;;GAKG;AACH,qBAAa,gBAAgB;;IAe3B,OAAO;IAcP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,gBAAgB,GAAG,SAAS,EAAE,QAAQ,CAAC;IAyChF;;;;OAIG;IACH,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAwB3C,uEAAuE;IACvE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMrC,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;IAkB3D,aAAa,IAAI,IAAI;IAIrB,OAAO,IAAI,IAAI;IAQf,WAAW,IAAI,OAAO,CAAC,uBAAuB,CAAC;CA2FhD"}
1
+ {"version":3,"file":"gpu-timing.d.ts","sourceRoot":"","sources":["../../src/record/gpu-timing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpG,OAAO,EAAM,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAkCxD,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AAS1C,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,MAAM,uBAAuB,GAC/B;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrF,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,MAAM,EAAE,SAAS;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KACtF,CAAC;CACH,GACD;IACE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC;AAMN,MAAM,MAAM,2BAA2B,GAAG,4BAA4B,CAAC;AAEvE;;;;;GAKG;AACH,qBAAa,gBAAgB;;IAe3B,OAAO;IAcP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,gBAAgB,GAAG,SAAS,EAAE,QAAQ,CAAC;IAyChF;;;;OAIG;IACH,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,MAAM,GACrB,4BAA4B,GAAG,SAAS;IAwB3C,uEAAuE;IACvE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMrC,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;IAkB3D,aAAa,IAAI,IAAI;IAIrB,OAAO,IAAI,IAAI;IAQf,WAAW,IAAI,OAAO,CAAC,uBAAuB,CAAC;CAqHhD"}
@@ -1,4 +1,4 @@
1
- import type { World } from '@forgeax/engine-ecs';
1
+ import type { RenderResourceScope } from '../publication/resource-scope';
2
2
  import { type Mat4 } from '@forgeax/engine-math';
3
3
  import type { CameraSnapshot } from '../render-contract';
4
4
  import type { MaterialSnapshot, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
@@ -62,7 +62,7 @@ export declare function warnMultiSkybox(frameState: Pick<RenderFrameState, 'warn
62
62
  * via the explicit `status === 'failed'` arm here (read on the next frame), not
63
63
  * by awaiting the promise (which would block record).
64
64
  */
65
- export declare function driveLazyEquirectProjection(internals: RenderSystemInternals, world: World, frameState: Pick<RenderFrameState, 'firedEquirectProjectionFailedHandles'>, equirectHandle: number): void;
65
+ export declare function driveLazyEquirectProjection(internals: RenderSystemInternals, world: RenderResourceScope, frameState: Pick<RenderFrameState, 'firedEquirectProjectionFailedHandles'>, equirectHandle: number): void;
66
66
  /**
67
67
  * Returns true when a MaterialSnapshot uses a builtin standard/PBR shader
68
68
  * that will render black with zero lights.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/record/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,sBAAsB,CAAC;AAKvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE9D,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GACpD,MAAM,GAAG,SAAS,CAQpB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,GAAG,SAAS,EAC9D,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,SAAS,GACzD,MAAM,CAGR;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,EACjE,gBAAgB,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC5C,IAAI,CAkBN;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,EACzD,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,GAC1B,IAAI,CAUN;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,EACvD,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,MAAM,GAC1B,IAAI,CAUN;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,qBAAqB,EAChC,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,sCAAsC,CAAC,EAC1E,cAAc,EAAE,MAAM,GACrB,IAAI,CAgCN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAEzE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAO9D;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAoBpE"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/record/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAKzE,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,sBAAsB,CAAC;AAKvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE9D,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GACpD,MAAM,GAAG,SAAS,CAQpB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,GAAG,SAAS,EAC9D,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,SAAS,GACzD,MAAM,CAGR;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,EACjE,gBAAgB,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC5C,IAAI,CAkBN;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,EACzD,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,GAC1B,IAAI,CAUN;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,EACvD,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,MAAM,GAC1B,IAAI,CAUN;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,qBAAqB,EAChC,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,sCAAsC,CAAC,EAC1E,cAAc,EAAE,MAAM,GACrB,IAAI,CAgCN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAEzE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAO9D;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAoBpE"}
@@ -1,8 +1,9 @@
1
- import type { World } from '@forgeax/engine-ecs';
1
+ import type { RenderResourceScope } from '../publication/resource-scope';
2
2
  import { type BindGroup, type Buffer, type RhiRenderPassEncoder } from '@forgeax/engine-rhi';
3
3
  import type { ParamSchemaEntry, PassKind } from '@forgeax/engine-types';
4
4
  import type { PointsLinesRecordPlan } from '../points-lines/record';
5
5
  import type { DispatchEntry, MaterialSnapshot, RenderableSnapshot } from '../render-system-extract';
6
+ import type { SurfacePassName } from '../surface/submission-observation';
6
7
  import { geometryRenderStateForTopology } from './main-pass-material';
7
8
  import type { _InternalRenderPipelineContext } from './render-context';
8
9
  /** Temporal ignores authored color entry points; opaque duplicates are idempotent. */
@@ -10,9 +11,15 @@ export declare function sameOpaqueTemporalDraw(a: DispatchEntry, b: DispatchEntr
10
11
  type GeometryInstanceDraw = {
11
12
  readonly instanceBuffer: Buffer;
12
13
  readonly instanceBindGroup: BindGroup;
14
+ /** Producer-owned Probe buffer paired with probeOffset, when present. */
15
+ readonly probeBuffer?: Buffer;
13
16
  /** -1 means the no-probe layout and therefore no dynamic offset. */
14
17
  readonly probeOffset: number;
18
+ readonly dynamicOffsets?: readonly number[];
15
19
  readonly instanceCount: number;
20
+ readonly firstInstanceOrdinal?: number;
21
+ readonly surfaceFrameBase?: number;
22
+ readonly surfaceMemberIds?: readonly string[];
16
23
  };
17
24
  type GeometryRenderState = ReturnType<typeof geometryRenderStateForTopology>;
18
25
  /** Coverage is a dedicated temporal material variant, not a color/alpha tap. */
@@ -39,6 +46,13 @@ export declare function effectiveMaterialLayoutIdentity(materialShaderId: string
39
46
  * surface.
40
47
  */
41
48
  export declare function geometryRenderStateForPass(base: GeometryRenderState, passKind: PassKind, coverageOnly?: boolean): GeometryRenderState;
49
+ /**
50
+ * Transparent depth is an authored medium policy. A transparent pass with no
51
+ * explicit depth-write bit remains read-only, which keeps alpha smoke and
52
+ * ordinary blending from becoming an opaque occluder; water or a cutout-like
53
+ * medium can opt in by setting the bit on its own pass state.
54
+ */
55
+ export declare function authoredTransparentDepthWrite(transparent: boolean | undefined, renderState: MaterialSnapshot['renderState']): boolean;
42
56
  /**
43
57
  * Issues a prepared Points/Lines draw into the already-open geometry pass.
44
58
  * Pass lifetime, attachments, bind groups, and submission remain owned by the
@@ -59,8 +73,8 @@ export declare function recordPointsLinesDraw(pass: RhiRenderPassEncoder, plan:
59
73
  *
60
74
  * @internal
61
75
  */
62
- export declare function recordGeometryDraws(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, matchedMaterials: ReadonlyMap<number, ReadonlySet<number>> | null, materialSlotIndices: readonly (readonly number[])[], sampleCount: number, meshGroup2: BindGroup | null, meshBindGroup: BindGroup | null, resolveMaterialBindGroup: (materialSlot: number, submeshMaterial: MaterialSnapshot, entityKey: number, materialWorld: World, materialShaderId?: string) => BindGroup, passKind?: PassKind, selectedDispatch?: readonly DispatchEntry[], colorFormats?: readonly GPUTextureFormat[], coverageOnly?: boolean): void;
63
- export declare function reportInstanceResidency(c: _InternalRenderPipelineContext, inst: NonNullable<RenderableSnapshot['instances']>, input: {
76
+ export declare function recordGeometryDraws(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, matchedMaterials: ReadonlyMap<number, ReadonlySet<number>> | null, materialSlotIndices: readonly (readonly number[])[], sampleCount: number, meshGroup2: BindGroup | null, meshBindGroup: BindGroup | null, resolveMaterialBindGroup: (materialSlot: number, submeshMaterial: MaterialSnapshot, entityKey: number, materialWorld: RenderResourceScope, materialShaderId?: string) => BindGroup, passKind?: PassKind, selectedDispatch?: readonly DispatchEntry[], colorFormats?: readonly GPUTextureFormat[], coverageOnly?: boolean, fragmentEntryPoint?: string, surfacePass?: SurfacePassName, transparentDepthWrite?: boolean): void;
77
+ export declare function reportInstanceResidency(c: InstanceBufferContext, inst: NonNullable<RenderableSnapshot['instances']>, input: {
64
78
  readonly lane: 'direct-storage' | 'chunked-storage' | 'direct-uniform' | 'chunked-uniform';
65
79
  readonly requestedBytes: number;
66
80
  readonly supportedBytes: number | undefined;
@@ -70,11 +84,13 @@ export declare function reportInstanceResidency(c: _InternalRenderPipelineContex
70
84
  }[];
71
85
  readonly uploadedBytes: number;
72
86
  }): void;
73
- export declare function resolveStorageInstanceChunks(c: _InternalRenderPipelineContext, entry: _InternalRenderPipelineContext['validatedOrdered'][number], inst: NonNullable<RenderableSnapshot['instances']>, cap: number, probeBuffer: Buffer | undefined, probeOffset: number): readonly GeometryInstanceDraw[] | null;
74
- export declare function resolveProbeBlendBuffer(c: _InternalRenderPipelineContext, record: import('../scene/probe-blend-record').ProbeBlendRecord | undefined, entityKey?: number): {
87
+ export declare function resolveStorageInstanceChunks(c: InstanceBufferContext, entry: _InternalRenderPipelineContext['validatedOrdered'][number], inst: NonNullable<RenderableSnapshot['instances']>, cap: number, probeBuffer: Buffer | undefined, probeOffset: number): readonly GeometryInstanceDraw[] | null;
88
+ type InstanceBufferContext = Pick<_InternalRenderPipelineContext, 'runtime' | 'pipelineState' | 'frameState' | 'bindGroupCounts'>;
89
+ export declare function resolveGeometryInstanceBuffer(c: InstanceBufferContext, entry: _InternalRenderPipelineContext['validatedOrdered'][number], identityInstanceDraws: readonly GeometryInstanceDraw[], useProbeBlend: boolean): readonly GeometryInstanceDraw[] | null;
90
+ export declare function resolveProbeBlendBuffer(c: InstanceBufferContext, record: import('../scene/probe-blend-record').ProbeBlendRecord | undefined, entityKey?: number): {
75
91
  readonly buffer: Buffer;
76
92
  readonly offset: number;
77
93
  };
78
- export declare function resolveGeometryInstancesBindGroup(c: _InternalRenderPipelineContext, instanceBuffer: Buffer, probeBuffer?: Buffer): BindGroup;
94
+ export declare function resolveGeometryInstancesBindGroup(c: InstanceBufferContext, instanceBuffer: Buffer, probeBuffer?: Buffer): BindGroup;
79
95
  export {};
80
96
  //# sourceMappingURL=main-pass-geometry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"main-pass-geometry.d.ts","sourceRoot":"","sources":["../../src/record/main-pass-geometry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,MAAM,EAGX,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAqB,MAAM,uBAAuB,CAAC;AA4B3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAGpE,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAWpG,OAAO,EACL,8BAA8B,EAI/B,MAAM,sBAAsB,CAAC;AAW9B,OAAO,KAAK,EAAE,8BAA8B,EAA+B,MAAM,kBAAkB,CAAC;AAIpG,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,OAAO,CAclF;AAED,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;IACtC,oEAAoE;IACpE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC,CAAC;AAoDF,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE7E,gFAAgF;AAChF,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,YAAY,EAAE,OAAO,GACpB,MAAM,GAAG,SAAS,CAMpB;AAED,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,OAAO,EACtB,mBAAmB,EAAE,gBAAgB,GAAG,SAAS,GAChD,OAAO,CAET;AA+DD;;;;GAIG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,GAAG,eAAe,CAAC,GACrE,OAAO,CAKT;AAmFD;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,CAAC,EAAE,SAAS,gBAAgB,EAAE,GAChD,MAAM,GAAG,SAAS,CASpB;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,mBAAmB,EACzB,QAAQ,EAAE,QAAQ,EAClB,YAAY,UAAQ,GACnB,mBAAmB,CAOrB;AA2DD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,oBAAoB,EAC1B,IAAI,EAAE,qBAAqB,GAC1B,IAAI,CAON;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,EAC1B,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EACjE,mBAAmB,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACnD,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,SAAS,GAAG,IAAI,EAC5B,aAAa,EAAE,SAAS,GAAG,IAAI,EAC/B,wBAAwB,EAAE,CACxB,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,gBAAgB,EACjC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,KAAK,EACpB,gBAAgB,CAAC,EAAE,MAAM,KACtB,SAAS,EACd,QAAQ,GAAE,QAAoB,EAC9B,gBAAgB,CAAC,EAAE,SAAS,aAAa,EAAE,EAC3C,YAAY,GAAE,SAAS,gBAAgB,EAAO,EAC9C,YAAY,UAAQ,GACnB,IAAI,CAm+BN;AAgED,wBAAgB,uBAAuB,CACrC,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,EAClD,KAAK,EAAE;IACL,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;IAC3F,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC,GACA,IAAI,CAaN;AA4CD,wBAAgB,4BAA4B,CAC1C,CAAC,EAAE,8BAA8B,EACjC,KAAK,EAAE,8BAA8B,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,EACjE,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,EAClD,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,WAAW,EAAE,MAAM,GAClB,SAAS,oBAAoB,EAAE,GAAG,IAAI,CAwJxC;AAuUD,wBAAgB,uBAAuB,CACrC,CAAC,EAAE,8BAA8B,EACjC,MAAM,EAAE,OAAO,6BAA6B,EAAE,gBAAgB,GAAG,SAAS,EAC1E,SAAS,CAAC,EAAE,MAAM,GACjB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CA0CtD;AAED,wBAAgB,iCAAiC,CAC/C,CAAC,EAAE,8BAA8B,EACjC,cAAc,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,GACnB,SAAS,CA8CX"}
1
+ {"version":3,"file":"main-pass-geometry.d.ts","sourceRoot":"","sources":["../../src/record/main-pass-geometry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
+ import type { RenderResourceScope } from '../publication/resource-scope';
1
2
  import type { _InternalRenderPipelineContext } from './render-context';
2
- import type { World } from '@forgeax/engine-ecs';
3
3
  import { type BindGroup, type BindGroupLayout, type Buffer, type RenderPipeline, type Sampler, type TextureView } from '@forgeax/engine-rhi';
4
4
  import type { Handle, MaterialRenderState, ParamSchemaEntry, PrimitiveTopology, TextureAsset } from '@forgeax/engine-types';
5
5
  import { derive } from '@forgeax/engine-types';
@@ -68,9 +68,9 @@ export declare function entityHasTransparentSubmesh(source: {
68
68
  readonly material: MaterialSnapshot;
69
69
  readonly materials?: readonly MaterialSnapshot[];
70
70
  }): boolean;
71
- export declare function residentTextureView(world: World, store: GpuResidencyCache, runtime: RenderSystemRuntime, handle: Handle<'TextureAsset', 'shared'>, worldId?: World | number): TextureView | undefined;
71
+ export declare function residentTextureView(world: RenderResourceScope, store: GpuResidencyCache, runtime: RenderSystemRuntime, handle: Handle<'TextureAsset', 'shared'>, worldId?: RenderResourceScope | number): TextureView | undefined;
72
72
  type DynamicTextureStore = import('@forgeax/engine-assets-runtime').DynamicTextureStore;
73
- export declare function videoTextureView(world: World, store: DynamicTextureStore | undefined, runtime: RenderSystemRuntime, entityKey: number, clip: Handle<'VideoAsset', 'shared'>, highPerfAvailable: boolean): TextureView | undefined;
73
+ export declare function videoTextureView(world: RenderResourceScope, store: DynamicTextureStore | undefined, runtime: RenderSystemRuntime, entityKey: number, clip: Handle<'VideoAsset', 'shared'>, highPerfAvailable: boolean): TextureView | undefined;
74
74
  export declare const BUILTIN_USER_REGION_TEXTURE_FIELDS: readonly string[];
75
75
  export interface StandardReflectionProbeMaterialProjection {
76
76
  readonly probeIndex: number | undefined;
@@ -90,7 +90,7 @@ export declare function materialRenderTargetSourceForField(material: MaterialSna
90
90
  * from a bound texture asset to its shader sampling coordinates.
91
91
  */
92
92
  type MaterialUboPayload = ArrayBuffer | Uint8Array | Float32Array;
93
- export declare function applyMaterialTextureUvScales(payload: MaterialUboPayload, material: MaterialSnapshot, world: World): void;
93
+ export declare function applyMaterialTextureUvScales(payload: MaterialUboPayload, material: MaterialSnapshot, world: RenderResourceScope): void;
94
94
  /**
95
95
  * feat-20260621-learn-render-5-5-parallax M2 / w8 (D-3): ordered user-region
96
96
  * texture field names for a material's bind-group assembly, derived from the
@@ -209,13 +209,13 @@ export declare function applyParamSchemaDefaultsToUbo(payload: MaterialUboPayloa
209
209
  export interface PerSubmeshMaterialBgDeps {
210
210
  readonly runtime: RenderSystemRuntime;
211
211
  readonly pipelineState: PipelineState;
212
- readonly world: World;
212
+ readonly world: RenderResourceScope;
213
213
  readonly store: GpuResidencyCache;
214
214
  readonly materialSlice: number;
215
215
  readonly videoHighPerfAvailable: boolean;
216
216
  readonly skylightResources: SkylightBindGroupResources;
217
217
  readonly resolveRenderTargetTextureSource?: RenderSystemRuntime['resolveRenderTargetTextureSource'];
218
- readonly resolveReflectionProbeResources?: (materialWorld: World, entityKey: number) => {
218
+ readonly resolveReflectionProbeResources?: (materialWorld: RenderResourceScope, entityKey: number) => {
219
219
  readonly resources: SkylightBindGroupResources;
220
220
  readonly probeIndex: number;
221
221
  } | undefined;
@@ -226,12 +226,18 @@ export interface PerSubmeshMaterialBgDeps {
226
226
  readonly sceneMaterialBuffer?: Buffer;
227
227
  /** Active transmission backdrop; undefined/null means layout placeholder. */
228
228
  readonly transmissionBackdropView?: TextureView | null;
229
+ /** Independent sampled raw depth for the active medium graph pass. */
230
+ readonly surfaceRawDepthView?: TextureView | null;
231
+ /** Nearest-layer color from the preceding medium graph pass. */
232
+ readonly surfaceNearestLayerView?: TextureView | null;
233
+ /** Nearest-layer depth from the preceding medium graph pass. */
234
+ readonly surfaceNearestDepthView?: TextureView | null;
229
235
  readonly bindGroupCounts: BindGroupCounts;
230
236
  readonly frameState: RenderFrameState;
231
237
  }
232
238
  /** @internal Exported only so buffer-generation invalidation stays regression-tested. */
233
- export declare function isMaterialBgAssemblyCacheHit(cached: MaterialBgAssemblyCacheEntry | undefined, material: MaterialSnapshot, materialBgl: BindGroupLayout, materialBuffer: Buffer, skylightResources: SkylightBindGroupResources, materialResourceEpoch: number, transmissionBackdropView?: TextureView | null, sceneMaterialBuffer?: Buffer): cached is MaterialBgAssemblyCacheEntry;
234
- export declare function buildPerSubmeshMaterialBg(deps: PerSubmeshMaterialBgDeps, submeshMaterial: MaterialSnapshot, entityKey: number, materialWorld?: World, materialShaderId?: string | undefined): BindGroup;
239
+ export declare function isMaterialBgAssemblyCacheHit(cached: MaterialBgAssemblyCacheEntry | undefined, material: MaterialSnapshot, materialBgl: BindGroupLayout, materialBuffer: Buffer, skylightResources: SkylightBindGroupResources, materialResourceEpoch: number, transmissionBackdropView?: TextureView | null, sceneMaterialBuffer?: Buffer, surfaceRawDepthView?: TextureView | null): cached is MaterialBgAssemblyCacheEntry;
240
+ export declare function buildPerSubmeshMaterialBg(deps: PerSubmeshMaterialBgDeps, submeshMaterial: MaterialSnapshot, entityKey: number, materialWorld?: RenderResourceScope, materialShaderId?: string | undefined): BindGroup;
235
241
  /** The same scene resources back material bindings in depth and color passes. */
236
242
  /**
237
243
  * Resolve the renderer-owned Skylight bundle for both ordinary geometry and
@@ -248,7 +254,6 @@ export declare function resolveMaterialSkylight(runtime: Pick<RenderSystemRuntim
248
254
  prefilterView: TextureView;
249
255
  prefilterSampler: Sampler;
250
256
  brdfLutView: TextureView;
251
- brdfLutSampler: Sampler;
252
257
  intensityBuffer: Buffer;
253
258
  };
254
259
  activeViews: {
@@ -265,7 +270,6 @@ export declare function prepareMaterialSkylight(c: _InternalRenderPipelineContex
265
270
  prefilterView: TextureView;
266
271
  prefilterSampler: Sampler;
267
272
  brdfLutView: TextureView;
268
- brdfLutSampler: Sampler;
269
273
  intensityBuffer: Buffer;
270
274
  };
271
275
  activeViews: {