@forgeax/engine-render 0.1.28 → 0.1.30
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.
- package/README.md +856 -126
- package/dist/assembly/atmosphere-shader-prewarm.d.ts +6 -0
- package/dist/assembly/atmosphere-shader-prewarm.d.ts.map +1 -0
- package/dist/assembly/device-feature-admission.d.ts +4 -3
- package/dist/assembly/device-feature-admission.d.ts.map +1 -1
- package/dist/assembly/dynamic-geometry-host.d.ts +27 -0
- package/dist/assembly/dynamic-geometry-host.d.ts.map +1 -1
- package/dist/assembly/dynamic-geometry-runtime.d.ts +20 -0
- package/dist/assembly/dynamic-geometry-runtime.d.ts.map +1 -0
- package/dist/assembly/factory.d.ts +3 -1
- package/dist/assembly/factory.d.ts.map +1 -1
- package/dist/assembly/gpu-driven-owner.d.ts +10 -0
- package/dist/assembly/gpu-driven-owner.d.ts.map +1 -0
- package/dist/assembly/host-contract.d.ts +14 -0
- package/dist/assembly/host-contract.d.ts.map +1 -1
- package/dist/assembly/material/assembly.d.ts +31 -1
- package/dist/assembly/material/assembly.d.ts.map +1 -1
- package/dist/assembly/material/pipeline-helpers.d.ts +24 -0
- package/dist/assembly/material/pipeline-helpers.d.ts.map +1 -0
- package/dist/assembly/material-shader-policy.d.ts +3 -1
- package/dist/assembly/material-shader-policy.d.ts.map +1 -1
- package/dist/assembly/recovery/device-loss-fanout.d.ts.map +1 -1
- package/dist/assembly/recovery/failure-location.d.ts +12 -0
- package/dist/assembly/recovery/failure-location.d.ts.map +1 -0
- package/dist/assembly/recovery/recovery-attempt.d.ts +1 -6
- package/dist/assembly/recovery/recovery-attempt.d.ts.map +1 -1
- package/dist/assembly/recovery/renderer-recover.d.ts +7 -4
- package/dist/assembly/recovery/renderer-recover.d.ts.map +1 -1
- package/dist/assembly/renderer-facade.d.ts.map +1 -1
- package/dist/assembly/renderer-feature-inspection.d.ts +5 -0
- package/dist/assembly/renderer-feature-inspection.d.ts.map +1 -0
- package/dist/assembly/renderer-frame-transaction.d.ts +19 -0
- package/dist/assembly/renderer-frame-transaction.d.ts.map +1 -1
- package/dist/assembly/renderer-helpers.d.ts +3 -0
- package/dist/assembly/renderer-helpers.d.ts.map +1 -1
- package/dist/assembly/renderer-inspection.d.ts +4 -0
- package/dist/assembly/renderer-inspection.d.ts.map +1 -1
- package/dist/assembly/shader-prewarm-policy.d.ts +7 -1
- package/dist/assembly/shader-prewarm-policy.d.ts.map +1 -1
- package/dist/assembly/skin-palette-owner.d.ts +8 -0
- package/dist/assembly/skin-palette-owner.d.ts.map +1 -0
- package/dist/assembly/ssr-shader-prewarm.d.ts +6 -0
- package/dist/assembly/ssr-shader-prewarm.d.ts.map +1 -0
- package/dist/assembly/webgpu-device-loss.d.ts +15 -0
- package/dist/assembly/webgpu-device-loss.d.ts.map +1 -0
- package/dist/assembly/webgpu-pbr-ready.d.ts +38 -0
- package/dist/assembly/webgpu-pbr-ready.d.ts.map +1 -0
- package/dist/assembly/webgpu-ready-mipmap.d.ts +11 -0
- package/dist/assembly/webgpu-ready-mipmap.d.ts.map +1 -0
- package/dist/assembly/webgpu-ready.d.ts +7 -3
- package/dist/assembly/webgpu-ready.d.ts.map +1 -1
- package/dist/assembly/webgpu-renderer-bootstrap.d.ts +10 -0
- package/dist/assembly/webgpu-renderer-bootstrap.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer-contract.d.ts +62 -0
- package/dist/assembly/webgpu-renderer-contract.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer-guards.d.ts +9 -0
- package/dist/assembly/webgpu-renderer-guards.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer-observation.d.ts +6 -0
- package/dist/assembly/webgpu-renderer-observation.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer-recovery-failure.d.ts +12 -0
- package/dist/assembly/webgpu-renderer-recovery-failure.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer.d.ts +7 -141
- package/dist/assembly/webgpu-renderer.d.ts.map +1 -1
- package/dist/assembly/webgpu-vertex-layouts.d.ts +28 -84
- package/dist/assembly/webgpu-vertex-layouts.d.ts.map +1 -1
- package/dist/authoring.mjs +2 -2
- package/dist/capture/scene-projection.d.ts +41 -0
- package/dist/capture/scene-projection.d.ts.map +1 -0
- package/dist/{chunk-J52NMQKR.mjs → chunk-7MQ3XBSP.mjs} +1098 -844
- package/dist/chunk-7MQ3XBSP.mjs.map +1 -0
- package/dist/{chunk-GF523LHF.mjs → chunk-BLXGONR2.mjs} +30 -12
- package/dist/chunk-BLXGONR2.mjs.map +1 -0
- package/dist/{chunk-VSL23LZE.mjs → chunk-C3DDSXYK.mjs} +1188 -463
- package/dist/chunk-C3DDSXYK.mjs.map +1 -0
- package/dist/{chunk-IQMKJLNU.mjs → chunk-FUUO4UND.mjs} +443 -30
- package/dist/chunk-FUUO4UND.mjs.map +1 -0
- package/dist/{chunk-J6KACNOH.mjs → chunk-JRBDO2KB.mjs} +617 -7
- package/dist/chunk-JRBDO2KB.mjs.map +1 -0
- package/dist/{chunk-GE3SDD72.mjs → chunk-MDQJPY3T.mjs} +20 -40
- package/dist/chunk-MDQJPY3T.mjs.map +1 -0
- package/dist/{chunk-MYJ5RPJO.mjs → chunk-NO4WZCAH.mjs} +3 -3
- package/dist/chunk-NO4WZCAH.mjs.map +1 -0
- package/dist/{chunk-RBDBZ5R7.mjs → chunk-PA5DRJNI.mjs} +2 -2
- package/dist/chunk-PA5DRJNI.mjs.map +1 -0
- package/dist/{chunk-MBU4ZVE7.mjs → chunk-PSEQ6QPH.mjs} +4655 -892
- package/dist/chunk-PSEQ6QPH.mjs.map +1 -0
- package/dist/{chunk-JAASCMXA.mjs → chunk-S5UE2T5P.mjs} +289 -41
- package/dist/chunk-S5UE2T5P.mjs.map +1 -0
- package/dist/components/camera.d.ts +62 -2
- package/dist/components/camera.d.ts.map +1 -1
- package/dist/components/directional-light.d.ts +2 -2
- package/dist/components/dynamic-resolution.d.ts +15 -0
- package/dist/components/dynamic-resolution.d.ts.map +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/instances.d.ts +6 -20
- package/dist/components/instances.d.ts.map +1 -1
- package/dist/components/light-helpers.d.ts.map +1 -1
- package/dist/components/reflection-probe.d.ts +1 -0
- package/dist/components/reflection-probe.d.ts.map +1 -1
- package/dist/components/scene-instance.d.ts +2 -1
- package/dist/components/scene-instance.d.ts.map +1 -1
- package/dist/components/screen-space-reflection.d.ts +14 -0
- package/dist/components/screen-space-reflection.d.ts.map +1 -0
- package/dist/components/skylight.d.ts +4 -1
- package/dist/components/skylight.d.ts.map +1 -1
- package/dist/construct-renderer.mjs +14809 -7570
- package/dist/construct-renderer.mjs.map +1 -1
- package/dist/device/device-scope.d.ts +2 -0
- package/dist/device/device-scope.d.ts.map +1 -1
- package/dist/device/gpu-residency.d.ts +3 -14
- package/dist/device/gpu-residency.d.ts.map +1 -1
- package/dist/dynamic-geometry.d.ts.map +1 -1
- package/dist/environment/background.d.ts +7 -0
- package/dist/environment/background.d.ts.map +1 -0
- package/dist/environment/ibl.d.ts +11 -0
- package/dist/environment/ibl.d.ts.map +1 -0
- package/dist/environment/storage.d.ts +14 -0
- package/dist/environment/storage.d.ts.map +1 -0
- package/dist/errors/gpu-driven.d.ts +6 -3
- package/dist/errors/gpu-driven.d.ts.map +1 -1
- package/dist/errors/render.d.ts +41 -4
- package/dist/errors/render.d.ts.map +1 -1
- package/dist/extract/camera.d.ts.map +1 -1
- package/dist/extract/contracts.d.ts +7 -0
- package/dist/extract/contracts.d.ts.map +1 -1
- package/dist/extract/gpu-driven.d.ts +50 -3
- package/dist/extract/gpu-driven.d.ts.map +1 -1
- package/dist/features/host.d.ts +23 -1
- package/dist/features/host.d.ts.map +1 -1
- package/dist/features/noise-texture.d.ts +17 -0
- package/dist/features/noise-texture.d.ts.map +1 -0
- package/dist/features/plan.d.ts +83 -2
- package/dist/features/plan.d.ts.map +1 -1
- package/dist/features/prepared-gpu-work.d.ts +37 -4
- package/dist/features/prepared-gpu-work.d.ts.map +1 -1
- package/dist/features/prepared-graphics-store.d.ts.map +1 -1
- package/dist/features/prepared-graphics.d.ts +5 -0
- package/dist/features/prepared-graphics.d.ts.map +1 -1
- package/dist/features/render-graph-compute.d.ts +5 -3
- package/dist/features/render-graph-compute.d.ts.map +1 -1
- package/dist/features/render-graph-contribution.d.ts +11 -3
- package/dist/features/render-graph-contribution.d.ts.map +1 -1
- package/dist/features/render-graph-raster.d.ts +19 -3
- package/dist/features/render-graph-raster.d.ts.map +1 -1
- package/dist/features/types.d.ts +11 -0
- package/dist/features/types.d.ts.map +1 -1
- package/dist/fullscreen-post-process-pass.d.ts +2 -0
- package/dist/fullscreen-post-process-pass.d.ts.map +1 -1
- package/dist/gpu-driven/batch-topology.d.ts +34 -1
- package/dist/gpu-driven/batch-topology.d.ts.map +1 -1
- package/dist/gpu-driven/material-artifacts.d.ts +24 -0
- package/dist/gpu-driven/material-artifacts.d.ts.map +1 -0
- package/dist/gpu-driven/material-bindings.d.ts +7 -0
- package/dist/gpu-driven/material-bindings.d.ts.map +1 -0
- package/dist/gpu-driven/pbr-program.d.ts +10 -0
- package/dist/gpu-driven/pbr-program.d.ts.map +1 -0
- package/dist/gpu-driven/prepared-draw.d.ts +2 -0
- package/dist/gpu-driven/prepared-draw.d.ts.map +1 -1
- package/dist/gpu-driven/production-raster.d.ts +169 -27
- package/dist/gpu-driven/production-raster.d.ts.map +1 -1
- package/dist/gpu-driven/shadow-views.d.ts +126 -0
- package/dist/gpu-driven/shadow-views.d.ts.map +1 -0
- package/dist/gpu-driven/view-gpu.d.ts +18 -2
- package/dist/gpu-driven/view-gpu.d.ts.map +1 -1
- package/dist/gpu-resource.d.ts +5 -2
- package/dist/gpu-resource.d.ts.map +1 -1
- package/dist/gpu-scene-schema.d.ts +2 -8
- package/dist/gpu-scene-schema.d.ts.map +1 -1
- package/dist/gpu-scene.d.ts +14 -0
- package/dist/gpu-scene.d.ts.map +1 -1
- package/dist/gpu-texture-usage.d.ts +1 -0
- package/dist/gpu-texture-usage.d.ts.map +1 -1
- package/dist/hdrp-buffers.d.ts +9 -0
- package/dist/hdrp-buffers.d.ts.map +1 -1
- package/dist/ibl/IblPipelineCache.d.ts +2 -0
- package/dist/ibl/IblPipelineCache.d.ts.map +1 -1
- package/dist/ibl/frame-resources.d.ts +8 -0
- package/dist/ibl/frame-resources.d.ts.map +1 -0
- package/dist/ibl/skylight-bind-group.d.ts +3 -1
- package/dist/ibl/skylight-bind-group.d.ts.map +1 -1
- package/dist/index.d.ts +87 -75
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +10 -8
- package/dist/index.mjs.map +1 -1
- package/dist/inspection-types.d.ts +180 -1
- package/dist/inspection-types.d.ts.map +1 -1
- package/dist/instances-derived-bounds.d.ts +11 -0
- package/dist/instances-derived-bounds.d.ts.map +1 -1
- package/dist/instances.d.ts +89 -44
- package/dist/instances.d.ts.map +1 -1
- package/dist/internal.d.ts +3 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.mjs +117 -9
- package/dist/internal.mjs.map +1 -1
- package/dist/lifecycle.d.ts +2 -1
- package/dist/lifecycle.d.ts.map +1 -1
- package/dist/material-row.d.ts +15 -0
- package/dist/material-row.d.ts.map +1 -0
- package/dist/materials.d.ts +15 -0
- package/dist/materials.d.ts.map +1 -1
- package/dist/pbr-pipeline.d.ts +23 -5
- package/dist/pbr-pipeline.d.ts.map +1 -1
- package/dist/pipeline/render-extent.d.ts +51 -0
- package/dist/pipeline/render-extent.d.ts.map +1 -0
- package/dist/pipeline/standard-build-context.d.ts +7 -0
- package/dist/pipeline/standard-build-context.d.ts.map +1 -0
- package/dist/pipeline/standard-forward-lane.d.ts +3 -2
- package/dist/pipeline/standard-forward-lane.d.ts.map +1 -1
- package/dist/pipeline/standard-output/auto-exposure/capability.d.ts +12 -0
- package/dist/pipeline/standard-output/auto-exposure/capability.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/gpu.d.ts +70 -0
- package/dist/pipeline/standard-output/auto-exposure/gpu.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/graph.d.ts +75 -0
- package/dist/pipeline/standard-output/auto-exposure/graph.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/inspection.d.ts +111 -0
- package/dist/pipeline/standard-output/auto-exposure/inspection.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/oracle.d.ts +16 -0
- package/dist/pipeline/standard-output/auto-exposure/oracle.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/preset.d.ts +14 -0
- package/dist/pipeline/standard-output/auto-exposure/preset.d.ts.map +1 -0
- package/dist/pipeline/standard-output/auto-exposure/state.d.ts +46 -0
- package/dist/pipeline/standard-output/auto-exposure/state.d.ts.map +1 -0
- package/dist/pipeline/standard-output/color-transform.d.ts +27 -0
- package/dist/pipeline/standard-output/color-transform.d.ts.map +1 -0
- package/dist/pipeline/standard-output/graph.d.ts +15 -0
- package/dist/pipeline/standard-output/graph.d.ts.map +1 -0
- package/dist/pipeline/standard-output/lut-admission.d.ts +29 -0
- package/dist/pipeline/standard-output/lut-admission.d.ts.map +1 -0
- package/dist/pipeline/standard-output/lut-gpu.d.ts +48 -0
- package/dist/pipeline/standard-output/lut-gpu.d.ts.map +1 -0
- package/dist/pipeline/standard-output/lut-state.d.ts +68 -0
- package/dist/pipeline/standard-output/lut-state.d.ts.map +1 -0
- package/dist/pipeline/standard-output/resources.d.ts +10 -0
- package/dist/pipeline/standard-output/resources.d.ts.map +1 -0
- package/dist/pipeline/standard-output/types.d.ts +39 -0
- package/dist/pipeline/standard-output/types.d.ts.map +1 -0
- package/dist/pipeline/standard-pipeline.d.ts.map +1 -1
- package/dist/pipeline/standard-post.d.ts +2 -2
- package/dist/pipeline/standard-post.d.ts.map +1 -1
- package/dist/pipeline/standard-profile.d.ts +2 -1
- package/dist/pipeline/standard-profile.d.ts.map +1 -1
- package/dist/pipeline-builder.d.ts +5 -2
- package/dist/pipeline-builder.d.ts.map +1 -1
- package/dist/pipeline-spec-types.d.ts +4 -0
- package/dist/pipeline-spec-types.d.ts.map +1 -1
- package/dist/pipeline-spec.d.ts +1 -9
- package/dist/pipeline-spec.d.ts.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/points-lines/standard-owner.d.ts +1 -1
- package/dist/points-lines/standard-owner.d.ts.map +1 -1
- package/dist/post-process-errors.d.ts +9 -2
- package/dist/post-process-errors.d.ts.map +1 -1
- package/dist/prepare/extended-lighting/resources.d.ts +3 -3
- package/dist/prepare/prepared-graphics-resolver.d.ts +6 -1
- package/dist/prepare/prepared-graphics-resolver.d.ts.map +1 -1
- package/dist/record/dynamic-geometry-consumption.d.ts +15 -0
- package/dist/record/dynamic-geometry-consumption.d.ts.map +1 -0
- package/dist/record/frame-lighting.d.ts +3 -3
- package/dist/record/frame-lighting.d.ts.map +1 -1
- package/dist/record/frame-snapshot.d.ts +109 -13
- package/dist/record/frame-snapshot.d.ts.map +1 -1
- package/dist/record/frame-targets.d.ts.map +1 -1
- package/dist/record/frame.d.ts +41 -5
- package/dist/record/frame.d.ts.map +1 -1
- package/dist/record/main-pass-geometry.d.ts +13 -9
- package/dist/record/main-pass-geometry.d.ts.map +1 -1
- package/dist/record/main-pass-material.d.ts +43 -3
- package/dist/record/main-pass-material.d.ts.map +1 -1
- package/dist/record/main-pass-sprite-draws.d.ts +2 -10
- package/dist/record/main-pass-sprite-draws.d.ts.map +1 -1
- package/dist/record/main-pass.d.ts +14 -2
- package/dist/record/main-pass.d.ts.map +1 -1
- package/dist/record/mesh-ssbo.d.ts +15 -6
- package/dist/record/mesh-ssbo.d.ts.map +1 -1
- package/dist/record/prepared-material-bindings.d.ts +19 -0
- package/dist/record/prepared-material-bindings.d.ts.map +1 -0
- package/dist/record/recovery-pipeline.d.ts +1 -0
- package/dist/record/recovery-pipeline.d.ts.map +1 -1
- package/dist/record/render-context.d.ts +101 -22
- package/dist/record/render-context.d.ts.map +1 -1
- package/dist/record/shadow-pass.d.ts +62 -7
- package/dist/record/shadow-pass.d.ts.map +1 -1
- package/dist/record/skybox-post-pass.d.ts +1 -1
- package/dist/record/skybox-post-pass.d.ts.map +1 -1
- package/dist/record/typed-frame-graph.d.ts +39 -8
- package/dist/record/typed-frame-graph.d.ts.map +1 -1
- package/dist/record/view-ubo.d.ts +1 -0
- package/dist/record/view-ubo.d.ts.map +1 -1
- package/dist/recovery/render-system-candidate.d.ts +10 -2
- package/dist/recovery/render-system-candidate.d.ts.map +1 -1
- package/dist/recovery/render-system-roots.d.ts +11 -0
- package/dist/recovery/render-system-roots.d.ts.map +1 -0
- package/dist/recovery/types.d.ts +76 -0
- package/dist/recovery/types.d.ts.map +1 -0
- package/dist/reflection/background.d.ts +14 -0
- package/dist/reflection/background.d.ts.map +1 -0
- package/dist/reflection/filter.d.ts.map +1 -1
- package/dist/reflection/projection.d.ts +1 -0
- package/dist/reflection/projection.d.ts.map +1 -1
- package/dist/reflection/record-owner.d.ts +4 -4
- package/dist/reflection/record-owner.d.ts.map +1 -1
- package/dist/render-contract.d.ts +211 -53
- package/dist/render-contract.d.ts.map +1 -1
- package/dist/render-graph-primitives.d.ts +1 -0
- package/dist/render-graph-primitives.d.ts.map +1 -1
- package/dist/render-pipeline.d.ts +81 -6
- package/dist/render-pipeline.d.ts.map +1 -1
- package/dist/render-system-extract-tail.d.ts +15 -6
- package/dist/render-system-extract-tail.d.ts.map +1 -1
- package/dist/render-system-extract.d.ts +128 -41
- package/dist/render-system-extract.d.ts.map +1 -1
- package/dist/render-system-projections.d.ts +22 -0
- package/dist/render-system-projections.d.ts.map +1 -0
- package/dist/render-system.d.ts +27 -77
- package/dist/render-system.d.ts.map +1 -1
- package/dist/scene/render-scene-types.d.ts +14 -7
- package/dist/scene/render-scene-types.d.ts.map +1 -1
- package/dist/scene/render-scene.d.ts +31 -11
- package/dist/scene/render-scene.d.ts.map +1 -1
- package/dist/scene/shadow-visibility.d.ts +5 -0
- package/dist/scene/shadow-visibility.d.ts.map +1 -0
- package/dist/ssao-config.d.ts +8 -6
- package/dist/ssao-config.d.ts.map +1 -1
- package/dist/ssr/admission.d.ts +70 -1
- package/dist/ssr/admission.d.ts.map +1 -1
- package/dist/ssr/compose.d.ts +13 -0
- package/dist/ssr/compose.d.ts.map +1 -0
- package/dist/ssr/errors.d.ts +35 -0
- package/dist/ssr/errors.d.ts.map +1 -1
- package/dist/ssr/graph.d.ts +60 -0
- package/dist/ssr/graph.d.ts.map +1 -0
- package/dist/ssr/history.d.ts +97 -0
- package/dist/ssr/history.d.ts.map +1 -0
- package/dist/ssr/hiz.d.ts +37 -0
- package/dist/ssr/hiz.d.ts.map +1 -0
- package/dist/ssr/inspection.d.ts +42 -0
- package/dist/ssr/inspection.d.ts.map +1 -0
- package/dist/ssr/resources.d.ts +58 -0
- package/dist/ssr/resources.d.ts.map +1 -0
- package/dist/ssr/temporal.d.ts +38 -0
- package/dist/ssr/temporal.d.ts.map +1 -0
- package/dist/systems/skin-palette-allocator.d.ts +32 -10
- package/dist/systems/skin-palette-allocator.d.ts.map +1 -1
- package/dist/systems/skin-palette-types.d.ts +15 -0
- package/dist/systems/skin-palette-types.d.ts.map +1 -1
- package/dist/systems/transparent-dispatch.d.ts +9 -0
- package/dist/systems/transparent-dispatch.d.ts.map +1 -0
- package/dist/targets/material-source.d.ts +7 -0
- package/dist/targets/material-source.d.ts.map +1 -1
- package/dist/temporal/frame-coordinator.d.ts +7 -0
- package/dist/temporal/frame-coordinator.d.ts.map +1 -1
- package/dist/temporal/gpu.d.ts +8 -0
- package/dist/temporal/gpu.d.ts.map +1 -1
- package/dist/temporal/history.d.ts.map +1 -1
- package/dist/temporal/index.mjs +6 -6
- package/dist/temporal/inspection.d.ts.map +1 -1
- package/dist/temporal/standard-scene-data.d.ts +4 -2
- package/dist/temporal/standard-scene-data.d.ts.map +1 -1
- package/dist/temporal/target-coverage-attachment.d.ts +15 -0
- package/dist/temporal/target-coverage-attachment.d.ts.map +1 -0
- package/dist/temporal/temporal-view.d.ts +6 -0
- package/dist/temporal/temporal-view.d.ts.map +1 -1
- package/dist/temporal/view.d.ts +6 -0
- package/dist/temporal/view.d.ts.map +1 -1
- package/dist/typed-render-graph-primitives.d.ts +41 -1
- package/dist/typed-render-graph-primitives.d.ts.map +1 -1
- package/dist/typed-shadow-passes.d.ts +3 -1
- package/dist/typed-shadow-passes.d.ts.map +1 -1
- package/dist/volume/component.d.ts +1 -0
- package/dist/volume/component.d.ts.map +1 -1
- package/dist/volume/temporal.d.ts +6 -0
- package/dist/volume/temporal.d.ts.map +1 -1
- package/package.json +21 -20
- package/src/__tests__/auto-exposure-gpu-evidence.ts +291 -0
- package/src/__tests__/auto-exposure-inspection.unit.test.ts +80 -0
- package/src/__tests__/auto-exposure-transaction.integration.test.ts +99 -0
- package/src/__tests__/auto-exposure.browser.test.ts +33 -0
- package/src/__tests__/auto-exposure.dawn.test.ts +33 -0
- package/src/__tests__/capture-scene-projection.unit.test.ts +24 -0
- package/src/__tests__/detached-inspection.integration.test.ts +5 -0
- package/src/__tests__/device-feature-admission.unit.test.ts +15 -24
- package/src/__tests__/device-loss-fanout.unit.test.ts +43 -0
- package/src/__tests__/device-scope-lifecycle.unit.test.ts +18 -0
- package/src/__tests__/device-scope-stale-matrix.unit.test.ts +18 -0
- package/src/__tests__/docs-gate-green.unit.test.ts +3 -3
- package/src/__tests__/dynamic-geometry-batch.unit.test.ts +157 -0
- package/src/__tests__/dynamic-geometry.unit.test.ts +36 -0
- package/src/__tests__/dynamic-resolution-plugin.integration.test.ts +81 -0
- package/src/__tests__/factory-contract.integration.test.ts +231 -9
- package/src/__tests__/fallback-row-stride-surface.unit.test.ts +19 -0
- package/src/__tests__/feature-depth-input.dawn.test.ts +121 -0
- package/src/__tests__/feature-noise.unit.test.ts +38 -0
- package/src/__tests__/fixtures/taa-resolve-pinned-baseline.wgsl +301 -0
- package/src/__tests__/frame-camera-selection.unit.test.ts +131 -0
- package/src/__tests__/frame-observation.contract.test.ts +21 -0
- package/src/__tests__/frame-plan-contract.unit.test.ts +24 -0
- package/src/__tests__/frame-targets.unit.test.ts +24 -0
- package/src/__tests__/fullscreen-feature-plan.unit.test.ts +3 -0
- package/src/__tests__/gpu-driven-baseline.characterization.test.ts +79 -0
- package/src/__tests__/gpu-driven-batch-topology-pbr.unit.test.ts +307 -7
- package/src/__tests__/gpu-driven-indirect-raster-evidence.ts +122 -142
- package/src/__tests__/gpu-driven-indirect-raster.browser.test.ts +10 -1
- package/src/__tests__/gpu-driven-lod-cache.unit.test.ts +261 -0
- package/src/__tests__/gpu-driven-mesh-world-identity.unit.test.ts +346 -0
- package/src/__tests__/gpu-driven-pbr.dawn.test.ts +1422 -0
- package/src/__tests__/gpu-driven-pbr.integration.test.ts +21 -0
- package/src/__tests__/gpu-driven-production-fixture.ts +96 -0
- package/src/__tests__/gpu-driven-production.integration.test.ts +1076 -106
- package/src/__tests__/gpu-driven-scaling.unit.test.ts +1 -3
- package/src/__tests__/gpu-driven-shadow-views.browser.test.ts +63 -0
- package/src/__tests__/gpu-driven-shadow-views.dawn.test.ts +294 -0
- package/src/__tests__/gpu-driven-shadow-views.integration.test.ts +97 -0
- package/src/__tests__/gpu-driven-shadow-views.unit.test.ts +168 -0
- package/src/__tests__/gpu-driven-skin-contract.test-d.ts +11 -0
- package/src/__tests__/gpu-driven-view-gpu-evidence.ts +72 -20
- package/src/__tests__/gpu-driven-view-graph.integration.test.ts +30 -9
- package/src/__tests__/gpu-driven-view.unit.test.ts +160 -52
- package/src/__tests__/gpu-pass-timing-browser-runner.ts +15 -0
- package/src/__tests__/gpu-pass-timing.browser.test.ts +20 -2
- package/src/__tests__/gpu-resource-scope.unit.test.ts +71 -0
- package/src/__tests__/gpu-resource-store-stride.unit.test.ts +42 -0
- package/src/__tests__/gpu-scene-render-graph-gpu.ts +19 -5
- package/src/__tests__/gpu-scene.dawn.test.ts +40 -13
- package/src/__tests__/gpu-scene.unit.test.ts +613 -33
- package/src/__tests__/instances-culling.integration.test.ts +36 -10
- package/src/__tests__/instances-derived-bounds.unit.test.ts +54 -0
- package/src/__tests__/instances-store.unit.test.ts +242 -39
- package/src/__tests__/ktx2-basis-gpu-consumer.dawn.test.ts +6 -0
- package/src/__tests__/lighting-scene-roundtrip.integration.test.ts +13 -16
- package/src/__tests__/lut-lkg-transaction.integration.test.ts +122 -0
- package/src/__tests__/material-contract-inventory.unit.test.ts +5 -6
- package/src/__tests__/material-dispatch-shader-id.unit.test.ts +51 -0
- package/src/__tests__/material-lane-selection.unit.test.ts +60 -0
- package/src/__tests__/material-numeric-upload.unit.test.ts +53 -0
- package/src/__tests__/material-texture-handles.unit.test.ts +18 -0
- package/src/__tests__/material-texture-source.unit.test.ts +87 -0
- package/src/__tests__/materials-authoring-validation.unit.test.ts +41 -0
- package/src/__tests__/materials-standard-contract.unit.test.ts +57 -3
- package/src/__tests__/mesh-buffer-usage-surface.unit.test.ts +4 -0
- package/src/__tests__/mesh-submission-lifetime.unit.test.ts +8 -0
- package/src/__tests__/morph-neutral-admission.unit.test.ts +19 -0
- package/src/__tests__/normal-fallback.dawn.test.ts +122 -0
- package/src/__tests__/particle-material-input-layout.unit.test.ts +104 -0
- package/src/__tests__/physical-clearcoat.integration.test.ts +42 -3
- package/src/__tests__/pipeline-texture-specialization.unit.test.ts +138 -0
- package/src/__tests__/point-shadow-inspection.unit.test.ts +2 -0
- package/src/__tests__/post-process-error-policy-owner.unit.test.ts +6 -5
- package/src/__tests__/prepared-gpu-driven-pbr-contract.test-d.ts +31 -0
- package/src/__tests__/prepared-gpu-driven-pbr-contract.unit.test.ts +39 -0
- package/src/__tests__/prepared-gpu-driven-pbr.integration.test.ts +251 -9
- package/src/__tests__/prepared-graphics-capability.unit.test.ts +21 -0
- package/src/__tests__/prepared-graphics-pipeline-warmup.unit.test.ts +6 -2
- package/src/__tests__/profiler-phase-catalog.test.ts +5 -0
- package/src/__tests__/public-surface.test-d.ts +3 -0
- package/src/__tests__/recovery-candidate-prepare.contract.test.ts +30 -12
- package/src/__tests__/reflection-fallback-async-publication.unit.test.ts +171 -0
- package/src/__tests__/reflection-probe-authoring.unit.test.ts +12 -10
- package/src/__tests__/reflection-probe-box.dawn.test.ts +71 -0
- package/src/__tests__/reflection-probe-filter.unit.test.ts +9 -0
- package/src/__tests__/reflection-probe-orientation.dawn.test.ts +294 -0
- package/src/__tests__/reflection-probe-record-owner.characterization.unit.test.ts +5 -14
- package/src/__tests__/reflection-probe-updates.unit.test.ts +129 -0
- package/src/__tests__/render-error-code-owner.test-d.ts +7 -0
- package/src/__tests__/render-error-detail-ssot.test-d.ts +27 -1
- package/src/__tests__/render-error-exhaustive.test-d.ts +15 -0
- package/src/__tests__/render-extent.unit.test.ts +63 -0
- package/src/__tests__/render-feature-gpu-work.integration.test.ts +285 -2
- package/src/__tests__/render-feature-plan.unit.test.ts +245 -0
- package/src/__tests__/render-feature-shadow-order.unit.test.ts +228 -0
- package/src/__tests__/render-feature-zero-work.unit.test.ts +35 -1
- package/src/__tests__/render-graph-fallback.integration.test.ts +2 -2
- package/src/__tests__/render-owner-cohesion.unit.test.ts +55 -0
- package/src/__tests__/render-scene-mixed-updates.integration.test.ts +426 -0
- package/src/__tests__/render-scene-projection.unit.test.ts +915 -23
- package/src/__tests__/render-scene-resource-updates.integration.test.ts +214 -0
- package/src/__tests__/render-scene-skin-lifecycle.integration.test.ts +173 -0
- package/src/__tests__/render-scene-temporal-retry.unit.test.ts +133 -0
- package/src/__tests__/render-target-material-source.test-d.ts +27 -3
- package/src/__tests__/renderer-factory-material-contract.unit.test.ts +233 -9
- package/src/__tests__/renderer-frame-transaction.integration.test.ts +923 -5
- package/src/__tests__/shader-manifest-fixture.ts +45 -0
- package/src/__tests__/skin-motion-regression.unit.test.ts +0 -33
- package/src/__tests__/skin-palette-persistent.integration.test.ts +28 -0
- package/src/__tests__/skin-palette-persistent.unit.test.ts +247 -0
- package/src/__tests__/skinned-shadow-caster.test.ts +125 -14
- package/src/__tests__/specular-environment-scale.dawn.test.ts +158 -0
- package/src/__tests__/ssao-config.unit.test.ts +7 -0
- package/src/__tests__/ssao-surface.dawn.test.ts +252 -0
- package/src/__tests__/ssr-admission-matrix.integration.test.ts +7 -1
- package/src/__tests__/ssr-confidence-compose.unit.test.ts +84 -0
- package/src/__tests__/ssr-coordinate-oracle.unit.test.ts +28 -0
- package/src/__tests__/ssr-cube-silhouette.dawn.test.ts +270 -0
- package/src/__tests__/ssr-format-probe-gating.integration.test.ts +82 -0
- package/src/__tests__/ssr-gpu-dispatch.browser.test.ts +99 -0
- package/src/__tests__/ssr-gpu-dispatch.dawn.test.ts +116 -0
- package/src/__tests__/ssr-gpu-dispatch.ts +951 -0
- package/src/__tests__/ssr-graph-topology.unit.test.ts +104 -0
- package/src/__tests__/ssr-history-filter.dawn.test.ts +198 -0
- package/src/__tests__/ssr-hit-color.dawn.test.ts +273 -0
- package/src/__tests__/ssr-hiz-odd-reduction.dawn.test.ts +569 -0
- package/src/__tests__/ssr-hiz-rescue.dawn.test.ts +279 -0
- package/src/__tests__/ssr-hiz.browser.test.ts +150 -0
- package/src/__tests__/ssr-hiz.dawn.test.ts +150 -0
- package/src/__tests__/ssr-hiz.unit.test.ts +56 -0
- package/src/__tests__/ssr-inspection.unit.test.ts +105 -0
- package/src/__tests__/ssr-memory-budget.unit.test.ts +45 -0
- package/src/__tests__/ssr-performance-sequence-aggregation.unit.test.ts +15 -0
- package/src/__tests__/ssr-public-surface.test-d.ts +37 -0
- package/src/__tests__/ssr-receiver-coverage.dawn.test.ts +387 -0
- package/src/__tests__/ssr-reflection-mip-reducer.dawn.test.ts +309 -0
- package/src/__tests__/ssr-reprojection-probe.ts +90 -0
- package/src/__tests__/ssr-roughness-mip.dawn.test.ts +163 -0
- package/src/__tests__/ssr-shader-prewarm.unit.test.ts +59 -0
- package/src/__tests__/ssr-spatial.integration.test.ts +141 -0
- package/src/__tests__/ssr-stable-lattice.dawn.test.ts +475 -0
- package/src/__tests__/ssr-temporal-history.unit.test.ts +202 -0
- package/src/__tests__/ssr-texel-crossing.dawn.test.ts +448 -0
- package/src/__tests__/ssr-zero-work.integration.test.ts +87 -0
- package/src/__tests__/standard-cluster-variant-resolution.unit.test.ts +84 -12
- package/src/__tests__/standard-clustered-pipeline.unit.test.ts +29 -0
- package/src/__tests__/standard-output-chain-contract.unit.test.ts +99 -0
- package/src/__tests__/standard-output-chain.integration.test.ts +73 -0
- package/src/__tests__/standard-output-gpu-evidence.ts +205 -0
- package/src/__tests__/standard-output.browser.test.ts +15 -0
- package/src/__tests__/standard-output.dawn.test.ts +15 -0
- package/src/__tests__/standard-pbr-artifact-assembly.unit.test.ts +275 -0
- package/src/__tests__/standard-pipeline.integration.test.ts +320 -3
- package/src/__tests__/standard-profile-oracle.unit.test.ts +49 -0
- package/src/__tests__/standard-surface-lighting.unit.test.ts +41 -0
- package/src/__tests__/standard-texture-specialization.dawn.test.ts +141 -0
- package/src/__tests__/surface-adjacent-regressions.integration.test.ts +6 -3
- package/src/__tests__/taa-coverage-edge.dawn.test.ts +199 -0
- package/src/__tests__/taa-history-clipping.dawn.test.ts +328 -0
- package/src/__tests__/taa-neighborhood-equivalence.dawn.test.ts +782 -0
- package/src/__tests__/taa-stability-feedback.browser.test.ts +23 -0
- package/src/__tests__/taa-stability-feedback.dawn.test.ts +68 -0
- package/src/__tests__/taa-stability-feedback.ts +342 -0
- package/src/__tests__/temporal-history-lifecycle.unit.test.ts +49 -7
- package/src/__tests__/temporal-reset-matrix.unit.test.ts +9 -0
- package/src/__tests__/temporal-transaction.integration.test.ts +28 -0
- package/src/__tests__/temporal-view.unit.test.ts +17 -0
- package/src/__tests__/texture-usage-surface.unit.test.ts +4 -2
- package/src/__tests__/transmission-prewarm.unit.test.ts +57 -0
- package/src/__tests__/typed-pipeline-topology.unit.test.ts +109 -4
- package/src/__tests__/typed-scene-pass-material-cache.integration.test.ts +126 -0
- package/src/__tests__/vertex-layouts-ssot.unit.test.ts +47 -0
- package/src/__tests__/visibility-extract.perf.test.ts +20 -8
- package/src/__tests__/visibility-instances.integration.test.ts +19 -7
- package/src/__tests__/visibility-producer-matrix.integration.test.ts +20 -9
- package/src/__tests__/volumetric-fog-stage-readback.dawn.test.ts +62 -13
- package/src/__tests__/volumetric-fog-topology.unit.test.ts +7 -7
- package/src/assembly/atmosphere-shader-prewarm.ts +39 -0
- package/src/assembly/device-feature-admission.ts +9 -4
- package/src/assembly/dynamic-geometry-host.ts +284 -163
- package/src/assembly/dynamic-geometry-runtime.ts +71 -0
- package/src/assembly/factory.ts +4 -0
- package/src/assembly/gpu-driven-owner.ts +29 -0
- package/src/assembly/host-contract.ts +19 -0
- package/src/assembly/material/assembly.ts +383 -1
- package/src/assembly/material/pipeline-helpers.ts +100 -0
- package/src/assembly/material-shader-policy.ts +110 -46
- package/src/assembly/recovery/device-loss-fanout.ts +5 -0
- package/src/assembly/recovery/failure-location.ts +62 -0
- package/src/assembly/recovery/recovery-attempt.ts +2 -29
- package/src/assembly/recovery/renderer-recover.ts +16 -17
- package/src/assembly/renderer-facade.ts +34 -1
- package/src/assembly/renderer-feature-inspection.ts +13 -0
- package/src/assembly/renderer-frame-transaction.ts +63 -0
- package/src/assembly/renderer-helpers.ts +26 -0
- package/src/assembly/renderer-inspection.ts +6 -0
- package/src/assembly/shader-prewarm-policy.ts +46 -1
- package/src/assembly/skin-palette-owner.ts +21 -0
- package/src/assembly/ssr-shader-prewarm.ts +41 -0
- package/src/assembly/webgpu-device-loss.ts +75 -0
- package/src/assembly/webgpu-pbr-ready.ts +232 -0
- package/src/assembly/webgpu-ready-mipmap.ts +26 -0
- package/src/assembly/webgpu-ready.ts +161 -131
- package/src/assembly/webgpu-renderer-bootstrap.ts +85 -0
- package/src/assembly/webgpu-renderer-contract.ts +69 -0
- package/src/assembly/webgpu-renderer-guards.ts +32 -0
- package/src/assembly/webgpu-renderer-observation.ts +43 -0
- package/src/assembly/webgpu-renderer-recovery-failure.ts +62 -0
- package/src/assembly/webgpu-renderer.ts +744 -730
- package/src/assembly/webgpu-vertex-layouts.ts +233 -87
- package/src/capture/scene-projection.ts +37 -0
- package/src/components/__tests__/camera-exposure.contract.unit.test.ts +153 -0
- package/src/components/__tests__/dynamic-resolution-schema.unit.test.ts +65 -0
- package/src/components/__tests__/light-radius.integration.test.ts +59 -0
- package/src/components/camera.ts +287 -7
- package/src/components/directional-light.ts +3 -3
- package/src/components/dynamic-resolution.ts +67 -0
- package/src/components/index.ts +2 -0
- package/src/components/instances.ts +45 -18
- package/src/components/light-helpers.ts +6 -1
- package/src/components/reflection-probe.ts +1 -0
- package/src/components/scene-instance.ts +2 -1
- package/src/components/screen-space-reflection.ts +21 -0
- package/src/components/skylight.ts +4 -1
- package/src/components/sprite-animation.ts +2 -2
- package/src/components/sprite-instances.ts +1 -1
- package/src/device/device-scope.ts +13 -7
- package/src/device/gpu-residency.ts +45 -42
- package/src/dynamic-geometry.ts +13 -8
- package/src/environment/background.ts +281 -0
- package/src/environment/ibl.ts +211 -0
- package/src/environment/storage.ts +63 -0
- package/src/errors/gpu-driven.ts +49 -8
- package/src/errors/render.ts +91 -3
- package/src/extract/camera.ts +37 -1
- package/src/extract/contracts.ts +10 -0
- package/src/extract/gpu-driven.ts +240 -10
- package/src/features/host.ts +237 -19
- package/src/features/noise-texture.ts +91 -0
- package/src/features/plan.ts +553 -24
- package/src/features/prepared-gpu-work.ts +631 -49
- package/src/features/prepared-graphics-store.ts +31 -0
- package/src/features/prepared-graphics.ts +5 -0
- package/src/features/render-graph-compute.ts +41 -8
- package/src/features/render-graph-contribution.ts +141 -3
- package/src/features/render-graph-raster.ts +143 -30
- package/src/features/types.ts +11 -0
- package/src/fullscreen-post-process-pass.ts +3 -0
- package/src/gpu-driven/batch-topology.ts +452 -108
- package/src/gpu-driven/material-artifacts.ts +179 -0
- package/src/gpu-driven/material-bindings.ts +41 -0
- package/src/gpu-driven/pbr-program.ts +31 -0
- package/src/gpu-driven/prepared-draw.ts +42 -6
- package/src/gpu-driven/production-raster.ts +2806 -716
- package/src/gpu-driven/shadow-views.ts +539 -0
- package/src/gpu-driven/view-gpu.ts +188 -41
- package/src/gpu-resource.ts +21 -2
- package/src/gpu-scene-schema.ts +61 -11
- package/src/gpu-scene.ts +197 -99
- package/src/gpu-texture-usage.ts +1 -0
- package/src/hdrp-buffers.ts +141 -36
- package/src/ibl/IblPipelineCache.ts +5 -0
- package/src/ibl/frame-resources.ts +38 -0
- package/src/ibl/skylight-bind-group.ts +32 -21
- package/src/index.ts +194 -75
- package/src/inspection-types.ts +207 -1
- package/src/instances-derived-bounds.ts +258 -34
- package/src/instances.ts +459 -150
- package/src/internal.ts +22 -0
- package/src/lifecycle.ts +2 -0
- package/src/material-row.ts +194 -0
- package/src/materials.ts +44 -8
- package/src/pbr-pipeline.ts +172 -19
- package/src/pipeline/render-extent.ts +111 -0
- package/src/pipeline/standard-build-context.ts +7 -0
- package/src/pipeline/standard-forward-lane.ts +74 -29
- package/src/pipeline/standard-output/__tests__/lut-admission.unit.test.ts +103 -0
- package/src/pipeline/standard-output/auto-exposure/__tests__/capability.unit.test.ts +40 -0
- package/src/pipeline/standard-output/auto-exposure/__tests__/gpu.contract.unit.test.ts +125 -0
- package/src/pipeline/standard-output/auto-exposure/__tests__/graph.contract.unit.test.ts +94 -0
- package/src/pipeline/standard-output/auto-exposure/__tests__/oracle.test.ts +108 -0
- package/src/pipeline/standard-output/auto-exposure/__tests__/preset.test.ts +26 -0
- package/src/pipeline/standard-output/auto-exposure/capability.ts +38 -0
- package/src/pipeline/standard-output/auto-exposure/gpu.ts +567 -0
- package/src/pipeline/standard-output/auto-exposure/graph.ts +221 -0
- package/src/pipeline/standard-output/auto-exposure/inspection.ts +231 -0
- package/src/pipeline/standard-output/auto-exposure/oracle.ts +291 -0
- package/src/pipeline/standard-output/auto-exposure/preset.ts +28 -0
- package/src/pipeline/standard-output/auto-exposure/state.ts +156 -0
- package/src/pipeline/standard-output/color-transform.ts +124 -0
- package/src/pipeline/standard-output/graph.ts +139 -0
- package/src/pipeline/standard-output/lut-admission.ts +121 -0
- package/src/pipeline/standard-output/lut-gpu.ts +399 -0
- package/src/pipeline/standard-output/lut-state.ts +176 -0
- package/src/pipeline/standard-output/resources.ts +121 -0
- package/src/pipeline/standard-output/types.ts +58 -0
- package/src/pipeline/standard-pipeline.ts +232 -70
- package/src/pipeline/standard-post.ts +190 -27
- package/src/pipeline/standard-profile.ts +2 -1
- package/src/pipeline-builder.ts +28 -9
- package/src/pipeline-spec-types.ts +4 -0
- package/src/pipeline-spec.ts +37 -29
- package/src/plugin.ts +4 -0
- package/src/points-lines/standard-owner.ts +6 -14
- package/src/post-process-errors.ts +26 -18
- package/src/prepare/__tests__/extended-lighting-capability.unit.test.ts +2 -2
- package/src/prepare/extended-lighting/resources.ts +3 -3
- package/src/prepare/prepared-graphics-resolver.ts +9 -2
- package/src/record/__tests__/main-pass-geometry.unit.test.ts +68 -0
- package/src/record/__tests__/material-bg-cache.unit.test.ts +45 -0
- package/src/record/__tests__/material-slot-plan.unit.test.ts +57 -0
- package/src/record/__tests__/mesh-ssbo.unit.test.ts +40 -1
- package/src/record/__tests__/recovery-pipeline.unit.test.ts +20 -1
- package/src/record/__tests__/sprite-material-abi.unit.test.ts +41 -6
- package/src/record/__tests__/temporal-payload.unit.test.ts +2 -0
- package/src/record/__tests__/typed-frame-graph-plan.unit.test.ts +45 -0
- package/src/record/__tests__/view-ubo-layout.unit.test.ts +5 -0
- package/src/record/dynamic-geometry-consumption.ts +59 -0
- package/src/record/frame-lighting.ts +15 -12
- package/src/record/frame-snapshot.ts +146 -34
- package/src/record/frame-targets.ts +9 -0
- package/src/record/frame.ts +838 -170
- package/src/record/main-pass-geometry.ts +209 -103
- package/src/record/main-pass-material.ts +157 -40
- package/src/record/main-pass-sprite-draws.ts +16 -107
- package/src/record/main-pass.ts +141 -12
- package/src/record/material-uniforms.ts +1 -1
- package/src/record/mesh-ssbo.ts +59 -15
- package/src/record/prepared-material-bindings.ts +238 -0
- package/src/record/recovery-pipeline.ts +69 -90
- package/src/record/render-context.ts +123 -24
- package/src/record/shadow-pass.ts +1389 -230
- package/src/record/skybox-post-pass.ts +14 -3
- package/src/record/typed-frame-graph.ts +1064 -47
- package/src/record/view-ubo.ts +12 -1
- package/src/recovery/render-system-candidate.ts +135 -68
- package/src/recovery/render-system-roots.ts +113 -0
- package/src/recovery/types.ts +77 -0
- package/src/reflection/background.ts +151 -0
- package/src/reflection/filter.ts +3 -0
- package/src/reflection/projection.ts +16 -6
- package/src/reflection/record-owner.ts +308 -140
- package/src/render-contract.ts +237 -49
- package/src/render-graph-primitives.ts +34 -5
- package/src/render-pipeline.ts +90 -2
- package/src/render-system-extract-tail.ts +431 -162
- package/src/render-system-extract.ts +478 -119
- package/src/render-system-projections.ts +241 -0
- package/src/render-system.ts +715 -828
- package/src/scene/render-scene-types.ts +13 -4
- package/src/scene/render-scene.ts +577 -355
- package/src/scene/shadow-visibility.ts +21 -0
- package/src/ssao-config.ts +25 -8
- package/src/ssr/admission.ts +380 -14
- package/src/ssr/compose.ts +144 -0
- package/src/ssr/errors.ts +48 -0
- package/src/ssr/graph.ts +797 -0
- package/src/ssr/history.ts +436 -0
- package/src/ssr/hiz.ts +124 -0
- package/src/ssr/inspection.ts +124 -0
- package/src/ssr/resources.ts +202 -0
- package/src/ssr/temporal.ts +164 -0
- package/src/systems/skin-palette-allocator.ts +495 -148
- package/src/systems/skin-palette-types.ts +17 -0
- package/src/systems/transparent-dispatch.ts +90 -0
- package/src/targets/material-source.ts +34 -0
- package/src/temporal/coverage.ts +1 -1
- package/src/temporal/frame-coordinator.ts +23 -2
- package/src/temporal/gpu.ts +79 -12
- package/src/temporal/history.ts +3 -1
- package/src/temporal/inspection.ts +2 -1
- package/src/temporal/standard-scene-data.ts +10 -2
- package/src/temporal/target-coverage-attachment.ts +72 -0
- package/src/temporal/temporal-view.ts +11 -2
- package/src/temporal/view.ts +12 -2
- package/src/transmission/__tests__/standard-transmission.dawn.test.ts +219 -139
- package/src/typed-render-graph-primitives.ts +304 -74
- package/src/typed-shadow-passes.ts +122 -12
- package/src/volume/component.ts +1 -0
- package/src/volume/passes.ts +3 -3
- package/src/volume/temporal.ts +10 -0
- package/dist/chunk-GE3SDD72.mjs.map +0 -1
- package/dist/chunk-GF523LHF.mjs.map +0 -1
- package/dist/chunk-IQMKJLNU.mjs.map +0 -1
- package/dist/chunk-J52NMQKR.mjs.map +0 -1
- package/dist/chunk-J6KACNOH.mjs.map +0 -1
- package/dist/chunk-JAASCMXA.mjs.map +0 -1
- package/dist/chunk-MBU4ZVE7.mjs.map +0 -1
- package/dist/chunk-MYJ5RPJO.mjs.map +0 -1
- package/dist/chunk-RBDBZ5R7.mjs.map +0 -1
- package/dist/chunk-VSL23LZE.mjs.map +0 -1
- package/src/__tests__/instances-world-ownership.integration.test.ts +0 -62
- package/src/scene/__tests__/changed-block-summary.candidate.test.ts +0 -36
|
@@ -3,7 +3,7 @@ import type { World } from '@forgeax/engine-ecs';
|
|
|
3
3
|
import type { VertexLayoutProjection } from '@forgeax/engine-geometry';
|
|
4
4
|
import type { Profiler } from '@forgeax/engine-profiler';
|
|
5
5
|
import type { CompiledRenderGraphInfo } from '@forgeax/engine-render-graph';
|
|
6
|
-
import type { BindGroup, BindGroupLayout, Buffer, ComputePipeline, PipelineLayout, Result, RhiCanvasContext, RhiCommandEncoder, RhiDevice, RenderPipeline as RhiRenderPipeline, Sampler, Texture, TextureFormat, TextureView } from '@forgeax/engine-rhi';
|
|
6
|
+
import type { BindGroup, BindGroupLayout, Buffer, ComputePipeline, PipelineLayout, Result, RhiCanvasContext, RhiCommandEncoder, RhiDevice, RenderPipeline as RhiRenderPipeline, Sampler, ShaderModule, Texture, TextureFormat, TextureView } from '@forgeax/engine-rhi';
|
|
7
7
|
import { RhiError } from '@forgeax/engine-rhi';
|
|
8
8
|
import { type MaterialRuntimeArtifact, type MaterialShaderArtifact } from '@forgeax/engine-shader';
|
|
9
9
|
import type { MaterialAsset, MaterialRenderState, ParamSchemaEntry, PassKind, PrimitiveTopology, VertexAttributeMap } from '@forgeax/engine-types';
|
|
@@ -13,6 +13,9 @@ import type { MeshGpuHandles } from '../device/gpu-residency';
|
|
|
13
13
|
import type { EngineMetrics } from '../engine-metrics';
|
|
14
14
|
import type { RenderFeatureHost } from '../features/host';
|
|
15
15
|
import type { RenderFeatureShaderModuleMode } from '../features/types';
|
|
16
|
+
import type { GpuDrivenPbrProgram } from '../gpu-driven/pbr-program';
|
|
17
|
+
import type { GpuDrivenShadowBatchProjection } from '../gpu-driven/production-raster';
|
|
18
|
+
import type { ShadowViewStatePool } from '../gpu-driven/shadow-views';
|
|
16
19
|
import type { SkylightFallback } from '../ibl/skylight-bind-group';
|
|
17
20
|
import type { BloomInspection } from '../inspection-types';
|
|
18
21
|
import type { HealthListenerRegistry, RhiErrorListenerRegistry } from '../lifecycle';
|
|
@@ -24,7 +27,9 @@ import type { PointsLinesInspection } from '../points-lines/inspection';
|
|
|
24
27
|
import type { PointsLinesRecordPlan } from '../points-lines/record';
|
|
25
28
|
import type { ReflectionProbeTable } from '../reflection/gpu-table';
|
|
26
29
|
import type { ReflectionProbeSelectionResult } from '../reflection/projection';
|
|
30
|
+
import type { FrameObservationDomain } from '../render-contract';
|
|
27
31
|
import type { SsrAdmissionIdentity } from '../ssr/identity';
|
|
32
|
+
import type { TypedFrameObservationCapture } from '../typed-render-graph-primitives';
|
|
28
33
|
import type { GpuPassTimingReason } from './gpu-pass-timing/errors';
|
|
29
34
|
import type { GpuPassTimingCapture, GpuPassTimingFrameIdentity, GpuPassTimingSession } from './gpu-pass-timing/session';
|
|
30
35
|
export interface PointsLinesRecordSubmission {
|
|
@@ -41,7 +46,7 @@ export interface ReflectionProbeRecordState {
|
|
|
41
46
|
readonly fallbackProjections?: ReadonlyMap<string, import('../inspection-types').ReflectionFallbackReceipt>;
|
|
42
47
|
/** Demand is derived from this frame's renderable/source selection. */
|
|
43
48
|
readonly fallbackDemand?: boolean;
|
|
44
|
-
/**
|
|
49
|
+
/** Non-neutral sources require a nonzero diagnostic sample when capture is enabled. */
|
|
45
50
|
readonly fallbackHasNonNeutral?: boolean;
|
|
46
51
|
readonly completeSubmission: (submitted: boolean, completed?: Promise<unknown>, fallbackOutput?: {
|
|
47
52
|
readonly format: TextureFormat;
|
|
@@ -64,29 +69,48 @@ export interface MaterialShaderPipelineEntry {
|
|
|
64
69
|
readonly pipeline: RhiRenderPipeline;
|
|
65
70
|
readonly group2Contract: PipelineGroup2Contract;
|
|
66
71
|
}
|
|
72
|
+
import type { AtmosphereShaderSources, RenderDebugOverlay, RenderPipelineContext, RenderRecordPhase, SsrShaderSources, VolumetricFogShaderSources } from '../render-contract';
|
|
73
|
+
import type { GpuDrivenStandardPbrFrameResources } from '../render-pipeline';
|
|
74
|
+
import type { DispatchEntry, MaterialSnapshot, ShadowCasterMembership, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
|
|
75
|
+
import type { SkinPaletteAllocator } from '../systems/skin-palette-allocator';
|
|
76
|
+
import type { RenderTarget } from '../targets/contracts';
|
|
77
|
+
import type { RenderTargetPhysical } from '../targets/physical';
|
|
78
|
+
import type { BindGroupCounts, BloomFrameReceipts, DispatchCounts, MaterialBgAssemblyCacheEntry, RenderFrameState, ValidatedRenderable } from './frame-snapshot';
|
|
79
|
+
import type { FoldDispatchPlan } from './mesh-ssbo';
|
|
67
80
|
/**
|
|
68
81
|
* Armed only for the first published recovery frame. Candidate preparation
|
|
69
82
|
* 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.
|
|
83
|
+
* guard is armed; a miss during draw is a hard failure before queue submission.
|
|
84
|
+
* Explicit preparation between draws remains allowed, including new geometry
|
|
85
|
+
* admitted on the first fixed step after device recovery.
|
|
71
86
|
*/
|
|
72
87
|
export interface RecoveryColdWorkGuard {
|
|
73
88
|
arm(): void;
|
|
89
|
+
beginFrame(): void;
|
|
90
|
+
endFrame(): void;
|
|
74
91
|
notePipelineColdWork(): void;
|
|
75
92
|
noteUploadColdWork(): void;
|
|
76
93
|
finish(): void;
|
|
77
94
|
}
|
|
78
|
-
import type { RenderDebugOverlay, RenderPipelineContext, RenderRecordPhase, VolumetricFogShaderSources } from '../render-contract';
|
|
79
|
-
import type { DispatchEntry, MaterialSnapshot, SkyboxSnapshot, SkylightSnapshot } from '../render-system-extract';
|
|
80
|
-
import type { SkinPaletteAllocator } from '../systems/skin-palette-allocator';
|
|
81
|
-
import type { RenderTarget } from '../targets/contracts';
|
|
82
|
-
import type { RenderTargetPhysical } from '../targets/physical';
|
|
83
|
-
import type { BindGroupCounts, BloomFrameReceipts, DispatchCounts, MaterialBgAssemblyCacheEntry, RenderFrameState, ValidatedRenderable } from './frame-snapshot';
|
|
84
|
-
import type { FoldDispatchPlan } from './mesh-ssbo';
|
|
85
95
|
export interface RenderSystemRuntime {
|
|
86
96
|
readonly device: RhiDevice;
|
|
97
|
+
/** Current renderer device generation used to fence receipt-bound captures. */
|
|
98
|
+
readonly deviceGeneration?: number;
|
|
99
|
+
/** Public receipt identity reserved before graph encoding. */
|
|
100
|
+
readonly observationFrameId?: number | undefined;
|
|
101
|
+
/** Graph identity written by the typed graph for the current receipt. */
|
|
102
|
+
observationGraphGeneration?: number | undefined;
|
|
103
|
+
/** Renderer-owned capture bridge consumed after queue submission. */
|
|
104
|
+
readonly observationCaptureOwner?: {
|
|
105
|
+
register(capture: TypedFrameObservationCapture): void;
|
|
106
|
+
consume(frameNumber: number): readonly TypedFrameObservationCapture[];
|
|
107
|
+
drain(): readonly TypedFrameObservationCapture[];
|
|
108
|
+
} | undefined;
|
|
87
109
|
/** Internal backend-fixture hook evaluated at the submit transaction edge. */
|
|
88
110
|
readonly beforeSubmit?: ((device: RhiDevice) => RhiError | undefined) | undefined;
|
|
89
111
|
readonly deviceScope: DeviceScope;
|
|
112
|
+
/** Domains explicitly armed for the frame being encoded. */
|
|
113
|
+
readonly observationCaptureDomains?: readonly FrameObservationDomain[] | undefined;
|
|
90
114
|
/** Resolve a recorder/backend wrapper before configuring the native surface. */
|
|
91
115
|
readonly resolveSurfaceDevice?: (device: RhiDevice) => Result<RhiDevice, RhiError>;
|
|
92
116
|
readonly errorRegistry: RhiErrorListenerRegistry;
|
|
@@ -96,19 +120,33 @@ export interface RenderSystemRuntime {
|
|
|
96
120
|
readonly getMaterialProjection?: (materialGuid: string) => MaterialRenderProjection | undefined;
|
|
97
121
|
readonly getMaterialArtifact?: (specializationKey: string) => MaterialRuntimeArtifact | undefined;
|
|
98
122
|
/** Producer-owned cooked Standard PBR artifact used by GPU-driven projection. */
|
|
99
|
-
readonly getMaterialShaderArtifact?: (materialShaderId: string
|
|
100
|
-
|
|
101
|
-
|
|
123
|
+
readonly getMaterialShaderArtifact?: (materialShaderId: string, request?: {
|
|
124
|
+
readonly vertexColorAvailable?: boolean;
|
|
125
|
+
readonly deformation?: 'rigid' | 'skin';
|
|
126
|
+
readonly clustered?: boolean;
|
|
127
|
+
readonly reflectionFallback?: boolean;
|
|
128
|
+
readonly pass?: 'forward' | 'shadow' | 'depth';
|
|
129
|
+
readonly address?: 'direct' | 'scene-index';
|
|
130
|
+
} | boolean) => MaterialShaderArtifact | undefined;
|
|
131
|
+
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' | 'gpu-driven-pbr' | 'gpu-driven-skin',
|
|
132
|
+
/** Optional vertex entry override for receipt-owned scene-index passes. */
|
|
133
|
+
vertexEntryPoint?: string, additionalColorFormats?: readonly GPUTextureFormat[], vertexEntry?: string, fragmentEntry?: string, particleInputLanes?: number, fragmentConstants?: Readonly<Record<string, number>>) => RhiRenderPipeline | null;
|
|
134
|
+
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' | 'gpu-driven-pbr' | 'gpu-driven-skin',
|
|
135
|
+
/** Optional vertex entry override for receipt-owned scene-index passes. */
|
|
136
|
+
vertexEntryPoint?: string, additionalColorFormats?: readonly GPUTextureFormat[], vertexEntry?: string, fragmentEntry?: string, particleInputLanes?: number, fragmentConstants?: Readonly<Record<string, number>>) => MaterialShaderPipelineEntry | null;
|
|
102
137
|
/** Reflection-derived UV count included in the material PipelineSpec cache key. */
|
|
103
138
|
readonly getMaterialShaderUvSetCount?: (materialShaderId: string) => number | undefined;
|
|
104
|
-
readonly getMaterialShaderBindingContract?: (materialShaderId: string) => 'group-0' | 'group-0-resource' | 'view-only' | 'view-and-scene-depth' | 'render-material';
|
|
139
|
+
readonly getMaterialShaderBindingContract?: (materialShaderId: string) => 'group-0' | 'group-0-resource' | 'view-only' | 'view-and-scene-depth' | 'render-material-with-scene-depth' | 'render-material-and-scene-depth' | 'render-material';
|
|
105
140
|
readonly getParamSchema?: (materialShaderId: string) => readonly ParamSchemaEntry[] | undefined;
|
|
106
141
|
readonly getMaterialBindGroupLayout?: (materialShaderId: string, materialParamSchema?: readonly ParamSchemaEntry[]) => BindGroupLayout | undefined;
|
|
107
|
-
|
|
142
|
+
/** Handle-first factory for built-in same-frame GPU producers. */
|
|
143
|
+
readonly immediateShaderModuleFactory?: PipelineBuilderShaderModuleFactory;
|
|
144
|
+
/** Optional guard for the first recovery frame's cold-work boundary. */
|
|
145
|
+
readonly recoveryColdWorkGuard?: RecoveryColdWorkGuard | undefined;
|
|
108
146
|
readonly metrics: EngineMetrics;
|
|
109
147
|
readonly lookupPostProcess?: (id: string) => import('../fullscreen-post-process-pass').PostProcessShaderEntry | undefined;
|
|
110
148
|
readonly getPostProcessParamsBuffer?: (id: string) => Buffer | undefined;
|
|
111
|
-
readonly getPostProcessPipeline?: (id: string, bgl: BindGroupLayout,
|
|
149
|
+
readonly getPostProcessPipeline?: (id: string, bgl: BindGroupLayout, colorFormats: readonly GPUTextureFormat[], entry?: import('../fullscreen-post-process-pass').PostProcessShaderEntry) => RhiRenderPipeline | null;
|
|
112
150
|
/** Candidate-owned post-process pipelines transferred at publication. */
|
|
113
151
|
readonly getRecoveryPostProcessPipelines?: () => ReadonlyMap<string, RhiRenderPipeline>;
|
|
114
152
|
readonly clearPostProcessPipelineCache?: (id: string) => void;
|
|
@@ -251,15 +289,27 @@ export interface PipelineState {
|
|
|
251
289
|
readonly probeInstancesBindGroupLayout?: BindGroupLayout;
|
|
252
290
|
readonly identityInstanceBuffer: Buffer;
|
|
253
291
|
readonly defaultSampler: Sampler;
|
|
254
|
-
readonly nearestSampler: Sampler;
|
|
255
292
|
readonly fallbackTextureView: TextureView;
|
|
256
293
|
readonly unlitPipeline: RhiRenderPipeline | null;
|
|
257
294
|
readonly standardPipeline: RhiRenderPipeline | null;
|
|
295
|
+
/** Producer-owned Standard PBR module for this device generation. */
|
|
296
|
+
readonly standardPbrShaderModule: ShaderModule | null;
|
|
297
|
+
/** Producer-owned skinned Standard PBR module for this device generation. */
|
|
298
|
+
readonly pbrSkinShaderModule: ShaderModule | null;
|
|
299
|
+
/** Producer-resolved Standard PBR UV ABI count for geometry projection. */
|
|
300
|
+
readonly standardPbrShaderUvSetCount: number;
|
|
258
301
|
readonly unlitPipelineMsaa: RhiRenderPipeline | null;
|
|
259
302
|
readonly unlitPipelineHdrMsaa: RhiRenderPipeline | null;
|
|
260
303
|
readonly pbrPipelineLayout: PipelineLayout | null;
|
|
304
|
+
/** Dedicated slot-3 layout for scene-index GPU-driven Standard PBR draws. */
|
|
305
|
+
readonly gpuDrivenInstancesBindGroupLayout?: BindGroupLayout | null;
|
|
306
|
+
readonly gpuDrivenPbrPipelineLayout?: PipelineLayout | null;
|
|
307
|
+
/** Device-owned shader modules paired with their exact Standard PBR receipts. */
|
|
308
|
+
readonly gpuDrivenPbrPrograms?: ReadonlyMap<string, GpuDrivenPbrProgram>;
|
|
309
|
+
readonly gpuDrivenPbrSkinPipelineLayout?: PipelineLayout | null;
|
|
261
310
|
readonly pbrProbePipelineLayout?: PipelineLayout | null;
|
|
262
311
|
readonly hdrpPbrPipelineLayout: PipelineLayout | null;
|
|
312
|
+
readonly hdrpMeshBindGroupLayout?: BindGroupLayout | null;
|
|
263
313
|
readonly hdrpProbePbrPipelineLayout?: PipelineLayout | null;
|
|
264
314
|
readonly hdrpClusterMembershipPipeline: ComputePipeline | null;
|
|
265
315
|
readonly hdrpClusterMembershipBindGroupLayout: BindGroupLayout | null;
|
|
@@ -299,6 +349,7 @@ export interface RenderSystemInternals extends RenderSystemRuntime {
|
|
|
299
349
|
readonly build?: string | undefined;
|
|
300
350
|
/** Host identity binding for the renderer-owned SSR dependency seam. */
|
|
301
351
|
readonly ssrIdentity?: SsrAdmissionIdentity | undefined;
|
|
352
|
+
readonly captureReflectionFallbackReadback?: boolean | undefined;
|
|
302
353
|
readonly standardProfile?: StandardProfile | undefined;
|
|
303
354
|
readonly standardPipeline: RenderFrameState['activePipeline'];
|
|
304
355
|
readonly featureHost?: RenderFeatureHost | undefined;
|
|
@@ -326,7 +377,7 @@ export interface RenderSystemInternals extends RenderSystemRuntime {
|
|
|
326
377
|
readonly meshSsboState?: {
|
|
327
378
|
readonly slotCount: number;
|
|
328
379
|
} | undefined;
|
|
329
|
-
readonly buildPostProcessPipeline?: ((entry: import('../fullscreen-post-process-pass').PostProcessShaderEntry, bgl: BindGroupLayout,
|
|
380
|
+
readonly buildPostProcessPipeline?: ((entry: import('../fullscreen-post-process-pass').PostProcessShaderEntry, bgl: BindGroupLayout, colorFormats: readonly GPUTextureFormat[], label: string) => RhiRenderPipeline | null) | undefined;
|
|
330
381
|
gpuPassTimingSession?: GpuPassTimingSession | undefined;
|
|
331
382
|
gpuPassTimingCapture?: GpuPassTimingCapture | undefined;
|
|
332
383
|
gpuPassTimingSubmittedWork?: Promise<void> | undefined;
|
|
@@ -336,8 +387,17 @@ export interface RenderSystemInternals extends RenderSystemRuntime {
|
|
|
336
387
|
readonly encodeRenderTargetReadbacks?: (encoder: RhiCommandEncoder, faces?: readonly number[]) => void;
|
|
337
388
|
/** Composed renderer utility sources installed atomically at build-ready. */
|
|
338
389
|
volumetricFogShaders?: VolumetricFogShaderSources | undefined;
|
|
390
|
+
/** Composed renderer utility sources installed atomically at build-ready. */
|
|
391
|
+
ssrShaders?: SsrShaderSources | undefined;
|
|
392
|
+
/** Composed renderer utility sources installed atomically at build-ready. */
|
|
393
|
+
atmosphereShaders?: AtmosphereShaderSources | undefined;
|
|
339
394
|
}
|
|
340
395
|
export interface _StandardForwardSceneView {
|
|
396
|
+
readonly environmentIbl?: {
|
|
397
|
+
readonly irradiance: TextureView;
|
|
398
|
+
readonly prefilter: TextureView;
|
|
399
|
+
};
|
|
400
|
+
readonly captureDispatch?: readonly DispatchEntry[];
|
|
341
401
|
readonly assets: AssetRegistry;
|
|
342
402
|
readonly store: import('../device/gpu-residency').GpuResidencyCache;
|
|
343
403
|
readonly pipelineState: PipelineState;
|
|
@@ -358,9 +418,6 @@ export interface _StandardForwardSceneView {
|
|
|
358
418
|
readonly profilePhase?: <T>(phase: RenderRecordPhase, action: () => T) => T;
|
|
359
419
|
readonly directionalShadowCacheReuse: boolean;
|
|
360
420
|
readonly world: World;
|
|
361
|
-
readonly gpuDrivenEntityKeys: ReadonlySet<number>;
|
|
362
|
-
/** Renderer-local world namespace paired with gpuDrivenEntityKeys. */
|
|
363
|
-
readonly gpuDrivenWorldKeys?: readonly number[];
|
|
364
421
|
readonly tonemapActive: boolean;
|
|
365
422
|
readonly geometryColorView: TextureView | null;
|
|
366
423
|
readonly geometryDepthView: TextureView | null;
|
|
@@ -379,8 +436,30 @@ export interface _StandardForwardSceneView {
|
|
|
379
436
|
readonly foldDispatchPlan: FoldDispatchPlan | null;
|
|
380
437
|
readonly materialSlotIndices: readonly (readonly number[])[];
|
|
381
438
|
readonly materialSlots: readonly MaterialSnapshot[];
|
|
382
|
-
readonly materialSlotOwners: readonly
|
|
439
|
+
readonly materialSlotOwners: readonly ValidatedRenderable[];
|
|
383
440
|
readonly materialSlotCount: number;
|
|
441
|
+
/** Filled by main-pass material producers before the GPU-driven raster tail. */
|
|
442
|
+
readonly gpuDrivenStandardPbrFrameResources?: GpuDrivenStandardPbrFrameResources;
|
|
443
|
+
/** Scene table retained by the renderer even when no draw is GPU-admitted. */
|
|
444
|
+
readonly gpuDrivenSceneMaterialBuffer?: Buffer;
|
|
445
|
+
/** Concrete main-pass draw identities already claimed by the capable GPU lane. */
|
|
446
|
+
readonly gpuDrivenDrawKeys?: ReadonlySet<string>;
|
|
447
|
+
readonly gpuDrivenShadowViews?: ShadowViewStatePool;
|
|
448
|
+
readonly gpuDrivenShadowBatchProjections?: ReadonlyMap<string, ReadonlyMap<number, GpuDrivenShadowBatchProjection>>;
|
|
449
|
+
/** Concrete ShadowCaster keys already claimed by the capable GPU subset. */
|
|
450
|
+
readonly gpuDrivenShadowDrawKeys?: ReadonlySet<string>;
|
|
451
|
+
/** View-scoped ShadowCaster claims for exact CPU residual routing. */
|
|
452
|
+
readonly gpuDrivenShadowDrawKeysByView?: ReadonlyMap<string, ReadonlySet<string>>;
|
|
453
|
+
/** Extracted structured ShadowCaster ownership facts. */
|
|
454
|
+
readonly shadowCasterMembership?: readonly ShadowCasterMembership[];
|
|
455
|
+
/** Complete retained ShadowCaster rows, including camera-culled casters. */
|
|
456
|
+
readonly shadowValidatedOrdered?: readonly ValidatedRenderable[];
|
|
457
|
+
/** Dispatch entries remapped to the complete retained ShadowCaster rows. */
|
|
458
|
+
readonly shadowDispatch?: readonly DispatchEntry[];
|
|
459
|
+
/** Mesh-SSBO slot base reserved for the retained ShadowCaster rows. */
|
|
460
|
+
readonly shadowMeshSsboBase?: number;
|
|
461
|
+
/** Renderer-stable world keys used by ShadowCaster ownership identities. */
|
|
462
|
+
readonly shadowCasterWorldKeys?: readonly number[];
|
|
384
463
|
readonly pointsLines: PointsLinesRecordOwner | undefined;
|
|
385
464
|
readonly materialBgAssemblyCache: Map<string, MaterialBgAssemblyCacheEntry>;
|
|
386
465
|
/** Record-stage proof callback; invoked only after a real draw command is encoded. */
|
|
@@ -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,28 +1,66 @@
|
|
|
1
|
-
import { type Buffer, type RhiQueue, type RhiRenderPassEncoder } from '@forgeax/engine-rhi';
|
|
1
|
+
import { type BindGroup, type Buffer, type RenderPipeline, type RhiQueue, type RhiRenderPassEncoder } from '@forgeax/engine-rhi';
|
|
2
2
|
import type { MaterialRenderState, PassSelector } from '@forgeax/engine-types';
|
|
3
|
+
import type { SubmissionPlan } from '../gpu-driven/batch-topology';
|
|
4
|
+
import type { GpuDrivenView } from '../gpu-driven/view-gpu';
|
|
3
5
|
import type { DispatchEntry, ExtractedLights } from '../render-system-extract';
|
|
4
6
|
import type { _InternalRenderPipelineContext } from './render-context';
|
|
5
7
|
export declare const SHADOW_CASTER_SLOT_STRIDE = 256;
|
|
6
8
|
export declare const SHADOW_CASTER_BUFFER_SIZE: number;
|
|
9
|
+
/**
|
|
10
|
+
* Renderer-owned capable shadow submission. The view/counter/indirect ABI is
|
|
11
|
+
* shared with the main GPU-driven lane; this record only supplies the
|
|
12
|
+
* prepared per-batch raster state that cannot be inferred from a raw scene.
|
|
13
|
+
* When present, the capable lane emits one indirect command per topology batch
|
|
14
|
+
* and never walks `validatedOrdered`.
|
|
15
|
+
*/
|
|
16
|
+
export interface GpuDrivenShadowBatch {
|
|
17
|
+
readonly pipeline: RenderPipeline;
|
|
18
|
+
readonly meshBindGroup: BindGroup;
|
|
19
|
+
readonly visibleBindGroup: BindGroup;
|
|
20
|
+
readonly deformation: 'rigid' | 'skin';
|
|
21
|
+
/** Complete binding for this batch, including opaque batches after custom casters. */
|
|
22
|
+
readonly materialGroup: BindGroup;
|
|
23
|
+
readonly vertexBuffer: Buffer;
|
|
24
|
+
readonly indexBuffer?: Buffer | undefined;
|
|
25
|
+
readonly indexFormat?: 'uint16' | 'uint32' | undefined;
|
|
26
|
+
}
|
|
27
|
+
export interface GpuDrivenShadowSubmission {
|
|
28
|
+
readonly view: GpuDrivenView;
|
|
29
|
+
readonly plan: SubmissionPlan;
|
|
30
|
+
readonly batches: ReadonlyMap<number, GpuDrivenShadowBatch>;
|
|
31
|
+
readonly instancesBindGroup?: BindGroup | undefined;
|
|
32
|
+
}
|
|
7
33
|
export declare function directionalShadowCasterOffset(cascadeIndex: number): number;
|
|
8
34
|
export declare function spotShadowCasterOffset(tile: number): number;
|
|
9
35
|
export declare function writeShadowCasterUniforms(queue: RhiQueue, buffer: Buffer, lights: ExtractedLights): void;
|
|
10
36
|
interface ShadowDispatch {
|
|
37
|
+
readonly passIndex: number;
|
|
38
|
+
readonly materialHandle: number;
|
|
11
39
|
readonly vertexEntry: string | undefined;
|
|
12
40
|
readonly fragmentEntry: string | undefined;
|
|
13
41
|
readonly materialShaderId: string;
|
|
14
42
|
readonly renderState: MaterialRenderState | undefined;
|
|
43
|
+
readonly materialSlot: number | undefined;
|
|
44
|
+
readonly paramSnapshot: DispatchEntry['paramSnapshot'];
|
|
15
45
|
}
|
|
16
|
-
type ShadowDispatchMap = ReadonlyMap<number, ReadonlyMap<number, ShadowDispatch>>;
|
|
46
|
+
type ShadowDispatchMap = ReadonlyMap<number, ReadonlyMap<number, readonly ShadowDispatch[]>>;
|
|
17
47
|
export declare function shadowShaderMap(c: _InternalRenderPipelineContext): ShadowDispatchMap;
|
|
48
|
+
/**
|
|
49
|
+
* Record the capable shadow lane from the shared view's indirect arguments.
|
|
50
|
+
* The submission is an explicit prepared contract: missing view buffers or a
|
|
51
|
+
* missing batch raster projection are terminal rather than a reason to fall
|
|
52
|
+
* back to a CPU caster walk. The caller may then keep the existing CPU path
|
|
53
|
+
* when no capable submission was published for the current view.
|
|
54
|
+
*/
|
|
55
|
+
export declare function recordGpuDrivenShadowIndirect(pass: RhiRenderPassEncoder, submission: GpuDrivenShadowSubmission): void;
|
|
18
56
|
export declare function encodeDirectionalShadowPass(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, cascadeIndex: number, viewport: {
|
|
19
57
|
readonly x: number;
|
|
20
58
|
readonly y: number;
|
|
21
59
|
readonly w: number;
|
|
22
60
|
readonly h: number;
|
|
23
|
-
}): void;
|
|
24
|
-
export declare function encodePointShadowPass(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, snapshotIndex: number, face: number): void;
|
|
25
|
-
export declare function encodeSpotShadowPass(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, snapshotIndex: number): void;
|
|
61
|
+
}, drawFeatures?: (view: BindGroup) => void): void;
|
|
62
|
+
export declare function encodePointShadowPass(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, snapshotIndex: number, face: number, drawFeatures?: (view: BindGroup) => void): void;
|
|
63
|
+
export declare function encodeSpotShadowPass(c: _InternalRenderPipelineContext, pass: RhiRenderPassEncoder, snapshotIndex: number, drawFeatures?: (view: BindGroup) => void): void;
|
|
26
64
|
/**
|
|
27
65
|
* feat-20260609 M2: filter dispatch entries by a {@link PassSelector}.
|
|
28
66
|
*
|
|
@@ -54,8 +92,25 @@ export declare function buildMatchedRenderableIndices(dispatch: readonly Dispatc
|
|
|
54
92
|
* filtering is insufficient for geometry recording: a Deferred graph pass
|
|
55
93
|
* must not draw the same renderable's Forward-only material. Keep the
|
|
56
94
|
* renderable key in the result so mixed-material meshes retain their
|
|
57
|
-
* per-submesh routing.
|
|
95
|
+
* per-submesh routing. An optional exclusion selector removes a material
|
|
96
|
+
* handle when that same renderable/material pair also contributes to another
|
|
97
|
+
* graph lane (for example Deferred Standard geometry after SSR composition).
|
|
98
|
+
* An inclusion selector intersects membership by the same renderable/material
|
|
99
|
+
* pair without replacing the selected shader pass or its authored entries.
|
|
100
|
+
*/
|
|
101
|
+
export declare function buildMatchedMaterialHandlesByRenderable(dispatch: readonly DispatchEntry[], selector: PassSelector, excludeSelector?: PassSelector, includeSelector?: PassSelector): ReadonlyMap<number, ReadonlySet<number>> | null;
|
|
102
|
+
/**
|
|
103
|
+
* feat-20260704 M3/w20: per-entity directional shadow-caster draw loop,
|
|
104
|
+
* extracted verbatim from {@link encodeDirectionalShadowPass}. Walks `c.validatedOrdered`,
|
|
105
|
+
* selects the per-entity shadow PSO (default vertex-only caster or a custom
|
|
106
|
+
* cutout caster), binds the per-entity mesh dynamic-offset + instance buffer,
|
|
107
|
+
* and issues the per-submesh depth draws. `shadowPass` view/material bind
|
|
108
|
+
* groups (@group 0/1) are already set by the caller; this loop owns @group
|
|
109
|
+
* 2/3 + the vertex/index/pipeline de-dup state. Receives the explicit
|
|
110
|
+
* `_InternalRenderPipelineContext` (`c`) plus the caller-resolved
|
|
111
|
+
* mesh bind group, pass-selector match set, and per-material
|
|
112
|
+
* ShadowCaster dispatch map so no cross-function mutable state is introduced.
|
|
58
113
|
*/
|
|
59
|
-
export declare function
|
|
114
|
+
export declare function recordShadowCasterDraws(c: _InternalRenderPipelineContext, shadowPass: RhiRenderPassEncoder, shadowPipeline: RenderPipeline, shadowMeshBindGroup: BindGroup, matchedIndices: Set<number> | null, matchedMaterialHandles: ReadonlyMap<number, ReadonlySet<number>> | null, shadowDispatchByRenderableIdx: ShadowDispatchMap, gpuDrivenShadowDrawKeys: ReadonlySet<string> | undefined, reflected?: boolean): ReadonlySet<string>;
|
|
60
115
|
export {};
|
|
61
116
|
//# sourceMappingURL=shadow-pass.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow-pass.d.ts","sourceRoot":"","sources":["../../src/record/shadow-pass.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"shadow-pass.d.ts","sourceRoot":"","sources":["../../src/record/shadow-pass.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,5 +19,5 @@ export declare function recordBloomBrightPass(_c: _InternalRenderPipelineContext
|
|
|
19
19
|
export declare function recordBloomBlurHPass(_c: _InternalRenderPipelineContext, resolve?: ResolveContext, graphPass?: RhiRenderPassEncoder): void;
|
|
20
20
|
export declare function recordBloomBlurVPass(_c: _InternalRenderPipelineContext, resolve?: ResolveContext, graphPass?: RhiRenderPassEncoder): void;
|
|
21
21
|
export declare function recordBloomCompositePass(_c: _InternalRenderPipelineContext, resolve?: ResolveContext, graphPass?: RhiRenderPassEncoder): void;
|
|
22
|
-
export declare function recordFxaaPass(c: _InternalRenderPipelineContext, resolve: ResolveContext, graphPass?: RhiRenderPassEncoder): void;
|
|
22
|
+
export declare function recordFxaaPass(c: _InternalRenderPipelineContext, resolve: ResolveContext, graphPass?: RhiRenderPassEncoder, paramsOverride?: Uint8Array): void;
|
|
23
23
|
//# sourceMappingURL=skybox-post-pass.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skybox-post-pass.d.ts","sourceRoot":"","sources":["../../src/record/skybox-post-pass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAY,KAAK,oBAAoB,EAAoB,MAAM,qBAAqB,CAAC;AAO5F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAGvE;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,8BAA8B,EACjC,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CAiIN;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,GACzB,IAAI,CAEN;AAyDD,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA8EN;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA+EN;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA+EN;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA0FN;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,8BAA8B,EACjC,OAAO,EAAE,cAAc,EACvB,SAAS,CAAC,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"skybox-post-pass.d.ts","sourceRoot":"","sources":["../../src/record/skybox-post-pass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAY,KAAK,oBAAoB,EAAoB,MAAM,qBAAqB,CAAC;AAO5F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAGvE;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,8BAA8B,EACjC,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CAiIN;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,8BAA8B,EACjC,IAAI,EAAE,oBAAoB,GACzB,IAAI,CAEN;AAyDD,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA8EN;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA+EN;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA+EN;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,8BAA8B,EAClC,OAAO,CAAC,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,IAAI,CA0FN;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,8BAA8B,EACjC,OAAO,EAAE,cAAc,EACvB,SAAS,CAAC,EAAE,oBAAoB,EAChC,cAAc,CAAC,EAAE,UAAU,GAC1B,IAAI,CAqGN"}
|
|
@@ -3,13 +3,17 @@ import type { BindGroup, Buffer, RenderPipeline, RhiCommandEncoder, Sampler, Tex
|
|
|
3
3
|
import { RhiError } from '@forgeax/engine-rhi';
|
|
4
4
|
import { type Result } from '@forgeax/engine-types';
|
|
5
5
|
import { type RenderError } from '../errors/render';
|
|
6
|
+
import { type RenderFeaturePlanExecution } from '../features/host';
|
|
6
7
|
import { type RenderFeaturePlannedFrame } from '../features/plan';
|
|
7
8
|
import type { PreparedGpuDrivenFrame } from '../gpu-driven/production-raster';
|
|
9
|
+
import type { RenderFeatureGraphInspection } from '../inspection-types';
|
|
10
|
+
import type { RenderExtent } from '../pipeline/render-extent';
|
|
8
11
|
import { type StandardTopologyInputValue } from '../pipeline/standard-lighting/topology';
|
|
12
|
+
import { type ProbeBackgroundResources } from '../reflection/background';
|
|
9
13
|
import type { CameraSnapshot } from '../render-contract';
|
|
10
14
|
import type { RenderPipelineFrame } from '../render-pipeline';
|
|
11
15
|
import type { ExtractedLights, ExtractedVolumetricFog } from '../render-system-extract';
|
|
12
|
-
import type { SsrAdmissionResult } from '../ssr/admission';
|
|
16
|
+
import type { SsrAdmissionResult, SsrSpatialAdmission } from '../ssr/admission';
|
|
13
17
|
import type { RenderTarget } from '../targets/contracts';
|
|
14
18
|
import type { RenderTargetPhysical } from '../targets/physical';
|
|
15
19
|
import type { TransmissionDemand } from '../transmission/projection';
|
|
@@ -101,6 +105,7 @@ export interface ReflectionProbeFilterGraphState {
|
|
|
101
105
|
readonly maxStepsPerFrame: number;
|
|
102
106
|
}
|
|
103
107
|
export interface ReflectionProbeGraphWork {
|
|
108
|
+
readonly background?: ProbeBackgroundResources;
|
|
104
109
|
readonly probeIndex: number;
|
|
105
110
|
readonly rawTexture: Texture;
|
|
106
111
|
readonly rawCubeView: TextureView;
|
|
@@ -127,30 +132,56 @@ export interface ReflectionProbeGraphState {
|
|
|
127
132
|
readonly work: readonly ReflectionProbeGraphWork[];
|
|
128
133
|
}
|
|
129
134
|
export declare function boundedReflectionProbeFilterWork(state: ReflectionProbeFilterGraphState): readonly ReflectionProbeFilterGraphWork[];
|
|
130
|
-
export declare function addReflectionProbeGraphPasses(builder: RenderGraphBuilder<RenderPipelineFrame>, state: ReflectionProbeGraphState): Result<readonly import('@forgeax/engine-render-graph').GraphAccess[], RenderGraphError>;
|
|
135
|
+
export declare function addReflectionProbeGraphPasses(builder: RenderGraphBuilder<RenderPipelineFrame>, state: ReflectionProbeGraphState, environmentCube?: import('../environment/ibl').GraphEnvironment): Result<readonly import('@forgeax/engine-render-graph').GraphAccess[], RenderGraphError>;
|
|
131
136
|
export { projectRenderTargetGraph, type RenderTargetGraphInput, type RenderTargetGraphProjection, type RenderTargetGraphSubresource, } from '../targets/graph-projection';
|
|
132
137
|
export interface RenderFeatureGraphRuntimeState {
|
|
133
138
|
plans: readonly RenderFeaturePlannedFrame[];
|
|
134
139
|
fullscreenEffects: ReadonlyMap<string, import('../fullscreen-post-process-pass').PostProcessShaderEntry>;
|
|
135
140
|
}
|
|
141
|
+
/** The exact fields that define one validated feature-plan collection. */
|
|
142
|
+
export interface RenderFeaturePlanRevisionEntry {
|
|
143
|
+
readonly featureIdentity: string;
|
|
144
|
+
readonly generation: number;
|
|
145
|
+
readonly signature: string;
|
|
146
|
+
readonly order: number;
|
|
147
|
+
}
|
|
148
|
+
/** Compact graph-owner state for a completely validated feature-plan set. */
|
|
149
|
+
export interface RenderFeaturePlanRevisionState {
|
|
150
|
+
readonly revision: number;
|
|
151
|
+
readonly entries: readonly RenderFeaturePlanRevisionEntry[];
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Advance the plan revision only when the complete canonical plan collection
|
|
155
|
+
* changes. Equality is an exact field comparison; the canonical signatures
|
|
156
|
+
* have already been recomputed by validation before this helper is called.
|
|
157
|
+
*/
|
|
158
|
+
export declare function updateRenderFeaturePlanRevision(previous: RenderFeaturePlanRevisionState, plans: readonly RenderFeaturePlannedFrame[], executions: readonly RenderFeaturePlanExecution[]): RenderFeaturePlanRevisionState;
|
|
136
159
|
/** A frame-local graph candidate that is committed only after compilation. */
|
|
137
160
|
export interface RenderFeatureGraphCandidate {
|
|
138
161
|
readonly plans: readonly RenderFeaturePlannedFrame[];
|
|
139
162
|
readonly fullscreenEffects: ReadonlyMap<string, import('../fullscreen-post-process-pass').PostProcessShaderEntry>;
|
|
140
163
|
/**
|
|
141
|
-
* Physical
|
|
142
|
-
*
|
|
143
|
-
* signature is unchanged; otherwise queue retirement
|
|
144
|
-
* still referenced by the memoized graph.
|
|
164
|
+
* Physical transient graphics resources are imported into the compiled
|
|
165
|
+
* graph. Their lease therefore needs a new graph even when the declarative
|
|
166
|
+
* plan signature is unchanged; otherwise queue retirement could destroy a
|
|
167
|
+
* buffer still referenced by the memoized graph. Retired GPU-work leases are
|
|
168
|
+
* kept in the completion batch but are not imported by this candidate and do
|
|
169
|
+
* not require a graph revision on their own.
|
|
145
170
|
*/
|
|
146
171
|
readonly preparedResourceKey?: string;
|
|
147
172
|
/** Release candidate-owned prepared resources when graph promotion fails. */
|
|
148
173
|
readonly onRejected?: () => void;
|
|
149
174
|
/** Publish candidate-owned runtime declarations only after graph promotion. */
|
|
150
175
|
readonly onAccepted?: () => void;
|
|
176
|
+
/** Consume producer frame state only after the command buffer is submitted. */
|
|
177
|
+
readonly onSubmitted?: () => void;
|
|
178
|
+
/** Discard producer frame state after graph execution/submission aborts. */
|
|
179
|
+
readonly onAborted?: () => void;
|
|
151
180
|
/** Discard candidate-only resources when a base graph is kept as fallback. */
|
|
152
181
|
readonly onAbandoned?: () => void;
|
|
153
182
|
}
|
|
183
|
+
export declare function getRenderFeatureGraphInspection(internals: RenderSystemInternals): RenderFeatureGraphInspection;
|
|
184
|
+
export declare function recordRenderFeatureCandidate(internals: RenderSystemInternals, candidate: RenderFeatureGraphCandidate): void;
|
|
154
185
|
export declare function getRenderFeatureGraphState(internals: RenderSystemInternals): RenderFeatureGraphRuntimeState;
|
|
155
186
|
export declare function resetRenderFeatureGraphState(internals: RenderSystemInternals): void;
|
|
156
187
|
export declare function reportRenderFeatureGraphError(internals: RenderSystemInternals, error: RenderError): void;
|
|
@@ -173,10 +204,10 @@ export declare function resolvePostProcessChainAdmission(effects: readonly strin
|
|
|
173
204
|
* leave the renderer without a graph when this was the first attempt).
|
|
174
205
|
*/
|
|
175
206
|
export declare function settleVolumetricFogGraphCandidate(frameState: RenderFrameState, submitted: boolean): void;
|
|
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;
|
|
207
|
+
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, ssr?: SsrSpatialAdmission, renderExtent?: RenderExtent): CompiledRenderGraph<RenderPipelineFrame> | null;
|
|
177
208
|
export declare function executeCompiledFrameGraph(internals: RenderSystemInternals, frameState: RenderFrameState, frame: RenderPipelineFrame, encoder: RhiCommandEncoder, runPass?: import('@forgeax/engine-render-graph').RenderGraphPassRunner, frameHooks?: {
|
|
178
209
|
readonly afterGraphExecute?: () => Result<void, RhiError>;
|
|
179
210
|
readonly onSubmitted?: () => void;
|
|
180
211
|
readonly onAborted?: () => void;
|
|
181
|
-
}, readbackFaces?: readonly number[], onSubmitted?: (completed: Promise<unknown>) => void, timingCapture?: GpuTimingCapture): boolean;
|
|
212
|
+
} | (() => void), readbackFaces?: readonly number[], onSubmitted?: (completed: Promise<unknown>) => void, timingCapture?: GpuTimingCapture): boolean;
|
|
182
213
|
//# sourceMappingURL=typed-frame-graph.d.ts.map
|