@forgeax/engine-render 0.1.33 → 0.1.34
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 +1010 -124
- package/dist/assembly/backend-contract.d.ts +2 -0
- package/dist/assembly/backend-contract.d.ts.map +1 -1
- package/dist/assembly/barrel-distortion-inspection.d.ts +3 -0
- package/dist/assembly/barrel-distortion-inspection.d.ts.map +1 -0
- package/dist/assembly/canvas-draw-guard.d.ts +3 -0
- package/dist/assembly/canvas-draw-guard.d.ts.map +1 -0
- package/dist/assembly/cloud-shadow-entry.d.ts +4 -0
- package/dist/assembly/cloud-shadow-entry.d.ts.map +1 -0
- package/dist/assembly/dynamic-geometry-host.d.ts +4 -1
- package/dist/assembly/dynamic-geometry-host.d.ts.map +1 -1
- package/dist/assembly/dynamic-geometry-runtime.d.ts +1 -1
- package/dist/assembly/dynamic-geometry-runtime.d.ts.map +1 -1
- package/dist/assembly/factory.d.ts +1 -1
- package/dist/assembly/factory.d.ts.map +1 -1
- package/dist/assembly/host-contract.d.ts +3 -3
- package/dist/assembly/host-contract.d.ts.map +1 -1
- package/dist/assembly/material/assembly.d.ts.map +1 -1
- package/dist/assembly/material/pipeline-helpers.d.ts +5 -0
- package/dist/assembly/material/pipeline-helpers.d.ts.map +1 -1
- package/dist/assembly/material-shader-policy.d.ts +16 -2
- package/dist/assembly/material-shader-policy.d.ts.map +1 -1
- package/dist/assembly/material-shader-prewarm.d.ts.map +1 -1
- package/dist/assembly/recovery/device-loss-fanout.d.ts.map +1 -1
- package/dist/assembly/recovery/renderer-recover.d.ts +2 -0
- package/dist/assembly/recovery/renderer-recover.d.ts.map +1 -1
- package/dist/assembly/render-feature-post-processes.d.ts +6 -0
- package/dist/assembly/render-feature-post-processes.d.ts.map +1 -0
- package/dist/assembly/renderer-facade.d.ts.map +1 -1
- package/dist/assembly/renderer-feature-inspection.d.ts +1 -1
- package/dist/assembly/renderer-feature-inspection.d.ts.map +1 -1
- package/dist/assembly/renderer-frame-transaction.d.ts +12 -0
- package/dist/assembly/renderer-frame-transaction.d.ts.map +1 -1
- package/dist/assembly/renderer-inspection.d.ts +11 -0
- package/dist/assembly/renderer-inspection.d.ts.map +1 -1
- package/dist/assembly/webgpu-pbr-ready.d.ts +1 -0
- package/dist/assembly/webgpu-pbr-ready.d.ts.map +1 -1
- package/dist/assembly/webgpu-ready-per-pass.d.ts +39 -0
- package/dist/assembly/webgpu-ready-per-pass.d.ts.map +1 -0
- package/dist/assembly/webgpu-ready.d.ts +1 -1
- package/dist/assembly/webgpu-ready.d.ts.map +1 -1
- package/dist/assembly/webgpu-renderer-bootstrap.d.ts.map +1 -1
- package/dist/assembly/webgpu-renderer-observation-owner.d.ts +35 -0
- package/dist/assembly/webgpu-renderer-observation-owner.d.ts.map +1 -0
- package/dist/assembly/webgpu-renderer.d.ts +1 -1
- package/dist/assembly/webgpu-renderer.d.ts.map +1 -1
- package/dist/authoring.mjs +1 -1
- package/dist/barrel-distortion.d.ts +47 -0
- package/dist/barrel-distortion.d.ts.map +1 -0
- package/dist/{chunk-PA5DRJNI.mjs → chunk-ELJFJ2BU.mjs} +2 -2
- package/dist/chunk-ELJFJ2BU.mjs.map +1 -0
- package/dist/{chunk-ZDQWGQW7.mjs → chunk-HEB564WF.mjs} +4 -4
- package/dist/{chunk-ZDQWGQW7.mjs.map → chunk-HEB564WF.mjs.map} +1 -1
- package/dist/{chunk-VOZWDM3L.mjs → chunk-MKDIT2EM.mjs} +1307 -188
- package/dist/chunk-MKDIT2EM.mjs.map +1 -0
- package/dist/{chunk-LEAXOMYJ.mjs → chunk-OCDLEI6I.mjs} +3 -3
- package/dist/{chunk-LEAXOMYJ.mjs.map → chunk-OCDLEI6I.mjs.map} +1 -1
- package/dist/chunk-ODZWR6JQ.mjs +4927 -0
- package/dist/chunk-ODZWR6JQ.mjs.map +1 -0
- package/dist/{chunk-3RTCJTH4.mjs → chunk-SHFUFJ5N.mjs} +184 -13
- package/dist/chunk-SHFUFJ5N.mjs.map +1 -0
- package/dist/{chunk-OO3DRYK7.mjs → chunk-UI5SFODX.mjs} +176 -96
- package/dist/chunk-UI5SFODX.mjs.map +1 -0
- package/dist/{chunk-PLAXOOX5.mjs → chunk-UINHLCZA.mjs} +561 -79
- package/dist/chunk-UINHLCZA.mjs.map +1 -0
- package/dist/{chunk-NB2S7ZRX.mjs → chunk-WEX45HKH.mjs} +127 -386
- package/dist/chunk-WEX45HKH.mjs.map +1 -0
- package/dist/cloud/density.d.ts +55 -0
- package/dist/cloud/density.d.ts.map +1 -0
- package/dist/cloud/extract.d.ts +25 -0
- package/dist/cloud/extract.d.ts.map +1 -0
- package/dist/cloud/feature.d.ts +57 -0
- package/dist/cloud/feature.d.ts.map +1 -0
- package/dist/cloud/frame-context.d.ts +8 -0
- package/dist/cloud/frame-context.d.ts.map +1 -0
- package/dist/cloud/inspection.d.ts +59 -0
- package/dist/cloud/inspection.d.ts.map +1 -0
- package/dist/cloud/optics.d.ts +56 -0
- package/dist/cloud/optics.d.ts.map +1 -0
- package/dist/cloud/parameters.d.ts +73 -0
- package/dist/cloud/parameters.d.ts.map +1 -0
- package/dist/cloud/resources.d.ts +60 -0
- package/dist/cloud/resources.d.ts.map +1 -0
- package/dist/cloud/shadow.d.ts +42 -0
- package/dist/cloud/shadow.d.ts.map +1 -0
- package/dist/cloud/temporal.d.ts +74 -0
- package/dist/cloud/temporal.d.ts.map +1 -0
- package/dist/components/barrel-distortion.d.ts +13 -0
- package/dist/components/barrel-distortion.d.ts.map +1 -0
- package/dist/components/cloud-layer.d.ts +29 -0
- package/dist/components/cloud-layer.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 +20 -6
- package/dist/components/instances.d.ts.map +1 -1
- package/dist/construct-renderer.d.ts +1 -1
- package/dist/construct-renderer.d.ts.map +1 -1
- package/dist/construct-renderer.mjs +6759 -2875
- package/dist/construct-renderer.mjs.map +1 -1
- package/dist/dynamic-geometry.d.ts +5 -1
- package/dist/dynamic-geometry.d.ts.map +1 -1
- package/dist/errors/cloud.d.ts +59 -0
- package/dist/errors/cloud.d.ts.map +1 -0
- package/dist/errors/render.d.ts +18 -4
- package/dist/errors/render.d.ts.map +1 -1
- package/dist/examples/single-layer-medium-surface.d.ts +47 -0
- package/dist/examples/single-layer-medium-surface.d.ts.map +1 -0
- package/dist/extract/camera.d.ts.map +1 -1
- package/dist/extract/contracts.d.ts +5 -1
- package/dist/extract/contracts.d.ts.map +1 -1
- package/dist/features/barrel-distortion.d.ts +29 -0
- package/dist/features/barrel-distortion.d.ts.map +1 -0
- package/dist/features/error-reporting.d.ts +6 -2
- package/dist/features/error-reporting.d.ts.map +1 -1
- package/dist/features/host.d.ts +10 -0
- package/dist/features/host.d.ts.map +1 -1
- package/dist/features/plan.d.ts +8 -0
- package/dist/features/plan.d.ts.map +1 -1
- package/dist/features/render-graph-contribution.d.ts +5 -0
- package/dist/features/render-graph-contribution.d.ts.map +1 -1
- package/dist/features/render-graph-raster.d.ts +1 -0
- package/dist/features/render-graph-raster.d.ts.map +1 -1
- package/dist/features/targets.d.ts +2 -0
- package/dist/features/targets.d.ts.map +1 -1
- package/dist/features/types.d.ts +44 -0
- package/dist/features/types.d.ts.map +1 -1
- package/dist/fullscreen-post-process-pass.d.ts +15 -7
- package/dist/fullscreen-post-process-pass.d.ts.map +1 -1
- package/dist/gpu-dirty-ranges.d.ts +11 -0
- package/dist/gpu-dirty-ranges.d.ts.map +1 -0
- package/dist/gpu-driven/batch-topology.d.ts +17 -0
- package/dist/gpu-driven/batch-topology.d.ts.map +1 -1
- package/dist/gpu-driven/material-artifacts.d.ts +6 -0
- package/dist/gpu-driven/material-artifacts.d.ts.map +1 -1
- package/dist/gpu-driven/prepared-draw.d.ts.map +1 -1
- package/dist/gpu-driven/production-raster-material.d.ts +178 -0
- package/dist/gpu-driven/production-raster-material.d.ts.map +1 -0
- package/dist/gpu-driven/production-raster.d.ts +47 -3
- package/dist/gpu-driven/production-raster.d.ts.map +1 -1
- package/dist/gpu-driven/resource-allocation.d.ts +31 -0
- package/dist/gpu-driven/resource-allocation.d.ts.map +1 -0
- package/dist/gpu-driven/shadow-ownership.d.ts +14 -0
- package/dist/gpu-driven/shadow-ownership.d.ts.map +1 -0
- package/dist/gpu-driven/view-gpu.d.ts +26 -2
- package/dist/gpu-driven/view-gpu.d.ts.map +1 -1
- package/dist/gpu-scene.d.ts +5 -0
- package/dist/gpu-scene.d.ts.map +1 -1
- package/dist/hdrp-buffers.d.ts +2 -2
- package/dist/hdrp-buffers.d.ts.map +1 -1
- package/dist/ibl/skylight-bind-group.d.ts +10 -1
- package/dist/ibl/skylight-bind-group.d.ts.map +1 -1
- package/dist/index.d.ts +27 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +258 -8
- package/dist/index.mjs.map +1 -1
- package/dist/inspection-types.d.ts +135 -1
- package/dist/inspection-types.d.ts.map +1 -1
- package/dist/instance-buffer-cache.d.ts +4 -4
- package/dist/instance-buffer-cache.d.ts.map +1 -1
- package/dist/instances.d.ts +48 -100
- package/dist/instances.d.ts.map +1 -1
- package/dist/internal.mjs +7 -7
- package/dist/pbr-pipeline.d.ts +19 -1
- package/dist/pbr-pipeline.d.ts.map +1 -1
- package/dist/pipeline/single-layer-medium-passes.d.ts +73 -0
- package/dist/pipeline/single-layer-medium-passes.d.ts.map +1 -0
- package/dist/pipeline/standard-forward-lane.d.ts.map +1 -1
- package/dist/pipeline/standard-output/graph.d.ts.map +1 -1
- package/dist/pipeline/standard-output/types.d.ts +4 -2
- package/dist/pipeline/standard-output/types.d.ts.map +1 -1
- package/dist/pipeline/standard-pipeline.d.ts.map +1 -1
- package/dist/pipeline/standard-post.d.ts.map +1 -1
- package/dist/pipeline-builder.d.ts +1 -1
- package/dist/pipeline-builder.d.ts.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/prepare/prepared-graphics-resolver.d.ts +2 -0
- package/dist/prepare/prepared-graphics-resolver.d.ts.map +1 -1
- package/dist/record/barrel-distortion-frame.d.ts +15 -0
- package/dist/record/barrel-distortion-frame.d.ts.map +1 -0
- package/dist/record/dynamic-geometry-consumption.d.ts +10 -2
- package/dist/record/dynamic-geometry-consumption.d.ts.map +1 -1
- package/dist/record/fold-buckets.d.ts +95 -0
- package/dist/record/fold-buckets.d.ts.map +1 -0
- package/dist/record/fold-instance-buffer.d.ts +6 -0
- package/dist/record/fold-instance-buffer.d.ts.map +1 -0
- package/dist/record/frame-lighting.d.ts +1 -0
- package/dist/record/frame-lighting.d.ts.map +1 -1
- package/dist/record/frame-snapshot.d.ts +37 -3
- package/dist/record/frame-snapshot.d.ts.map +1 -1
- package/dist/record/frame.d.ts +10 -61
- package/dist/record/frame.d.ts.map +1 -1
- package/dist/record/gpu-draw-receipts.d.ts +11 -0
- package/dist/record/gpu-draw-receipts.d.ts.map +1 -0
- package/dist/record/gpu-timing.d.ts +8 -0
- package/dist/record/gpu-timing.d.ts.map +1 -1
- package/dist/record/main-pass-geometry.d.ts +21 -5
- package/dist/record/main-pass-geometry.d.ts.map +1 -1
- package/dist/record/main-pass-material.d.ts +7 -1
- package/dist/record/main-pass-material.d.ts.map +1 -1
- package/dist/record/main-pass-sprite-draws.d.ts.map +1 -1
- package/dist/record/main-pass.d.ts +13 -2
- package/dist/record/main-pass.d.ts.map +1 -1
- package/dist/record/motion-blur-receipt.d.ts +11 -0
- package/dist/record/motion-blur-receipt.d.ts.map +1 -0
- package/dist/record/probe-blend-buffer.d.ts +16 -0
- package/dist/record/probe-blend-buffer.d.ts.map +1 -0
- package/dist/record/recovery-pipeline.d.ts.map +1 -1
- package/dist/record/render-context.d.ts +22 -3
- package/dist/record/render-context.d.ts.map +1 -1
- package/dist/record/shadow-pass.d.ts +2 -0
- 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 +22 -2
- package/dist/record/typed-frame-graph.d.ts.map +1 -1
- package/dist/record/view-ubo.d.ts +11 -3
- package/dist/record/view-ubo.d.ts.map +1 -1
- package/dist/record/volume-params.d.ts +9 -0
- package/dist/record/volume-params.d.ts.map +1 -0
- package/dist/recovery/render-system-candidate.d.ts +10 -0
- package/dist/recovery/render-system-candidate.d.ts.map +1 -1
- package/dist/reflection/record-owner.d.ts.map +1 -1
- package/dist/render-contract.d.ts +42 -4
- package/dist/render-contract.d.ts.map +1 -1
- package/dist/render-graph-primitives.d.ts.map +1 -1
- package/dist/render-pipeline.d.ts +103 -2
- package/dist/render-pipeline.d.ts.map +1 -1
- package/dist/render-system-extract-tail.d.ts +3 -2
- package/dist/render-system-extract-tail.d.ts.map +1 -1
- package/dist/render-system-extract.d.ts +16 -9
- package/dist/render-system-extract.d.ts.map +1 -1
- package/dist/render-system-presentation.d.ts +23 -0
- package/dist/render-system-presentation.d.ts.map +1 -0
- package/dist/render-system-producer-roots.d.ts +10 -0
- package/dist/render-system-producer-roots.d.ts.map +1 -0
- package/dist/render-system-residency.d.ts +12 -0
- package/dist/render-system-residency.d.ts.map +1 -0
- package/dist/render-system.d.ts +19 -14
- package/dist/render-system.d.ts.map +1 -1
- package/dist/scene/probe-blend.d.ts +27 -0
- package/dist/scene/probe-blend.d.ts.map +1 -1
- package/dist/scene/render-scene.d.ts +12 -5
- package/dist/scene/render-scene.d.ts.map +1 -1
- package/dist/ssao-buffers.d.ts +9 -0
- package/dist/ssao-buffers.d.ts.map +1 -1
- package/dist/surface/dynamic-input.d.ts +133 -0
- package/dist/surface/dynamic-input.d.ts.map +1 -0
- package/dist/surface/gpu-driven.d.ts +41 -0
- package/dist/surface/gpu-driven.d.ts.map +1 -0
- package/dist/surface/submission-observation.d.ts +136 -0
- package/dist/surface/submission-observation.d.ts.map +1 -0
- package/dist/systems/skin-palette-allocator.d.ts.map +1 -1
- package/dist/temporal/gpu.d.ts +13 -1
- package/dist/temporal/gpu.d.ts.map +1 -1
- package/dist/temporal/index.mjs +5 -5
- package/dist/temporal/inspection.d.ts.map +1 -1
- package/dist/temporal/standard-scene-data.d.ts.map +1 -1
- package/dist/temporal/target-coverage-attachment.d.ts.map +1 -1
- package/dist/transmission/single-layer-medium.d.ts +89 -0
- package/dist/transmission/single-layer-medium.d.ts.map +1 -0
- package/dist/typed-render-graph-primitives.d.ts +14 -2
- package/dist/typed-render-graph-primitives.d.ts.map +1 -1
- package/dist/volume/component.d.ts +9 -4
- package/dist/volume/component.d.ts.map +1 -1
- package/dist/volume/extract.d.ts +1 -1
- package/dist/volume/extract.d.ts.map +1 -1
- package/dist/volume/inspection.d.ts +2 -0
- package/dist/volume/inspection.d.ts.map +1 -1
- package/dist/volume/passes.d.ts +4 -1
- package/dist/volume/passes.d.ts.map +1 -1
- package/dist/volume/resources.d.ts.map +1 -1
- package/package.json +22 -21
- package/src/__tests__/atmosphere-daylight.dawn.test.ts +72 -0
- package/src/__tests__/barrel-distortion-lkg.integration.test.ts +353 -0
- package/src/__tests__/barrel-distortion.dawn.test.ts +41 -0
- package/src/__tests__/barrel-distortion.unit.test.ts +364 -0
- package/src/__tests__/construct-renderer-identity.unit.test.ts +49 -0
- package/src/__tests__/detached-recovery-graph.unit.test.ts +277 -0
- package/src/__tests__/device-loss-fanout.unit.test.ts +36 -1
- package/src/__tests__/docs-gate-green.unit.test.ts +112 -1
- package/src/__tests__/factory-contract.integration.test.ts +295 -45
- package/src/__tests__/feature-depth-input.dawn.test.ts +129 -2
- package/src/__tests__/fullscreen-feature-plan.unit.test.ts +14 -3
- package/src/__tests__/gpu-dirty-ranges.unit.test.ts +22 -0
- package/src/__tests__/gpu-driven-baseline.characterization.test.ts +16 -3
- package/src/__tests__/gpu-driven-batch-topology-pbr.unit.test.ts +12 -0
- package/src/__tests__/gpu-driven-material-artifacts.unit.test.ts +143 -0
- package/src/__tests__/gpu-driven-pbr.dawn.test.ts +2 -2
- package/src/__tests__/gpu-driven-production.integration.test.ts +482 -3
- package/src/__tests__/gpu-driven-shadow-views.dawn.test.ts +6 -5
- package/src/__tests__/gpu-driven-view-gpu-evidence.ts +94 -6
- package/src/__tests__/gpu-driven-view-graph.integration.test.ts +18 -2
- package/src/__tests__/gpu-driven-view.browser.test.ts +5 -8
- package/src/__tests__/gpu-driven-view.dawn.test.ts +6 -2
- package/src/__tests__/gpu-driven-view.unit.test.ts +1 -1
- package/src/__tests__/gpu-pass-timing-lifecycle.integration.test.ts +1 -0
- package/src/__tests__/gpu-pass-timing.browser.test.ts +6 -4
- package/src/__tests__/gpu-pass-timing.rhi-null.unit.test.ts +1 -0
- package/src/__tests__/gpu-scene.unit.test.ts +119 -9
- package/src/__tests__/instance-allocation-failure.unit.test.ts +57 -0
- package/src/__tests__/instances-culling.integration.test.ts +10 -36
- package/src/__tests__/instances-store.unit.test.ts +97 -305
- package/src/__tests__/instances-world-ownership.integration.test.ts +62 -0
- package/src/__tests__/main-pass-material-medium-selection.unit.test.ts +146 -0
- package/src/__tests__/material-shader-prewarm.unit.test.ts +59 -0
- package/src/__tests__/material-snapshot-mutation.integration.test.ts +39 -1
- package/src/__tests__/morph-culling-reentry.dawn.test.ts +5 -5
- package/src/__tests__/morph-visual-evidence.integration.test.ts +8 -7
- package/src/__tests__/motion-blur-compute.dawn.test.ts +13 -7
- package/src/__tests__/motion-blur.pixel.integration.test.ts +2 -2
- package/src/__tests__/nineslice-handle-surface.unit.test.ts +4 -4
- package/src/__tests__/pbr-view-layout.unit.test.ts +9 -0
- package/src/__tests__/physical-clearcoat.integration.test.ts +58 -0
- package/src/__tests__/prepared-graphics-capability.unit.test.ts +66 -2
- package/src/__tests__/probe-bindings.unit.test.ts +582 -1
- package/src/__tests__/probe-scene-dirty.integration.test.ts +28 -1
- package/src/__tests__/receipt-observation-retirement.unit.test.ts +65 -0
- package/src/__tests__/recovery-candidate-prepare.contract.test.ts +69 -0
- package/src/__tests__/render-error-code-owner.test-d.ts +7 -0
- package/src/__tests__/render-feature-diagnostics.unit.test.ts +15 -2
- package/src/__tests__/render-feature-error-reporting.unit.test.ts +21 -1
- package/src/__tests__/render-feature-prepared-diagnostics.unit.test.ts +10 -1
- package/src/__tests__/render-feature-retry.unit.test.ts +12 -1
- package/src/__tests__/render-scene-mixed-updates.integration.test.ts +145 -19
- package/src/__tests__/render-scene-projection.unit.test.ts +36 -11
- package/src/__tests__/render-scene-temporal-retry.unit.test.ts +20 -20
- package/src/__tests__/render-target-probe-soak.perf.test.ts +2 -2
- package/src/__tests__/render-temporal-environment-consumer.browser.test.ts +3 -3
- package/src/__tests__/render-temporal-environment-consumer.dawn.test.ts +5 -2
- package/src/__tests__/renderer-factory-material-contract.unit.test.ts +41 -7
- package/src/__tests__/renderer-frame-generation-fence.integration.test.ts +16 -0
- package/src/__tests__/renderer-frame-transaction.integration.test.ts +26 -10
- package/src/__tests__/resource-allocation.unit.test.ts +123 -0
- package/src/__tests__/single-layer-medium-passes.unit.test.ts +275 -0
- package/src/__tests__/skin-motion-regression.unit.test.ts +70 -1
- package/src/__tests__/skin-palette-recycling.dawn.test.ts +97 -0
- package/src/__tests__/skinned-shadow-caster.test.ts +15 -0
- package/src/__tests__/ssr-carrier-public-contract.unit.test.ts +21 -0
- package/src/__tests__/ssr-gpu-dispatch.browser.test.ts +4 -4
- package/src/__tests__/ssr-gpu-dispatch.dawn.test.ts +2 -2
- package/src/__tests__/ssr-gpu-dispatch.ts +1 -1
- package/src/__tests__/ssr-receiver-coverage.dawn.test.ts +6 -2
- package/src/__tests__/standard-output-chain-contract.unit.test.ts +28 -0
- package/src/__tests__/standard-pbr-artifact-assembly.unit.test.ts +46 -1
- package/src/__tests__/standard-pipeline.integration.test.ts +182 -1
- package/src/__tests__/surface-dynamic-buffer-lifecycle.unit.test.ts +506 -0
- package/src/__tests__/surface-submission-observation.unit.test.ts +812 -0
- package/src/__tests__/temporal-history-lifecycle.unit.test.ts +32 -0
- package/src/__tests__/temporal-performance.integration.test.ts +3 -3
- package/src/__tests__/visibility-instances.integration.test.ts +7 -19
- package/src/__tests__/visibility-producer-matrix.integration.test.ts +9 -20
- package/src/__tests__/volume-optics-oracle.unit.test.ts +4 -2
- package/src/__tests__/volumetric-fog-budget-recovery.integration.test.ts +30 -20
- package/src/__tests__/volumetric-fog-errors.unit.test.ts +4 -3
- package/src/__tests__/volumetric-fog-multiple.unit.test.ts +55 -0
- package/src/__tests__/volumetric-fog-spot-frame-optics.integration.test.ts +1 -1
- package/src/__tests__/volumetric-fog-stage-readback.dawn.test.ts +113 -9
- package/src/__tests__/volumetric-fog-topology.unit.test.ts +5 -3
- package/src/assembly/backend-contract.ts +30 -0
- package/src/assembly/barrel-distortion-inspection.ts +22 -0
- package/src/assembly/canvas-draw-guard.ts +11 -0
- package/src/assembly/cloud-shadow-entry.ts +22 -0
- package/src/assembly/dynamic-geometry-host.ts +65 -37
- package/src/assembly/dynamic-geometry-runtime.ts +7 -1
- package/src/assembly/factory.ts +2 -30
- package/src/assembly/host-contract.ts +3 -3
- package/src/assembly/material/assembly.ts +25 -13
- package/src/assembly/material/pipeline-helpers.ts +53 -12
- package/src/assembly/material-shader-policy.ts +55 -0
- package/src/assembly/material-shader-prewarm.ts +21 -10
- package/src/assembly/recovery/device-loss-fanout.ts +13 -0
- package/src/assembly/recovery/renderer-recover.ts +41 -18
- package/src/assembly/render-feature-post-processes.ts +54 -0
- package/src/assembly/renderer-facade.ts +4 -1
- package/src/assembly/renderer-feature-inspection.ts +8 -2
- package/src/assembly/renderer-frame-transaction.ts +23 -0
- package/src/assembly/renderer-inspection.ts +28 -0
- package/src/assembly/skin-palette-owner.ts +1 -1
- package/src/assembly/temporal-post-process-prewarm.ts +3 -3
- package/src/assembly/webgpu-pbr-ready.ts +9 -1
- package/src/assembly/webgpu-ready-per-pass.ts +104 -0
- package/src/assembly/webgpu-ready.ts +115 -61
- package/src/assembly/webgpu-renderer-bootstrap.ts +0 -12
- package/src/assembly/webgpu-renderer-observation-owner.ts +222 -0
- package/src/assembly/webgpu-renderer.ts +214 -252
- package/src/assembly/webgpu-vertex-layouts.ts +1 -1
- package/src/barrel-distortion.ts +247 -0
- package/src/cloud/__tests__/cloud-density-parity.dawn.test.ts +173 -0
- package/src/cloud/__tests__/cloud-layer-framebuffer-y.dawn.test.ts +265 -0
- package/src/cloud/__tests__/cloud-layer.browser.test.ts +432 -0
- package/src/cloud/__tests__/cloud-layer.unit.test.ts +634 -0
- package/src/cloud/density.ts +600 -0
- package/src/cloud/extract.ts +110 -0
- package/src/cloud/feature.ts +1810 -0
- package/src/cloud/frame-context.ts +42 -0
- package/src/cloud/inspection.ts +130 -0
- package/src/cloud/optics.ts +285 -0
- package/src/cloud/parameters.ts +255 -0
- package/src/cloud/resources.ts +122 -0
- package/src/cloud/shadow.ts +167 -0
- package/src/cloud/temporal.ts +226 -0
- package/src/components/barrel-distortion.ts +46 -0
- package/src/components/cloud-layer.ts +47 -0
- package/src/components/index.ts +2 -0
- package/src/components/instances.ts +18 -45
- package/src/components/sprite-instances.ts +1 -1
- package/src/construct-renderer.ts +1 -1
- package/src/dynamic-geometry.ts +12 -1
- package/src/errors/cloud.ts +103 -0
- package/src/errors/render.ts +44 -7
- package/src/examples/single-layer-medium-surface.ts +59 -0
- package/src/extract/camera.ts +15 -1
- package/src/extract/contracts.ts +5 -0
- package/src/features/barrel-distortion.ts +172 -0
- package/src/features/error-reporting.ts +26 -6
- package/src/features/host.ts +115 -14
- package/src/features/plan.ts +8 -0
- package/src/features/render-graph-contribution.ts +9 -0
- package/src/features/render-graph-raster.ts +45 -3
- package/src/features/targets.ts +66 -0
- package/src/features/types.ts +47 -0
- package/src/fullscreen-post-process-pass.ts +41 -9
- package/src/gpu-dirty-ranges.ts +48 -0
- package/src/gpu-driven/batch-topology.ts +53 -0
- package/src/gpu-driven/material-artifacts.ts +33 -25
- package/src/gpu-driven/prepared-draw.ts +12 -4
- package/src/gpu-driven/production-raster-material.ts +1894 -0
- package/src/gpu-driven/production-raster.ts +825 -784
- package/src/gpu-driven/resource-allocation.ts +142 -0
- package/src/gpu-driven/shadow-ownership.ts +71 -0
- package/src/gpu-driven/view-gpu.ts +164 -10
- package/src/gpu-scene.ts +75 -84
- package/src/hdrp-buffers.ts +4 -3
- package/src/ibl/skylight-bind-group.ts +49 -7
- package/src/index.ts +196 -9
- package/src/inspection-types.ts +162 -0
- package/src/instance-buffer-cache.ts +4 -4
- package/src/instances.ts +149 -569
- package/src/pbr-pipeline.ts +219 -13
- package/src/pipeline/single-layer-medium-passes.ts +267 -0
- package/src/pipeline/standard-forward-lane.ts +313 -57
- package/src/pipeline/standard-output/graph.ts +8 -2
- package/src/pipeline/standard-output/types.ts +12 -1
- package/src/pipeline/standard-pipeline.ts +291 -18
- package/src/pipeline/standard-post.ts +90 -24
- package/src/pipeline-builder.ts +1 -1
- package/src/plugin.ts +4 -0
- package/src/points-lines/__tests__/points-lines.bench.ts +17 -8
- package/src/prepare/prepared-graphics-resolver.ts +2 -0
- package/src/record/__tests__/main-pass-geometry.unit.test.ts +30 -0
- package/src/record/__tests__/sprite-material-abi.unit.test.ts +1 -1
- package/src/record/__tests__/temporal-payload.unit.test.ts +1 -1
- package/src/record/__tests__/transparent-group2-selection.unit.test.ts +11 -0
- package/src/record/__tests__/typed-frame-graph-plan.unit.test.ts +1 -0
- package/src/record/__tests__/view-ubo-layout.unit.test.ts +4 -3
- package/src/record/barrel-distortion-frame.ts +110 -0
- package/src/record/dynamic-geometry-consumption.ts +39 -9
- package/src/record/fold-buckets.ts +852 -0
- package/src/record/fold-instance-buffer.ts +51 -0
- package/src/record/frame-lighting.ts +36 -2
- package/src/record/frame-snapshot.ts +39 -3
- package/src/record/frame.ts +217 -1084
- package/src/record/gpu-draw-receipts.ts +38 -0
- package/src/record/gpu-timing.ts +48 -5
- package/src/record/main-pass-geometry.ts +251 -82
- package/src/record/main-pass-material.ts +66 -4
- package/src/record/main-pass-sprite-draws.ts +7 -65
- package/src/record/main-pass.ts +156 -20
- package/src/record/motion-blur-receipt.ts +91 -0
- package/src/record/probe-blend-buffer.ts +180 -0
- package/src/record/recovery-pipeline.ts +35 -3
- package/src/record/render-context.ts +39 -3
- package/src/record/shadow-pass.ts +30 -1
- package/src/record/skybox-post-pass.ts +28 -4
- package/src/record/typed-frame-graph.ts +770 -134
- package/src/record/view-ubo.ts +26 -3
- package/src/record/volume-params.ts +225 -0
- package/src/recovery/render-system-candidate.ts +235 -42
- package/src/reflection/record-owner.ts +7 -3
- package/src/render-contract.ts +48 -4
- package/src/render-graph-primitives.ts +7 -1
- package/src/render-pipeline.ts +130 -0
- package/src/render-system-extract-tail.ts +57 -61
- package/src/render-system-extract.ts +74 -76
- package/src/render-system-presentation.ts +56 -0
- package/src/render-system-producer-roots.ts +96 -0
- package/src/render-system-residency.ts +159 -0
- package/src/render-system.ts +347 -363
- package/src/scene/probe-blend.ts +96 -4
- package/src/scene/render-scene.ts +349 -280
- package/src/ssao-buffers.ts +95 -2
- package/src/surface/__tests__/dynamic-input.unit.test.ts +374 -0
- package/src/surface/__tests__/gpu-driven.unit.test.ts +87 -0
- package/src/surface/dynamic-input.ts +658 -0
- package/src/surface/gpu-driven.ts +147 -0
- package/src/surface/submission-observation.ts +517 -0
- package/src/systems/skin-palette-allocator.ts +4 -1
- package/src/temporal/gpu.ts +101 -17
- package/src/temporal/inspection.ts +7 -1
- package/src/temporal/standard-scene-data.ts +5 -0
- package/src/temporal/target-coverage-attachment.ts +4 -0
- package/src/transmission/__tests__/single-layer-medium.unit.test.ts +149 -0
- package/src/transmission/__tests__/standard-transmission.dawn.test.ts +12 -11
- package/src/transmission/single-layer-medium.ts +322 -0
- package/src/typed-render-graph-primitives.ts +70 -2
- package/src/volume/component.ts +10 -9
- package/src/volume/extract.ts +11 -5
- package/src/volume/inspection.ts +3 -0
- package/src/volume/passes.ts +87 -4
- package/src/volume/resources.ts +2 -1
- package/dist/chunk-3RTCJTH4.mjs.map +0 -1
- package/dist/chunk-NB2S7ZRX.mjs.map +0 -1
- package/dist/chunk-NNQL7CB3.mjs +0 -1713
- package/dist/chunk-NNQL7CB3.mjs.map +0 -1
- package/dist/chunk-OO3DRYK7.mjs.map +0 -1
- package/dist/chunk-PA5DRJNI.mjs.map +0 -1
- package/dist/chunk-PLAXOOX5.mjs.map +0 -1
- package/dist/chunk-VOZWDM3L.mjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { GlyphText } from './chunk-ILQ5MEZF.mjs';
|
|
2
|
-
import { MeshRenderer, MeshFilter, DirectionalLight, validateDirectionalLightData, PointLight, computeInvRangeSquared, SpotLight, degToCos, RectAreaLight, validateRectAreaLightData, directionalShadowQualityFromF32, PointLightShadow, Skylight, LightProbe, validateLightProbeData, SkyboxBackground, Atmosphere, selectEnvironment, Instances, Layer, Points, Lines, SortKey, resolveMeshMaterialBindings, pointShapeFromU32, PostProcessParams, buildCubeCameraFaceViews, CubeCamera, cubeCameraUpdateIntentFromF32, ReflectionProbe, reflectionProbeUpdateIntentFromF32, tonemapToU32, resolveVisibility, Fog, VolumetricFog, resolveSelectedVolumetricLight, extractVolumetricFog, MotionBlur, DynamicResolution, ScreenSpaceReflection, DepthOfField, Camera, cameraProjectionFromF32, resolveDepthOfFieldParams, depthOfFieldRequestFailure, CAMERA_EXPOSURE_MODE_MANUAL, cameraExposureFromColumns, antialiasFromF32, validateDynamicResolutionCamera, validateCameraBloom, tonemapFromF32 } from './chunk-
|
|
3
|
-
import { SpriteRegionOverride, SpriteInstances, selectActiveCameraIndex, getActiveCamera } from './chunk-
|
|
4
|
-
import { PROBE_BLEND_RECORD_CAPACITY, GPU_BUFFER_USAGE_MAP_READ, GPU_BUFFER_USAGE_VERTEX, GPU_BUFFER_USAGE_COPY_DST, gpuDrivenShadowDrawKey, IES_SLICE_CAPACITY, COOKIE_SLICE_CAPACITY, isStandardPbrSkinMaterialShader, buildGpuDrivenDraws, worldEntityKey, gpuDrivenSourceDrawItemIndex, selectPasses, resolveRenderTargetMaterialSource, isCanonicalStandardPbrMaterialShader, PROBE_BLEND_RECORD_BYTE_SIZE, GPU_BUFFER_USAGE_UNIFORM, GPU_BUFFER_USAGE_QUERY_RESOLVE, GPU_BUFFER_USAGE_COPY_SRC, COOKIE_SLICE_SIZE, isStandardPbrMaterialShader } from './chunk-
|
|
5
|
-
import { MotionBlurValidationError, STANDARD_OUTPUT_TRANSFORM_FEATURE_ID, SHADOW_ATLAS_DEFAULT_LAYERS, MaterialSkinAttrMissingError, SkinMaterialMismatchError,
|
|
2
|
+
import { freezeBarrelDistortionMapping, MeshRenderer, MeshFilter, DirectionalLight, extractCloudLayer, validateDirectionalLightData, PointLight, computeInvRangeSquared, SpotLight, degToCos, RectAreaLight, validateRectAreaLightData, directionalShadowQualityFromF32, PointLightShadow, Skylight, LightProbe, validateLightProbeData, SkyboxBackground, Atmosphere, selectEnvironment, Instances, Layer, Points, Lines, SortKey, resolveMeshMaterialBindings, pointShapeFromU32, PostProcessParams, buildCubeCameraFaceViews, CubeCamera, cubeCameraUpdateIntentFromF32, ReflectionProbe, reflectionProbeUpdateIntentFromF32, tonemapToU32, resolveVisibility, Fog, VolumetricFog, resolveSelectedVolumetricLight, extractVolumetricFog, MotionBlur, DynamicResolution, ScreenSpaceReflection, DepthOfField, BarrelDistortion, Camera, cameraProjectionFromF32, resolveDepthOfFieldParams, depthOfFieldRequestFailure, CAMERA_EXPOSURE_MODE_MANUAL, cameraExposureFromColumns, antialiasFromF32, validateDynamicResolutionCamera, validateBarrelDistortionParameters, validateCameraBloom, tonemapFromF32 } from './chunk-UINHLCZA.mjs';
|
|
3
|
+
import { SpriteRegionOverride, SpriteInstances, selectActiveCameraIndex, getActiveCamera } from './chunk-ELJFJ2BU.mjs';
|
|
4
|
+
import { PROBE_BLEND_RECORD_CAPACITY, GPU_BUFFER_USAGE_MAP_READ, GPU_BUFFER_USAGE_VERTEX, GPU_BUFFER_USAGE_COPY_DST, gpuDrivenShadowDrawKey, IES_SLICE_CAPACITY, COOKIE_SLICE_CAPACITY, isStandardPbrSkinMaterialShader, buildGpuDrivenDraws, worldEntityKey, gpuDrivenSourceDrawItemIndex, selectPasses, resolveRenderTargetMaterialSource, isCanonicalStandardPbrMaterialShader, PROBE_BLEND_RECORD_BYTE_SIZE, GPU_BUFFER_USAGE_UNIFORM, GPU_BUFFER_USAGE_QUERY_RESOLVE, GPU_BUFFER_USAGE_COPY_SRC, COOKIE_SLICE_SIZE, isStandardPbrMaterialShader } from './chunk-SHFUFJ5N.mjs';
|
|
5
|
+
import { MotionBlurValidationError, STANDARD_OUTPUT_TRANSFORM_FEATURE_ID, SHADOW_ATLAS_DEFAULT_LAYERS, MaterialSkinAttrMissingError, SkinMaterialMismatchError, validateInstanceTransforms, ShadowInvalidConfigError, resolveMotionBlurParams, GPU_TEXTURE_USAGE_COPY_SRC, GPU_TEXTURE_USAGE_COPY_DST, GPU_TEXTURE_USAGE_TEXTURE_BINDING, GPU_TEXTURE_USAGE_STORAGE_BINDING, GPU_TEXTURE_USAGE_RENDER_ATTACHMENT } from './chunk-WEX45HKH.mjs';
|
|
6
6
|
import { R_MIN, ok, err, TextError, toShared, handleSlot, AssetError, ASSET_ERROR_HINTS, materialValuesToLinearRuntime, derive, unpackSlot, materialGuidText } from '@forgeax/engine-types';
|
|
7
7
|
import { err as err$1, ok as ok$1, RhiError } from '@forgeax/engine-rhi';
|
|
8
8
|
import { resolveAssetHandle, walkMaterialPassesOverSharedRefs, selectMaterialPassProgram, materialParametersToParamSchema as materialParametersToParamSchema$1 } from '@forgeax/engine-assets-runtime';
|
|
@@ -202,6 +202,17 @@ var emptyBloomInspection = () => ({
|
|
|
202
202
|
generation: 0,
|
|
203
203
|
state: "off"
|
|
204
204
|
});
|
|
205
|
+
function projectBarrelDistortionInspection(input) {
|
|
206
|
+
const effectiveMapping = input.effectiveMapping === void 0 ? void 0 : freezeBarrelDistortionMapping(input.effectiveMapping);
|
|
207
|
+
return Object.freeze({
|
|
208
|
+
effectiveMapping,
|
|
209
|
+
extent: effectiveMapping === void 0 ? void 0 : Object.freeze({ width: effectiveMapping.width, height: effectiveMapping.height }),
|
|
210
|
+
frameId: input.frameId,
|
|
211
|
+
deviceGeneration: input.deviceGeneration,
|
|
212
|
+
graphGeneration: input.graphGeneration,
|
|
213
|
+
lastKnownGood: input.lastKnownGood
|
|
214
|
+
});
|
|
215
|
+
}
|
|
205
216
|
|
|
206
217
|
// src/prepare/extended-lighting/state.ts
|
|
207
218
|
function createExtendedLightingState(generation) {
|
|
@@ -1898,10 +1909,10 @@ function extractFrames(worlds, owner, assets, pipelineState, materialSnapshotCac
|
|
|
1898
1909
|
});
|
|
1899
1910
|
const frame = extractFrame(world, prepared);
|
|
1900
1911
|
framesByWorld.set(wi, frame);
|
|
1901
|
-
} catch (
|
|
1902
|
-
if (
|
|
1912
|
+
} catch (err5) {
|
|
1913
|
+
if (err5 instanceof MotionBlurValidationError) throw err5;
|
|
1903
1914
|
try {
|
|
1904
|
-
createWorldInternalView(world)._routeError(
|
|
1915
|
+
createWorldInternalView(world)._routeError(err5, {
|
|
1905
1916
|
severity: Severity.Error,
|
|
1906
1917
|
systemName: `RenderSystem.extractFrames(world[${wi}])`
|
|
1907
1918
|
});
|
|
@@ -2061,6 +2072,7 @@ function extractFrames(worlds, owner, assets, pipelineState, materialSnapshotCac
|
|
|
2061
2072
|
directionalCsmDirection
|
|
2062
2073
|
};
|
|
2063
2074
|
const volumetricFog = resourceOwnerFrame?.volumetricFog;
|
|
2075
|
+
const cloudLayer = resourceOwnerFrame?.cloudLayer;
|
|
2064
2076
|
const skylight = resourceOwnerFrame?.skylight;
|
|
2065
2077
|
const skylightCount = resourceOwnerFrame?.skylightCount ?? 0;
|
|
2066
2078
|
const skybox = resourceOwnerFrame?.skybox;
|
|
@@ -2116,6 +2128,7 @@ function extractFrames(worlds, owner, assets, pipelineState, materialSnapshotCac
|
|
|
2116
2128
|
reflectionProbes,
|
|
2117
2129
|
lights,
|
|
2118
2130
|
...volumetricFog === void 0 ? {} : { volumetricFog: { ...volumetricFog, worldId: resourceOwner } },
|
|
2131
|
+
...cloudLayer === void 0 ? {} : { cloudLayer },
|
|
2119
2132
|
renderables,
|
|
2120
2133
|
dispatch: dispatchEntries,
|
|
2121
2134
|
shadowCasterEntityKeys,
|
|
@@ -2205,6 +2218,16 @@ function extractFrame(world, context) {
|
|
|
2205
2218
|
const directionalLightQuery = world.query({ read: [DirectionalLight] }).unwrap();
|
|
2206
2219
|
const worldInternal = createWorldInternalView(world);
|
|
2207
2220
|
let volumetricFog = extractVolumeSnapshot(world, assets, worldInternal);
|
|
2221
|
+
let cloudLayer;
|
|
2222
|
+
const extractedCloudLayer = extractCloudLayer(world);
|
|
2223
|
+
if (extractedCloudLayer.ok) {
|
|
2224
|
+
cloudLayer = extractedCloudLayer.value;
|
|
2225
|
+
} else {
|
|
2226
|
+
worldInternal._routeError(extractedCloudLayer.error, {
|
|
2227
|
+
severity: Severity.Error,
|
|
2228
|
+
systemName: "RenderSystem.extract (cloud-layer)"
|
|
2229
|
+
});
|
|
2230
|
+
}
|
|
2208
2231
|
const cameraRoles = selectCameraRoles(world, context.cameraEntityKey);
|
|
2209
2232
|
const cameras = [...cameraRoles.display];
|
|
2210
2233
|
const auxiliaryCameras = cameraRoles.auxiliary;
|
|
@@ -2862,7 +2885,6 @@ function extractFrame(world, context) {
|
|
|
2862
2885
|
let dispatch = [];
|
|
2863
2886
|
const shadowMembershipEntries = [];
|
|
2864
2887
|
const materialSnapshotCache = /* @__PURE__ */ new Map();
|
|
2865
|
-
const instanceSnapshotCache = /* @__PURE__ */ new Map();
|
|
2866
2888
|
const skinnedMaterialSnapshotCache = /* @__PURE__ */ new Map();
|
|
2867
2889
|
const meshRendererQuery = context.renderables === "none" ? [] : world.query({
|
|
2868
2890
|
read: [MeshRenderer],
|
|
@@ -2899,14 +2921,18 @@ function extractFrame(world, context) {
|
|
|
2899
2921
|
const flushPendingDispatch = (pending) => {
|
|
2900
2922
|
for (const entry of pending) dispatch.push(entry);
|
|
2901
2923
|
};
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
|
|
2924
|
+
const requestedRows = renderableEntities === void 0 ? meshRendererQuery : {
|
|
2925
|
+
*[Symbol.iterator]() {
|
|
2926
|
+
for (const entity of renderableEntities) {
|
|
2927
|
+
const row = meshRendererQuery.at(entity);
|
|
2928
|
+
if (row !== void 0) yield row;
|
|
2929
|
+
}
|
|
2905
2930
|
}
|
|
2931
|
+
};
|
|
2932
|
+
for (const row of requestedRows) {
|
|
2906
2933
|
const hasTransform = row.has(Transform);
|
|
2907
2934
|
const meshFilter = row.get(MeshFilter);
|
|
2908
|
-
const
|
|
2909
|
-
const hasInstances = instancesData !== void 0;
|
|
2935
|
+
const hasInstances = row.has(Instances);
|
|
2910
2936
|
const skin = row.get(Skin);
|
|
2911
2937
|
const morphWeightsView = worldInternal._getArrayView(row.entity, MorphWeights, "weights");
|
|
2912
2938
|
const hasMeshFilter = meshFilter !== void 0;
|
|
@@ -3120,28 +3146,28 @@ function extractFrame(world, context) {
|
|
|
3120
3146
|
} else {
|
|
3121
3147
|
const resolvedResult = walkMaterialPassesOverSharedRefs(world, tagged, assets);
|
|
3122
3148
|
if (!resolvedResult.ok) {
|
|
3123
|
-
const
|
|
3124
|
-
switch (
|
|
3149
|
+
const err5 = resolvedResult.error;
|
|
3150
|
+
switch (err5.code) {
|
|
3125
3151
|
case "material-parent-not-found":
|
|
3126
3152
|
case "material-no-effective-pass":
|
|
3127
3153
|
case "material-value-unknown":
|
|
3128
3154
|
case "material-value-type-mismatch":
|
|
3129
3155
|
case "material-contract-program-mismatch":
|
|
3130
|
-
worldInternal._routeError(
|
|
3156
|
+
worldInternal._routeError(err5, {
|
|
3131
3157
|
severity: Severity.Error,
|
|
3132
|
-
systemName: `RenderSystem.extract (${
|
|
3158
|
+
systemName: `RenderSystem.extract (${err5.code})`
|
|
3133
3159
|
});
|
|
3134
3160
|
break;
|
|
3135
3161
|
case "material-circular-inheritance":
|
|
3136
|
-
worldInternal._routeError(
|
|
3162
|
+
worldInternal._routeError(err5, {
|
|
3137
3163
|
severity: Severity.Error,
|
|
3138
3164
|
systemName: "RenderSystem.extract (material-circular-inheritance)"
|
|
3139
3165
|
});
|
|
3140
3166
|
break;
|
|
3141
3167
|
default:
|
|
3142
|
-
worldInternal._routeError(
|
|
3168
|
+
worldInternal._routeError(err5, {
|
|
3143
3169
|
severity: Severity.Error,
|
|
3144
|
-
systemName: `RenderSystem.extract (_materialWalk: ${
|
|
3170
|
+
systemName: `RenderSystem.extract (_materialWalk: ${err5.code})`
|
|
3145
3171
|
});
|
|
3146
3172
|
}
|
|
3147
3173
|
continue;
|
|
@@ -3398,6 +3424,12 @@ function extractFrame(world, context) {
|
|
|
3398
3424
|
baseColor,
|
|
3399
3425
|
metallic: metallicPv,
|
|
3400
3426
|
roughness: roughnessPv,
|
|
3427
|
+
...resolved.surface?.model === void 0 ? {} : { surfaceModel: resolved.surface.model },
|
|
3428
|
+
deferredPass: allPasses.some(
|
|
3429
|
+
(pass) => String(
|
|
3430
|
+
pass.renderState?.tags?.LightMode ?? pass.name
|
|
3431
|
+
) === "Deferred"
|
|
3432
|
+
),
|
|
3401
3433
|
...specularColorPv !== void 0 && {
|
|
3402
3434
|
specularColor: [
|
|
3403
3435
|
specularColorPv[0] ?? 1,
|
|
@@ -3748,45 +3780,26 @@ function extractFrame(world, context) {
|
|
|
3748
3780
|
};
|
|
3749
3781
|
let instancesSnap;
|
|
3750
3782
|
if (hasInstances) {
|
|
3751
|
-
const
|
|
3752
|
-
|
|
3753
|
-
if (
|
|
3754
|
-
|
|
3755
|
-
new InstanceCollectionError(
|
|
3756
|
-
"instance-collection-invalid",
|
|
3757
|
-
"Instances.collectionId references a live renderer-owned collection",
|
|
3758
|
-
"create the collection through renderer.instances before attaching Instances",
|
|
3759
|
-
{
|
|
3760
|
-
operation: "inspect",
|
|
3761
|
-
expected: "a positive collectionId with a live renderer owner",
|
|
3762
|
-
actual: Number(collectionId ?? 0),
|
|
3763
|
-
...collectionId === void 0 ? {} : { collectionId }
|
|
3764
|
-
}
|
|
3765
|
-
)
|
|
3766
|
-
);
|
|
3767
|
-
if (collectionId !== void 0)
|
|
3768
|
-
instanceSnapshotCache.set(collectionId, collectionResult);
|
|
3769
|
-
}
|
|
3770
|
-
if (collectionResult === void 0) continue;
|
|
3771
|
-
if (!collectionResult.ok) {
|
|
3772
|
-
worldInternal._routeError(collectionResult.error, {
|
|
3783
|
+
const transforms = worldInternal._getArrayView(entity, Instances, "transforms") ?? new Float32Array();
|
|
3784
|
+
const invalid = validateInstanceTransforms(transforms);
|
|
3785
|
+
if (invalid !== void 0) {
|
|
3786
|
+
worldInternal._routeError(invalid, {
|
|
3773
3787
|
severity: Severity.Error,
|
|
3774
|
-
systemName: "RenderSystem.extract (Instances
|
|
3788
|
+
systemName: "RenderSystem.extract (Instances transforms)"
|
|
3775
3789
|
});
|
|
3776
3790
|
continue;
|
|
3777
3791
|
}
|
|
3792
|
+
const projected = instanceCollections?.project(world, entity, transforms);
|
|
3778
3793
|
instancesSnap = {
|
|
3779
|
-
transforms:
|
|
3780
|
-
|
|
3781
|
-
instanceCount: collectionResult.value.count,
|
|
3782
|
-
collectionId: collectionResult.value.collectionId,
|
|
3783
|
-
revision: collectionResult.value.revision,
|
|
3784
|
-
capacity: collectionResult.value.capacity,
|
|
3785
|
-
dirtyRanges: collectionResult.value.dirtyRanges,
|
|
3794
|
+
transforms: projected?.transforms ?? new Float32Array(transforms),
|
|
3795
|
+
instanceCount: transforms.length / 16,
|
|
3786
3796
|
cacheKey: entity,
|
|
3787
|
-
|
|
3788
|
-
|
|
3789
|
-
|
|
3797
|
+
archVersion: projected === void 0 ? archVersion : 0,
|
|
3798
|
+
...projected === void 0 ? {} : {
|
|
3799
|
+
collectionId: projected.collectionId,
|
|
3800
|
+
revision: projected.revision,
|
|
3801
|
+
generations: projected.generations
|
|
3802
|
+
}
|
|
3790
3803
|
};
|
|
3791
3804
|
}
|
|
3792
3805
|
const baseRenderable = {
|
|
@@ -3974,6 +3987,7 @@ function extractFrame(world, context) {
|
|
|
3974
3987
|
environment,
|
|
3975
3988
|
environmentReady: true,
|
|
3976
3989
|
...volumetricFog === void 0 ? {} : { volumetricFog },
|
|
3990
|
+
...cloudLayer === void 0 ? {} : { cloudLayer },
|
|
3977
3991
|
renderables,
|
|
3978
3992
|
dispatch,
|
|
3979
3993
|
shadowCasterEntityKeys,
|
|
@@ -4674,6 +4688,12 @@ function resolveMaterialSnapshot(handleRaw, world, assetsRef, materialSnapshotCa
|
|
|
4674
4688
|
baseColor,
|
|
4675
4689
|
metallic: metallicPv,
|
|
4676
4690
|
roughness: roughnessPv,
|
|
4691
|
+
...resolved.surface?.model === void 0 ? {} : { surfaceModel: resolved.surface.model },
|
|
4692
|
+
deferredPass: allPasses.some(
|
|
4693
|
+
(pass) => String(
|
|
4694
|
+
pass.renderState?.tags?.LightMode ?? pass.name
|
|
4695
|
+
) === "Deferred"
|
|
4696
|
+
),
|
|
4677
4697
|
...specularColorPv !== void 0 && {
|
|
4678
4698
|
specularColor: [
|
|
4679
4699
|
specularColorPv[0] ?? 1,
|
|
@@ -4923,12 +4943,19 @@ function collectCameraSnapshots(world) {
|
|
|
4923
4943
|
const cameras = [];
|
|
4924
4944
|
const cameraQuery = world.query({
|
|
4925
4945
|
read: [Camera],
|
|
4926
|
-
optional: [
|
|
4946
|
+
optional: [
|
|
4947
|
+
MotionBlur,
|
|
4948
|
+
DynamicResolution,
|
|
4949
|
+
ScreenSpaceReflection,
|
|
4950
|
+
DepthOfField,
|
|
4951
|
+
BarrelDistortion
|
|
4952
|
+
],
|
|
4927
4953
|
with: [Transform, GlobalTransform]
|
|
4928
4954
|
}).unwrap();
|
|
4929
4955
|
for (const row of cameraQuery) {
|
|
4930
4956
|
const cam = row.get(Camera);
|
|
4931
4957
|
const motionBlur = row.get(MotionBlur);
|
|
4958
|
+
const barrelDistortion = row.get(BarrelDistortion);
|
|
4932
4959
|
const motionBlurResult = resolveMotionBlurParams(motionBlur);
|
|
4933
4960
|
if (!motionBlurResult.ok) throw motionBlurResult.error;
|
|
4934
4961
|
const motionBlurParams = motionBlurResult.value;
|
|
@@ -4959,6 +4986,8 @@ function collectCameraSnapshots(world) {
|
|
|
4959
4986
|
const antialias = antialiasFromF32(cam.antialias);
|
|
4960
4987
|
const dynamicResolutionResult = validateDynamicResolutionCamera(dynamicResolution, antialias);
|
|
4961
4988
|
if (!dynamicResolutionResult.ok) throw dynamicResolutionResult.error;
|
|
4989
|
+
const barrelDistortionResult = validateBarrelDistortionParameters(barrelDistortion);
|
|
4990
|
+
if (!barrelDistortionResult.ok) throw barrelDistortionResult.error;
|
|
4962
4991
|
cameras.push({
|
|
4963
4992
|
entityKey: entity,
|
|
4964
4993
|
...target === void 0 ? {} : { target },
|
|
@@ -5007,6 +5036,7 @@ function collectCameraSnapshots(world) {
|
|
|
5007
5036
|
targetFps: motionBlurParams.targetFps
|
|
5008
5037
|
}
|
|
5009
5038
|
},
|
|
5039
|
+
...barrelDistortion === void 0 ? {} : { barrelDistortion: barrelDistortionResult.value },
|
|
5010
5040
|
...screenSpaceReflection === void 0 ? {} : {
|
|
5011
5041
|
screenSpaceReflection: {
|
|
5012
5042
|
maxDistance: screenSpaceReflection.maxDistance,
|
|
@@ -5186,9 +5216,10 @@ function extractVolumeSnapshot(world, assets, worldInternal) {
|
|
|
5186
5216
|
const worldTimeSeconds = Number.isFinite(elapsed) ? Math.max(0, elapsed) : 0;
|
|
5187
5217
|
const query = world.query({ read: [VolumetricFog] }).unwrap();
|
|
5188
5218
|
const authorings = [];
|
|
5219
|
+
const members = [];
|
|
5189
5220
|
let selectedLight;
|
|
5190
|
-
let first;
|
|
5191
5221
|
for (const row of query) {
|
|
5222
|
+
selectedLight = void 0;
|
|
5192
5223
|
const source = row.get(VolumetricFog);
|
|
5193
5224
|
if (source.light === null) continue;
|
|
5194
5225
|
const selected = resolveSelectedVolumetricLight(world, source.light);
|
|
@@ -5256,10 +5287,25 @@ function extractVolumeSnapshot(world, assets, worldInternal) {
|
|
|
5256
5287
|
albedo: [source.albedo[0] ?? 0, source.albedo[1] ?? 0, source.albedo[2] ?? 0],
|
|
5257
5288
|
emission: [source.emission[0] ?? 0, source.emission[1] ?? 0, source.emission[2] ?? 0],
|
|
5258
5289
|
anisotropy: source.anisotropy,
|
|
5259
|
-
maxDistance: source.maxDistance
|
|
5290
|
+
maxDistance: source.maxDistance,
|
|
5291
|
+
sampling: source.sampling === 1 ? "density" : "noise"
|
|
5260
5292
|
};
|
|
5261
5293
|
authorings.push(authoring);
|
|
5262
|
-
|
|
5294
|
+
members.push({
|
|
5295
|
+
status: "available",
|
|
5296
|
+
worldTimeSeconds,
|
|
5297
|
+
densityHandle,
|
|
5298
|
+
densityAsset,
|
|
5299
|
+
guid,
|
|
5300
|
+
generation: 1,
|
|
5301
|
+
digest: textureDigest(densityAsset),
|
|
5302
|
+
...selectedLight === void 0 ? {} : {
|
|
5303
|
+
lightEntity: selectedLight.entity,
|
|
5304
|
+
lightKind: selectedLight.kind,
|
|
5305
|
+
...selectedLight.pointLightEntity === void 0 ? {} : { pointLightEntity: selectedLight.pointLightEntity },
|
|
5306
|
+
...selectedLight.spotLightEntity === void 0 ? {} : { spotLightEntity: selectedLight.spotLightEntity }
|
|
5307
|
+
}
|
|
5308
|
+
});
|
|
5263
5309
|
}
|
|
5264
5310
|
if (authorings.length === 0) return void 0;
|
|
5265
5311
|
const extracted = extractVolumetricFog(authorings);
|
|
@@ -5268,41 +5314,18 @@ function extractVolumeSnapshot(world, assets, worldInternal) {
|
|
|
5268
5314
|
severity: Severity.Error,
|
|
5269
5315
|
systemName: "RenderSystem.extract (volumetric-fog)"
|
|
5270
5316
|
});
|
|
5271
|
-
return {
|
|
5272
|
-
status: "degraded",
|
|
5273
|
-
worldTimeSeconds,
|
|
5274
|
-
...first === void 0 ? {} : {
|
|
5275
|
-
densityHandle: first.densityHandle,
|
|
5276
|
-
densityAsset: first.densityAsset,
|
|
5277
|
-
guid: first.guid,
|
|
5278
|
-
generation: 1,
|
|
5279
|
-
digest: textureDigest(first.densityAsset),
|
|
5280
|
-
...selectedLight === void 0 ? {} : {
|
|
5281
|
-
lightEntity: selectedLight.entity,
|
|
5282
|
-
lightKind: selectedLight.kind,
|
|
5283
|
-
...selectedLight.pointLightEntity === void 0 ? {} : { pointLightEntity: selectedLight.pointLightEntity },
|
|
5284
|
-
...selectedLight.spotLightEntity === void 0 ? {} : { spotLightEntity: selectedLight.spotLightEntity }
|
|
5285
|
-
}
|
|
5286
|
-
}
|
|
5287
|
-
};
|
|
5317
|
+
return { ...members[0], status: "degraded" };
|
|
5288
5318
|
}
|
|
5289
|
-
if (extracted.value.status === "off"
|
|
5290
|
-
const
|
|
5291
|
-
|
|
5292
|
-
|
|
5293
|
-
|
|
5294
|
-
|
|
5295
|
-
};
|
|
5319
|
+
if (extracted.value.status === "off") return { status: "off" };
|
|
5320
|
+
const validatedMembers = extracted.value.fogs.map((fog, index) => ({
|
|
5321
|
+
...members[index],
|
|
5322
|
+
status: "available",
|
|
5323
|
+
fog
|
|
5324
|
+
}));
|
|
5296
5325
|
return {
|
|
5297
5326
|
status: "available",
|
|
5298
|
-
|
|
5299
|
-
|
|
5300
|
-
densityHandle: first.densityHandle,
|
|
5301
|
-
densityAsset: first.densityAsset,
|
|
5302
|
-
guid: first.guid,
|
|
5303
|
-
generation: 1,
|
|
5304
|
-
digest: textureDigest(first.densityAsset),
|
|
5305
|
-
...selectedLightFields
|
|
5327
|
+
...validatedMembers[0],
|
|
5328
|
+
additional: validatedMembers.slice(1)
|
|
5306
5329
|
};
|
|
5307
5330
|
}
|
|
5308
5331
|
var PROBE_R_MIN = R_MIN;
|
|
@@ -5603,6 +5626,17 @@ var ProbeBlendSceneProjection = class {
|
|
|
5603
5626
|
};
|
|
5604
5627
|
lastDirtyVisitCount = 0;
|
|
5605
5628
|
lastDirtyReasons = [];
|
|
5629
|
+
bufferProjectionSource = Object.freeze({});
|
|
5630
|
+
bufferProjection = Object.freeze({
|
|
5631
|
+
sourceIdentity: this.bufferProjectionSource,
|
|
5632
|
+
revision: 0,
|
|
5633
|
+
baseRevision: 0,
|
|
5634
|
+
capacity: 1,
|
|
5635
|
+
records: Object.freeze([]),
|
|
5636
|
+
dirtyRecords: Object.freeze([]),
|
|
5637
|
+
removedCacheKeys: Object.freeze([])
|
|
5638
|
+
});
|
|
5639
|
+
resultRecords = Object.freeze([]);
|
|
5606
5640
|
recordFacts = /* @__PURE__ */ new Map();
|
|
5607
5641
|
getRecord(objectKey) {
|
|
5608
5642
|
return this.records.get(objectKey);
|
|
@@ -5610,6 +5644,10 @@ var ProbeBlendSceneProjection = class {
|
|
|
5610
5644
|
hasRecords() {
|
|
5611
5645
|
return this.records.size > 0;
|
|
5612
5646
|
}
|
|
5647
|
+
/** Stable upload projection; rebuilt only when probe/object facts change. */
|
|
5648
|
+
recordBufferProjection() {
|
|
5649
|
+
return this.bufferProjection;
|
|
5650
|
+
}
|
|
5613
5651
|
inspect() {
|
|
5614
5652
|
return {
|
|
5615
5653
|
activeContributorCount: this.lastActiveContributorCount,
|
|
@@ -5670,6 +5708,23 @@ var ProbeBlendSceneProjection = class {
|
|
|
5670
5708
|
const dirtyReasons = [];
|
|
5671
5709
|
const affectedObjectKeys = /* @__PURE__ */ new Set();
|
|
5672
5710
|
const previous = this.previous;
|
|
5711
|
+
if (previous !== void 0 && previous.objects === input.objects && input.worldRevision === previous.worldRevision && input.retainSkyResidualRecords === previous.retainSkyResidualRecords && sameProbeFacts(input.probes, previous.probes) && sameSkyFacts(input, previous)) {
|
|
5712
|
+
return {
|
|
5713
|
+
records: this.resultRecords,
|
|
5714
|
+
contributors: [],
|
|
5715
|
+
activeContributorCount: this.lastActiveContributorCount,
|
|
5716
|
+
admittedProbeCount: this.lastAdmittedProbeCount,
|
|
5717
|
+
coverage: this.lastCoverage,
|
|
5718
|
+
skyResidualFraction: 1 - this.lastCoverage,
|
|
5719
|
+
dirtyReasons: [],
|
|
5720
|
+
affectedObjectKeys: [],
|
|
5721
|
+
visits: 0,
|
|
5722
|
+
allocations: 0,
|
|
5723
|
+
uploads: 0,
|
|
5724
|
+
receipt: this.lastReceipt,
|
|
5725
|
+
...this.lastError === void 0 ? {} : { error: this.lastError }
|
|
5726
|
+
};
|
|
5727
|
+
}
|
|
5673
5728
|
const objectKeys = input.objects.map((object) => String(object.objectKey)).sort();
|
|
5674
5729
|
const previousObjectKeys = previous?.objects.map((object) => String(object.objectKey)).sort() ?? [];
|
|
5675
5730
|
if (previous === void 0 || !sameList(objectKeys, previousObjectKeys)) {
|
|
@@ -5678,7 +5733,7 @@ var ProbeBlendSceneProjection = class {
|
|
|
5678
5733
|
}
|
|
5679
5734
|
if (previous !== void 0 && input.worldRevision !== previous.worldRevision)
|
|
5680
5735
|
dirtyReasons.push("world");
|
|
5681
|
-
if (previous !== void 0 && !sameProbeFacts(input.probes, previous.probes))
|
|
5736
|
+
if (previous !== void 0 && (!sameProbeFacts(input.probes, previous.probes) || input.retainSkyResidualRecords !== previous.retainSkyResidualRecords))
|
|
5682
5737
|
dirtyReasons.push("probe-fact");
|
|
5683
5738
|
if (previous !== void 0 && !sameSkyFacts(input, previous)) dirtyReasons.push("sky");
|
|
5684
5739
|
const previousObjects = new Map(previous?.objects.map((object) => [object.objectKey, object]));
|
|
@@ -5755,7 +5810,7 @@ var ProbeBlendSceneProjection = class {
|
|
|
5755
5810
|
let record;
|
|
5756
5811
|
if (admission.error !== void 0) firstError ??= admission.error;
|
|
5757
5812
|
if (admission.admitted.length === 0) {
|
|
5758
|
-
if (input.probes.length === 0) {
|
|
5813
|
+
if (input.probes.length === 0 && input.retainSkyResidualRecords !== true) {
|
|
5759
5814
|
nextRecords.delete(object.objectKey);
|
|
5760
5815
|
this.recordFacts.delete(object.objectKey);
|
|
5761
5816
|
continue;
|
|
@@ -5812,8 +5867,9 @@ var ProbeBlendSceneProjection = class {
|
|
|
5812
5867
|
firstError ??= admission.error;
|
|
5813
5868
|
}
|
|
5814
5869
|
const allocations = previous === void 0 ? nextRecords.size : 0;
|
|
5870
|
+
const resultRecords = Object.freeze([...nextRecords.values()]);
|
|
5815
5871
|
const result = {
|
|
5816
|
-
records:
|
|
5872
|
+
records: resultRecords,
|
|
5817
5873
|
contributors: firstTerms,
|
|
5818
5874
|
activeContributorCount: firstActiveCount,
|
|
5819
5875
|
admittedProbeCount: firstAdmittedCount,
|
|
@@ -5827,14 +5883,38 @@ var ProbeBlendSceneProjection = class {
|
|
|
5827
5883
|
receipt: firstReceipt,
|
|
5828
5884
|
...firstError === void 0 ? {} : { error: firstError }
|
|
5829
5885
|
};
|
|
5886
|
+
const projectedRecords = Object.freeze(
|
|
5887
|
+
[...nextRecords].map(([objectKey, record]) => Object.freeze({ cacheKey: objectKey, record }))
|
|
5888
|
+
);
|
|
5889
|
+
const dirtyRecords = Object.freeze(
|
|
5890
|
+
projectedRecords.filter(({ record }) => affectedObjectKeys.has(record.objectKey))
|
|
5891
|
+
);
|
|
5892
|
+
const removedCacheKeys = Object.freeze(
|
|
5893
|
+
[...this.records.keys()].filter((objectKey) => !nextRecords.has(objectKey))
|
|
5894
|
+
);
|
|
5895
|
+
const capacity = projectedRecords.reduce(
|
|
5896
|
+
(value, { record }) => Math.max(value, record.objectKey + 2),
|
|
5897
|
+
1
|
|
5898
|
+
);
|
|
5830
5899
|
this.previous = input;
|
|
5831
5900
|
this.records = nextRecords;
|
|
5901
|
+
this.resultRecords = resultRecords;
|
|
5902
|
+
const baseRevision = this.bufferProjection.revision;
|
|
5903
|
+
this.bufferProjection = Object.freeze({
|
|
5904
|
+
sourceIdentity: this.bufferProjectionSource,
|
|
5905
|
+
revision: baseRevision + 1,
|
|
5906
|
+
baseRevision,
|
|
5907
|
+
capacity,
|
|
5908
|
+
records: projectedRecords,
|
|
5909
|
+
dirtyRecords,
|
|
5910
|
+
removedCacheKeys
|
|
5911
|
+
});
|
|
5832
5912
|
this.lastError = firstError;
|
|
5833
5913
|
this.lastReceipt = firstReceipt;
|
|
5834
5914
|
this.lastActiveContributorCount = firstActiveCount;
|
|
5835
5915
|
this.lastAdmittedProbeCount = firstAdmittedCount;
|
|
5836
5916
|
this.lastCoverage = firstCoverage;
|
|
5837
|
-
this.lastFinite =
|
|
5917
|
+
this.lastFinite = this.resultRecords.every(
|
|
5838
5918
|
(record) => record.bytes.length === PROBE_BLEND_RECORD_BYTE_SIZE
|
|
5839
5919
|
);
|
|
5840
5920
|
this.lastSky = input.sky ?? (input.skyIrradiance === void 0 ? { available: false, irradiance: [0, 0, 0], fallbackReason: "no-skylight" } : { available: true, irradiance: input.skyIrradiance });
|
|
@@ -5844,6 +5924,6 @@ var ProbeBlendSceneProjection = class {
|
|
|
5844
5924
|
}
|
|
5845
5925
|
};
|
|
5846
5926
|
|
|
5847
|
-
export { InstanceBoundsCache, OcclusionRenderRuntime, PROBE_MAX_CONTRIBUTORS, ProbeBlendSceneProjection, SSR_HISTORY_FORMAT, SsrHistoryOwner, admitProbeContributors, blendLightProbes, buildRectAreaWorldFrame, buildShadowFrusta, createCookieProjectionMatrixData, createExtendedLightingState, createSsrHistoryOwner, createSsrSpatialResources, emptyBloomInspection, estimateSsrSpatialMemory, extractFrames, fingerprintNumericArray, glyphTextLayoutSystem, primitiveKey, primitiveKeyId, projectExtendedLightingInspection, promoteExtendedLightingCandidate, recordExtendedLightingFailure, rectAreaFacesPoint, scaledProbeWeight, setOcclusionRuntimeTestHooks, viewKey, viewKeyId };
|
|
5848
|
-
//# sourceMappingURL=chunk-
|
|
5849
|
-
//# sourceMappingURL=chunk-
|
|
5927
|
+
export { InstanceBoundsCache, OcclusionRenderRuntime, PROBE_MAX_CONTRIBUTORS, ProbeBlendSceneProjection, SSR_HISTORY_FORMAT, SsrHistoryOwner, admitProbeContributors, blendLightProbes, buildRectAreaWorldFrame, buildShadowFrusta, createCookieProjectionMatrixData, createExtendedLightingState, createSsrHistoryOwner, createSsrSpatialResources, emptyBloomInspection, estimateSsrSpatialMemory, extractFrames, fingerprintNumericArray, glyphTextLayoutSystem, primitiveKey, primitiveKeyId, projectBarrelDistortionInspection, projectExtendedLightingInspection, promoteExtendedLightingCandidate, recordExtendedLightingFailure, rectAreaFacesPoint, scaledProbeWeight, setOcclusionRuntimeTestHooks, viewKey, viewKeyId };
|
|
5928
|
+
//# sourceMappingURL=chunk-UI5SFODX.mjs.map
|
|
5929
|
+
//# sourceMappingURL=chunk-UI5SFODX.mjs.map
|