@aura3d/engine 4.6.1 → 4.7.0
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/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts +12 -0
- package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts.map +1 -1
- package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js +26 -1
- package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js.map +1 -1
- package/dist/assets/vfx/LICENSE.md +1 -0
- package/dist/assets/vfx/aura-vfx-1k.png +0 -0
- package/dist/assets/vfx/aura-vfx-2k.png +0 -0
- package/dist/aura3d-cli/admission/cubeLut.d.ts +18 -0
- package/dist/aura3d-cli/admission/cubeLut.d.ts.map +1 -0
- package/dist/aura3d-cli/admission/cubeLut.js +53 -0
- package/dist/aura3d-cli/admission/cubeLut.js.map +1 -0
- package/dist/aura3d-cli/asset-core-types.d.ts +7 -4
- package/dist/aura3d-cli/asset-core-types.d.ts.map +1 -1
- package/dist/aura3d-cli/cli-help.d.ts.map +1 -1
- package/dist/aura3d-cli/cli-help.js +7 -4
- package/dist/aura3d-cli/cli-help.js.map +1 -1
- package/dist/aura3d-cli/cli-options.d.ts +1 -1
- package/dist/aura3d-cli/cli-options.d.ts.map +1 -1
- package/dist/aura3d-cli/cli-options.js +2 -2
- package/dist/aura3d-cli/cli-options.js.map +1 -1
- package/dist/aura3d-cli/cli.js +3 -2
- package/dist/aura3d-cli/cli.js.map +1 -1
- package/dist/aura3d-cli/commands/assets/certifyCategories.d.ts +26 -0
- package/dist/aura3d-cli/commands/assets/certifyCategories.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/certifyCategories.js +31 -0
- package/dist/aura3d-cli/commands/assets/certifyCategories.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/optimize.d.ts +66 -0
- package/dist/aura3d-cli/commands/assets/optimize.d.ts.map +1 -1
- package/dist/aura3d-cli/commands/assets/optimize.js +270 -1
- package/dist/aura3d-cli/commands/assets/optimize.js.map +1 -1
- package/dist/aura3d-cli/commands/assets/optimizeVerb.d.ts.map +1 -1
- package/dist/aura3d-cli/commands/assets/optimizeVerb.js +26 -1
- package/dist/aura3d-cli/commands/assets/optimizeVerb.js.map +1 -1
- package/dist/aura3d-cli/commands/evidence/judge.d.ts +50 -1
- package/dist/aura3d-cli/commands/evidence/judge.d.ts.map +1 -1
- package/dist/aura3d-cli/commands/evidence/judge.js +154 -6
- package/dist/aura3d-cli/commands/evidence/judge.js.map +1 -1
- package/dist/aura3d-cli/commands/prd05/index.js +1 -1
- package/dist/aura3d-cli/commands/prd05/index.js.map +1 -1
- package/dist/aura3d-cli/index.d.ts.map +1 -1
- package/dist/aura3d-cli/index.js +25 -9
- package/dist/aura3d-cli/index.js.map +1 -1
- package/dist/aura3d-cli/look/judge.d.ts +53 -5
- package/dist/aura3d-cli/look/judge.d.ts.map +1 -1
- package/dist/aura3d-cli/look/judge.js +226 -50
- package/dist/aura3d-cli/look/judge.js.map +1 -1
- package/dist/create-aura3d/index.js +1 -1
- package/dist/engine/agent-api/RootRuntimeSupport.d.ts +7 -0
- package/dist/engine/agent-api/RootRuntimeSupport.d.ts.map +1 -1
- package/dist/engine/agent-api/RootRuntimeSupport.js +7 -0
- package/dist/engine/agent-api/RootRuntimeSupport.js.map +1 -1
- package/dist/engine/agent-api/app/actorAnimationHandle.d.ts +2 -0
- package/dist/engine/agent-api/app/actorAnimationHandle.d.ts.map +1 -1
- package/dist/engine/agent-api/app/actorAnimationHandle.js +149 -2
- package/dist/engine/agent-api/app/actorAnimationHandle.js.map +1 -1
- package/dist/engine/agent-api/app/createAuraApp.d.ts.map +1 -1
- package/dist/engine/agent-api/app/createAuraApp.js +13 -1
- package/dist/engine/agent-api/app/createAuraApp.js.map +1 -1
- package/dist/engine/agent-api/app/frameLoop.d.ts.map +1 -1
- package/dist/engine/agent-api/app/frameLoop.js +4 -2
- package/dist/engine/agent-api/app/frameLoop.js.map +1 -1
- package/dist/engine/agent-api/camera/layers/cinematicBars.d.ts +2 -0
- package/dist/engine/agent-api/camera/layers/cinematicBars.d.ts.map +1 -1
- package/dist/engine/agent-api/camera/layers/cinematicBars.js +4 -0
- package/dist/engine/agent-api/camera/layers/cinematicBars.js.map +1 -1
- package/dist/engine/agent-api/compiler/compileScene.d.ts +11 -1
- package/dist/engine/agent-api/compiler/compileScene.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/compileScene.js +27 -1
- package/dist/engine/agent-api/compiler/compileScene.js.map +1 -1
- package/dist/engine/agent-api/compiler/customMaterial.d.ts +16 -5
- package/dist/engine/agent-api/compiler/customMaterial.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/customMaterial.js +149 -20
- package/dist/engine/agent-api/compiler/customMaterial.js.map +1 -1
- package/dist/engine/agent-api/compiler/environment.d.ts +57 -1
- package/dist/engine/agent-api/compiler/environment.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/environment.js +170 -5
- package/dist/engine/agent-api/compiler/environment.js.map +1 -1
- package/dist/engine/agent-api/compiler/fog.js +1 -1
- package/dist/engine/agent-api/compiler/fog.js.map +1 -1
- package/dist/engine/agent-api/compiler/lights.d.ts +92 -0
- package/dist/engine/agent-api/compiler/lights.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/lights.js +358 -1
- package/dist/engine/agent-api/compiler/lights.js.map +1 -1
- package/dist/engine/agent-api/compiler/observations.d.ts +34 -0
- package/dist/engine/agent-api/compiler/observations.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/observations.js +77 -5
- package/dist/engine/agent-api/compiler/observations.js.map +1 -1
- package/dist/engine/agent-api/compiler/postprocess.d.ts +10 -0
- package/dist/engine/agent-api/compiler/postprocess.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/postprocess.js +28 -7
- package/dist/engine/agent-api/compiler/postprocess.js.map +1 -1
- package/dist/engine/agent-api/compiler/renderInput.d.ts +2 -0
- package/dist/engine/agent-api/compiler/renderInput.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/renderInput.js +15 -2
- package/dist/engine/agent-api/compiler/renderInput.js.map +1 -1
- package/dist/engine/agent-api/compiler/renderer.d.ts +6 -0
- package/dist/engine/agent-api/compiler/renderer.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/renderer.js +14 -3
- package/dist/engine/agent-api/compiler/renderer.js.map +1 -1
- package/dist/engine/agent-api/diagnostics.d.ts +16 -0
- package/dist/engine/agent-api/diagnostics.d.ts.map +1 -1
- package/dist/engine/agent-api/diagnostics.js +45 -2
- package/dist/engine/agent-api/diagnostics.js.map +1 -1
- package/dist/engine/agent-api/index.d.ts +2 -0
- package/dist/engine/agent-api/index.d.ts.map +1 -1
- package/dist/engine/agent-api/index.js +3 -0
- package/dist/engine/agent-api/index.js.map +1 -1
- package/dist/engine/agent-api/looks/lookPresets.d.ts +2 -0
- package/dist/engine/agent-api/looks/lookPresets.d.ts.map +1 -1
- package/dist/engine/agent-api/looks/lookPresets.js.map +1 -1
- package/dist/engine/agent-api/looks/looks.d.ts +12 -2
- package/dist/engine/agent-api/looks/looks.d.ts.map +1 -1
- package/dist/engine/agent-api/looks/looks.js +365 -65
- package/dist/engine/agent-api/looks/looks.js.map +1 -1
- package/dist/engine/agent-api/nodes/builder.d.ts +8 -0
- package/dist/engine/agent-api/nodes/builder.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/builder.js +15 -0
- package/dist/engine/agent-api/nodes/builder.js.map +1 -1
- package/dist/engine/agent-api/nodes/effects.composite.d.ts +13 -9
- package/dist/engine/agent-api/nodes/effects.composite.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/effects.d.ts +65 -14
- package/dist/engine/agent-api/nodes/effects.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/effects.js +49 -16
- package/dist/engine/agent-api/nodes/effects.js.map +1 -1
- package/dist/engine/agent-api/nodes/effects.post.d.ts +62 -5
- package/dist/engine/agent-api/nodes/effects.post.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/effects.post.js +30 -17
- package/dist/engine/agent-api/nodes/effects.post.js.map +1 -1
- package/dist/engine/agent-api/nodes/effects.toon.d.ts +65 -1
- package/dist/engine/agent-api/nodes/effects.toon.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/effects.toon.js +186 -23
- package/dist/engine/agent-api/nodes/effects.toon.js.map +1 -1
- package/dist/engine/agent-api/nodes/groups.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/groups.js +2 -2
- package/dist/engine/agent-api/nodes/groups.js.map +1 -1
- package/dist/engine/agent-api/nodes/instances.d.ts +130 -90
- package/dist/engine/agent-api/nodes/instances.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/instances.js +192 -48
- package/dist/engine/agent-api/nodes/instances.js.map +1 -1
- package/dist/engine/agent-api/nodes/material.d.ts +8 -1
- package/dist/engine/agent-api/nodes/material.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/material.js +82 -0
- package/dist/engine/agent-api/nodes/material.js.map +1 -1
- package/dist/engine/agent-api/nodes/outlineTargets.d.ts +16 -0
- package/dist/engine/agent-api/nodes/outlineTargets.d.ts.map +1 -0
- package/dist/engine/agent-api/nodes/outlineTargets.js +46 -0
- package/dist/engine/agent-api/nodes/outlineTargets.js.map +1 -0
- package/dist/engine/agent-api/nodes/scene.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/scene.js +2 -2
- package/dist/engine/agent-api/nodes/scene.js.map +1 -1
- package/dist/engine/agent-api/nodes/sky.d.ts +23 -6
- package/dist/engine/agent-api/nodes/sky.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/sky.js +2 -0
- package/dist/engine/agent-api/nodes/sky.js.map +1 -1
- package/dist/engine/agent-api/nodes/types/runtime.d.ts +28 -1
- package/dist/engine/agent-api/nodes/types/runtime.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/types.d.ts +71 -3
- package/dist/engine/agent-api/nodes/types.d.ts.map +1 -1
- package/dist/engine/agent-api/performanceEvidence.js +7 -2
- package/dist/engine/agent-api/performanceEvidence.js.map +1 -1
- package/dist/engine/agent-api/postBridge.d.ts +75 -3
- package/dist/engine/agent-api/postBridge.d.ts.map +1 -1
- package/dist/engine/agent-api/postBridge.js +436 -33
- package/dist/engine/agent-api/postBridge.js.map +1 -1
- package/dist/engine/agent-api/postPresets.d.ts +8 -4
- package/dist/engine/agent-api/postPresets.d.ts.map +1 -1
- package/dist/engine/agent-api/postPresets.js +12 -11
- package/dist/engine/agent-api/postPresets.js.map +1 -1
- package/dist/engine/agent-api/publishedUnion.d.ts +7 -4
- package/dist/engine/agent-api/publishedUnion.d.ts.map +1 -1
- package/dist/engine/agent-api/publishedUnion.js +1 -1
- package/dist/engine/agent-api/publishedUnion.js.map +1 -1
- package/dist/engine/agent-api/rendererDiagnostics.js +4 -6
- package/dist/engine/agent-api/rendererDiagnostics.js.map +1 -1
- package/dist/engine/agent-api/vfx/atmosphere-api.d.ts +2 -4
- package/dist/engine/agent-api/vfx/atmosphere-api.d.ts.map +1 -1
- package/dist/engine/agent-api/vfx/atmosphere-api.js +2 -1
- package/dist/engine/agent-api/vfx/atmosphere-api.js.map +1 -1
- package/dist/engine/agent-api/vfx/effects-api.d.ts +3 -0
- package/dist/engine/agent-api/vfx/effects-api.d.ts.map +1 -1
- package/dist/engine/agent-api/vfx/effects-api.js +337 -74
- package/dist/engine/agent-api/vfx/effects-api.js.map +1 -1
- package/dist/engine/agent-api/world/flags.d.ts +33 -3
- package/dist/engine/agent-api/world/flags.d.ts.map +1 -1
- package/dist/engine/agent-api/world/flags.js +44 -12
- package/dist/engine/agent-api/world/flags.js.map +1 -1
- package/dist/engine/agent-api/world/index.d.ts +10 -1
- package/dist/engine/agent-api/world/index.d.ts.map +1 -1
- package/dist/engine/agent-api/world/index.js +11 -2
- package/dist/engine/agent-api/world/index.js.map +1 -1
- package/dist/engine/agent-api/world/scatter.d.ts +50 -3
- package/dist/engine/agent-api/world/scatter.d.ts.map +1 -1
- package/dist/engine/agent-api/world/scatter.js +93 -7
- package/dist/engine/agent-api/world/scatter.js.map +1 -1
- package/dist/engine/agent-api/world/terrain.d.ts +8 -0
- package/dist/engine/agent-api/world/terrain.d.ts.map +1 -1
- package/dist/engine/agent-api/world/terrain.js +6 -1
- package/dist/engine/agent-api/world/terrain.js.map +1 -1
- package/dist/engine/contracts/animation.d.ts +30 -12
- package/dist/engine/contracts/animation.d.ts.map +1 -1
- package/dist/engine/contracts/animation.js +2 -0
- package/dist/engine/contracts/animation.js.map +1 -1
- package/dist/engine/contracts/art.d.ts +1 -1
- package/dist/engine/contracts/art.d.ts.map +1 -1
- package/dist/engine/contracts/atmosphere.d.ts +43 -9
- package/dist/engine/contracts/atmosphere.d.ts.map +1 -1
- package/dist/engine/contracts/atmosphere.js.map +1 -1
- package/dist/engine/contracts/camera.d.ts +8 -2
- package/dist/engine/contracts/camera.d.ts.map +1 -1
- package/dist/engine/contracts/camera.js +14 -3
- package/dist/engine/contracts/camera.js.map +1 -1
- package/dist/engine/contracts/effects.d.ts +83 -37
- package/dist/engine/contracts/effects.d.ts.map +1 -1
- package/dist/engine/contracts/effects.js +2 -1
- package/dist/engine/contracts/effects.js.map +1 -1
- package/dist/engine/contracts/flags.d.ts.map +1 -1
- package/dist/engine/contracts/flags.js +29 -4
- package/dist/engine/contracts/flags.js.map +1 -1
- package/dist/engine/contracts/lighting.d.ts +33 -1
- package/dist/engine/contracts/lighting.d.ts.map +1 -1
- package/dist/engine/contracts/lighting.js +13 -1
- package/dist/engine/contracts/lighting.js.map +1 -1
- package/dist/engine/contracts/looks.d.ts +57 -1
- package/dist/engine/contracts/looks.d.ts.map +1 -1
- package/dist/engine/contracts/looks.js.map +1 -1
- package/dist/engine/contracts/materials.d.ts +25 -0
- package/dist/engine/contracts/materials.d.ts.map +1 -1
- package/dist/engine/contracts/materials.js +4 -1
- package/dist/engine/contracts/materials.js.map +1 -1
- package/dist/engine/contracts/post.d.ts +14 -0
- package/dist/engine/contracts/post.d.ts.map +1 -1
- package/dist/engine/contracts/post.js +2 -0
- package/dist/engine/contracts/post.js.map +1 -1
- package/dist/engine/instances-model/CrowdKit.d.ts +231 -0
- package/dist/engine/instances-model/CrowdKit.d.ts.map +1 -0
- package/dist/engine/instances-model/CrowdKit.js +496 -0
- package/dist/engine/instances-model/CrowdKit.js.map +1 -0
- package/dist/engine/lanes/prd02.d.ts +36 -2
- package/dist/engine/lanes/prd02.d.ts.map +1 -1
- package/dist/engine/lanes/prd02.js +120 -7
- package/dist/engine/lanes/prd02.js.map +1 -1
- package/dist/engine/lanes/prd03.d.ts.map +1 -1
- package/dist/engine/lanes/prd03.js +9 -1
- package/dist/engine/lanes/prd03.js.map +1 -1
- package/dist/engine/lanes/prd07.d.ts.map +1 -1
- package/dist/engine/lanes/prd07.js +12 -7
- package/dist/engine/lanes/prd07.js.map +1 -1
- package/dist/engine/production-runtime/GlbResourceCache.d.ts +140 -0
- package/dist/engine/production-runtime/GlbResourceCache.d.ts.map +1 -0
- package/dist/engine/production-runtime/GlbResourceCache.js +237 -0
- package/dist/engine/production-runtime/GlbResourceCache.js.map +1 -0
- package/dist/engine/production-runtime/ModelMaterialOverrides.d.ts +53 -2
- package/dist/engine/production-runtime/ModelMaterialOverrides.d.ts.map +1 -1
- package/dist/engine/production-runtime/ModelMaterialOverrides.js +142 -1
- package/dist/engine/production-runtime/ModelMaterialOverrides.js.map +1 -1
- package/dist/engine/production-runtime/TypedGLBActor.d.ts +55 -0
- package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
- package/dist/engine/production-runtime/TypedGLBActor.js +205 -3
- package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
- package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts.map +1 -1
- package/dist/engine/production-runtime/actor/ModelTextureShare.js +5 -2
- package/dist/engine/production-runtime/actor/ModelTextureShare.js.map +1 -1
- package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.d.ts.map +1 -1
- package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.js +10 -1
- package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.js.map +1 -1
- package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts +55 -0
- package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts.map +1 -1
- package/dist/engine/production-runtime/effects/EffectNodeLowering.js +71 -7
- package/dist/engine/production-runtime/effects/EffectNodeLowering.js.map +1 -1
- package/dist/engine/production-runtime/effects/FlipbookAtlas.d.ts +85 -0
- package/dist/engine/production-runtime/effects/FlipbookAtlas.d.ts.map +1 -1
- package/dist/engine/production-runtime/effects/FlipbookAtlas.js +164 -0
- package/dist/engine/production-runtime/effects/FlipbookAtlas.js.map +1 -1
- package/dist/engine/production-runtime/effects/LiveAtmosphere.d.ts +37 -6
- package/dist/engine/production-runtime/effects/LiveAtmosphere.d.ts.map +1 -1
- package/dist/engine/production-runtime/effects/LiveAtmosphere.js +93 -10
- package/dist/engine/production-runtime/effects/LiveAtmosphere.js.map +1 -1
- package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts +71 -1
- package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts.map +1 -1
- package/dist/engine/production-runtime/effects/ProductionEffectSystem.js +356 -6
- package/dist/engine/production-runtime/effects/ProductionEffectSystem.js.map +1 -1
- package/dist/engine/production-runtime/world/WaterRuntime.d.ts +9 -0
- package/dist/engine/production-runtime/world/WaterRuntime.d.ts.map +1 -1
- package/dist/engine/production-runtime/world/WaterRuntime.js +27 -11
- package/dist/engine/production-runtime/world/WaterRuntime.js.map +1 -1
- package/dist/engine/production-runtime/world/WorldFramePasses.d.ts +11 -1
- package/dist/engine/production-runtime/world/WorldFramePasses.d.ts.map +1 -1
- package/dist/engine/production-runtime/world/WorldFramePasses.js +37 -1
- package/dist/engine/production-runtime/world/WorldFramePasses.js.map +1 -1
- package/dist/engine/public/index.d.ts +22 -0
- package/dist/engine/public/index.d.ts.map +1 -1
- package/dist/engine/public/index.js +14 -0
- package/dist/engine/public/index.js.map +1 -1
- package/dist/game/art/define.d.ts +1 -1
- package/dist/game/art/define.d.ts.map +1 -1
- package/dist/game/art/define.js +1 -1
- package/dist/game/art/define.js.map +1 -1
- package/dist/game/fonts/register.d.ts +16 -1
- package/dist/game/fonts/register.d.ts.map +1 -1
- package/dist/game/fonts/register.js +18 -7
- package/dist/game/fonts/register.js.map +1 -1
- package/dist/game/hud/themes.d.ts +33 -8
- package/dist/game/hud/themes.d.ts.map +1 -1
- package/dist/game/hud/themes.js +125 -22
- package/dist/game/hud/themes.js.map +1 -1
- package/dist/game/index.d.ts +4 -2
- package/dist/game/index.d.ts.map +1 -1
- package/dist/game/index.js +2 -1
- package/dist/game/index.js.map +1 -1
- package/dist/game/juice/audioReactive.d.ts +42 -0
- package/dist/game/juice/audioReactive.d.ts.map +1 -0
- package/dist/game/juice/audioReactive.js +68 -0
- package/dist/game/juice/audioReactive.js.map +1 -0
- package/dist/game/styles/themes/arcade-neon.css +2 -1
- package/dist/game/styles/themes/fighting.css +2 -1
- package/dist/game/styles/themes/ink-scroll.css +15 -0
- package/dist/game/styles/themes/motorsport.css +2 -1
- package/dist/game/styles/themes/plain.css +2 -1
- package/dist/game/styles/themes/sci-fi-telemetry.css +2 -1
- package/dist/game/styles/themes/sky-expedition.css +15 -0
- package/dist/game/styles/themes/sports-broadcast.css +2 -1
- package/dist/game/styles/themes/storybook.css +15 -0
- package/dist/game/styles/themes/tabletop.css +2 -1
- package/dist/game/styles.css +3 -1
- package/dist/rendering/ClusteredForwardLighting.d.ts.map +1 -1
- package/dist/rendering/ClusteredForwardLighting.js +3 -1
- package/dist/rendering/ClusteredForwardLighting.js.map +1 -1
- package/dist/rendering/DepthPass.d.ts +25 -0
- package/dist/rendering/DepthPass.d.ts.map +1 -1
- package/dist/rendering/DepthPass.js +149 -1
- package/dist/rendering/DepthPass.js.map +1 -1
- package/dist/rendering/ForwardPass.d.ts +84 -0
- package/dist/rendering/ForwardPass.d.ts.map +1 -1
- package/dist/rendering/ForwardPass.js +236 -12
- package/dist/rendering/ForwardPass.js.map +1 -1
- package/dist/rendering/LightUniforms.d.ts +12 -0
- package/dist/rendering/LightUniforms.d.ts.map +1 -1
- package/dist/rendering/LightUniforms.js +9 -1
- package/dist/rendering/LightUniforms.js.map +1 -1
- package/dist/rendering/atmosphere/CloudLayer.d.ts +15 -0
- package/dist/rendering/atmosphere/CloudLayer.d.ts.map +1 -1
- package/dist/rendering/atmosphere/CloudLayer.js +27 -5
- package/dist/rendering/atmosphere/CloudLayer.js.map +1 -1
- package/dist/rendering/atmosphere/GradientSky.d.ts +3 -3
- package/dist/rendering/atmosphere/GradientSky.d.ts.map +1 -1
- package/dist/rendering/atmosphere/GradientSky.js +20 -9
- package/dist/rendering/atmosphere/GradientSky.js.map +1 -1
- package/dist/rendering/atmosphere/HeightFog.d.ts.map +1 -1
- package/dist/rendering/atmosphere/HeightFog.js +9 -0
- package/dist/rendering/atmosphere/HeightFog.js.map +1 -1
- package/dist/rendering/atmosphere/SkyBackgroundPass.d.ts +11 -0
- package/dist/rendering/atmosphere/SkyBackgroundPass.d.ts.map +1 -1
- package/dist/rendering/atmosphere/SkyBackgroundPass.js +40 -7
- package/dist/rendering/atmosphere/SkyBackgroundPass.js.map +1 -1
- package/dist/rendering/atmosphere/StarField.d.ts +21 -0
- package/dist/rendering/atmosphere/StarField.d.ts.map +1 -1
- package/dist/rendering/atmosphere/StarField.js +24 -1
- package/dist/rendering/atmosphere/StarField.js.map +1 -1
- package/dist/rendering/atmosphere/sky.glsl.d.ts.map +1 -1
- package/dist/rendering/atmosphere/sky.glsl.js +8 -0
- package/dist/rendering/atmosphere/sky.glsl.js.map +1 -1
- package/dist/rendering/contracts/flags.state.d.ts.map +1 -1
- package/dist/rendering/contracts/flags.state.js +19 -0
- package/dist/rendering/contracts/flags.state.js.map +1 -1
- package/dist/rendering/forward/Lighting.d.ts +7 -1
- package/dist/rendering/forward/Lighting.d.ts.map +1 -1
- package/dist/rendering/forward/Lighting.js +24 -1
- package/dist/rendering/forward/Lighting.js.map +1 -1
- package/dist/rendering/forward/Velocity.d.ts +8 -0
- package/dist/rendering/forward/Velocity.d.ts.map +1 -1
- package/dist/rendering/forward/Velocity.js +10 -0
- package/dist/rendering/forward/Velocity.js.map +1 -1
- package/dist/rendering/lanes/prd03.d.ts +1 -1
- package/dist/rendering/lanes/prd03.d.ts.map +1 -1
- package/dist/rendering/lanes/prd03.js +6 -1
- package/dist/rendering/lanes/prd03.js.map +1 -1
- package/dist/rendering/lanes/prd07.d.ts.map +1 -1
- package/dist/rendering/lanes/prd07.js +5 -2
- package/dist/rendering/lanes/prd07.js.map +1 -1
- package/dist/rendering/post/DisplayLutCache.d.ts +10 -2
- package/dist/rendering/post/DisplayLutCache.d.ts.map +1 -1
- package/dist/rendering/post/DisplayLutCache.js +15 -3
- package/dist/rendering/post/DisplayLutCache.js.map +1 -1
- package/dist/rendering/post/PostGraph.d.ts +23 -0
- package/dist/rendering/post/PostGraph.d.ts.map +1 -1
- package/dist/rendering/post/PostGraph.js.map +1 -1
- package/dist/rendering/post/PostQualityTiers.d.ts +36 -0
- package/dist/rendering/post/PostQualityTiers.d.ts.map +1 -1
- package/dist/rendering/post/PostQualityTiers.js +75 -0
- package/dist/rendering/post/PostQualityTiers.js.map +1 -1
- package/dist/rendering/post/chunks/velocity.glsl.d.ts +7 -0
- package/dist/rendering/post/chunks/velocity.glsl.d.ts.map +1 -1
- package/dist/rendering/post/chunks/velocity.glsl.js +12 -1
- package/dist/rendering/post/chunks/velocity.glsl.js.map +1 -1
- package/dist/rendering/post/shaders/displayGrade.glsl.d.ts +15 -1
- package/dist/rendering/post/shaders/displayGrade.glsl.d.ts.map +1 -1
- package/dist/rendering/post/shaders/displayGrade.glsl.js +26 -2
- package/dist/rendering/post/shaders/displayGrade.glsl.js.map +1 -1
- package/dist/rendering/post/shaders/dof.glsl.d.ts +11 -1
- package/dist/rendering/post/shaders/dof.glsl.d.ts.map +1 -1
- package/dist/rendering/post/shaders/dof.glsl.js +22 -0
- package/dist/rendering/post/shaders/dof.glsl.js.map +1 -1
- package/dist/rendering/post/shaders/finalize.glsl.d.ts +1 -1
- package/dist/rendering/post/shaders/finalize.glsl.d.ts.map +1 -1
- package/dist/rendering/post/shaders/finalize.glsl.js +3 -2
- package/dist/rendering/post/shaders/finalize.glsl.js.map +1 -1
- package/dist/rendering/post/shaders/godrays.glsl.d.ts +24 -1
- package/dist/rendering/post/shaders/godrays.glsl.d.ts.map +1 -1
- package/dist/rendering/post/shaders/godrays.glsl.js +45 -5
- package/dist/rendering/post/shaders/godrays.glsl.js.map +1 -1
- package/dist/rendering/post/shaders/hdrGrade.glsl.d.ts +66 -0
- package/dist/rendering/post/shaders/hdrGrade.glsl.d.ts.map +1 -0
- package/dist/rendering/post/shaders/hdrGrade.glsl.js +159 -0
- package/dist/rendering/post/shaders/hdrGrade.glsl.js.map +1 -0
- package/dist/rendering/post/shaders/ssr.glsl.d.ts +39 -0
- package/dist/rendering/post/shaders/ssr.glsl.d.ts.map +1 -0
- package/dist/rendering/post/shaders/ssr.glsl.js +163 -0
- package/dist/rendering/post/shaders/ssr.glsl.js.map +1 -0
- package/dist/rendering/post/v2Stages.d.ts +53 -0
- package/dist/rendering/post/v2Stages.d.ts.map +1 -1
- package/dist/rendering/post/v2Stages.js +314 -23
- package/dist/rendering/post/v2Stages.js.map +1 -1
- package/dist/rendering/postprocess/NativeBloomPyramid.d.ts +19 -0
- package/dist/rendering/postprocess/NativeBloomPyramid.d.ts.map +1 -1
- package/dist/rendering/postprocess/NativeBloomPyramid.js +37 -0
- package/dist/rendering/postprocess/NativeBloomPyramid.js.map +1 -1
- package/dist/rendering/program/ProgramGenerator.d.ts.map +1 -1
- package/dist/rendering/program/ProgramGenerator.js +12 -1
- package/dist/rendering/program/ProgramGenerator.js.map +1 -1
- package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts +12 -0
- package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts.map +1 -1
- package/dist/rendering/program/chunks/shadow_forward.glsl.js +57 -0
- package/dist/rendering/program/chunks/shadow_forward.glsl.js.map +1 -1
- package/dist/rendering/renderer/Background.d.ts.map +1 -1
- package/dist/rendering/renderer/Background.js +26 -2
- package/dist/rendering/renderer/Background.js.map +1 -1
- package/dist/rendering/renderer/FrameGraph.d.ts +8 -0
- package/dist/rendering/renderer/FrameGraph.d.ts.map +1 -1
- package/dist/rendering/renderer/FrameGraph.js +46 -7
- package/dist/rendering/renderer/FrameGraph.js.map +1 -1
- package/dist/rendering/renderer/OutlineTargets.d.ts +99 -0
- package/dist/rendering/renderer/OutlineTargets.d.ts.map +1 -0
- package/dist/rendering/renderer/OutlineTargets.js +286 -0
- package/dist/rendering/renderer/OutlineTargets.js.map +1 -0
- package/dist/rendering/renderer/PostprocessExecution.d.ts +5 -0
- package/dist/rendering/renderer/PostprocessExecution.d.ts.map +1 -1
- package/dist/rendering/renderer/PostprocessExecution.js +70 -4
- package/dist/rendering/renderer/PostprocessExecution.js.map +1 -1
- package/dist/rendering/renderer/postSkipped.d.ts +6 -0
- package/dist/rendering/renderer/postSkipped.d.ts.map +1 -1
- package/dist/rendering/renderer/postSkipped.js +8 -0
- package/dist/rendering/renderer/postSkipped.js.map +1 -1
- package/dist/rendering/shaders/chunks/author/ibl.glsl.d.ts +20 -0
- package/dist/rendering/shaders/chunks/author/ibl.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/ibl.glsl.js +84 -0
- package/dist/rendering/shaders/chunks/author/ibl.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/index.d.ts +3 -1
- package/dist/rendering/shaders/chunks/author/index.d.ts.map +1 -1
- package/dist/rendering/shaders/chunks/author/index.js +38 -3
- package/dist/rendering/shaders/chunks/author/index.js.map +1 -1
- package/dist/rendering/shaders/chunks/author/lights.glsl.d.ts +16 -0
- package/dist/rendering/shaders/chunks/author/lights.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/lights.glsl.js +112 -0
- package/dist/rendering/shaders/chunks/author/lights.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/shadow.glsl.d.ts +16 -2
- package/dist/rendering/shaders/chunks/author/shadow.glsl.d.ts.map +1 -1
- package/dist/rendering/shaders/chunks/author/shadow.glsl.js +46 -2
- package/dist/rendering/shaders/chunks/author/shadow.glsl.js.map +1 -1
- package/dist/rendering/shaders/chunks/instance_color_target.glsl.d.ts +34 -0
- package/dist/rendering/shaders/chunks/instance_color_target.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/instance_color_target.glsl.js +101 -0
- package/dist/rendering/shaders/chunks/instance_color_target.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/rim.glsl.d.ts +37 -0
- package/dist/rendering/shaders/chunks/rim.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/rim.glsl.js +50 -0
- package/dist/rendering/shaders/chunks/rim.glsl.js.map +1 -0
- package/dist/rendering/shadows/Prd02ShadowBridge.d.ts +26 -3
- package/dist/rendering/shadows/Prd02ShadowBridge.d.ts.map +1 -1
- package/dist/rendering/shadows/Prd02ShadowBridge.js +134 -8
- package/dist/rendering/shadows/Prd02ShadowBridge.js.map +1 -1
- package/dist/rendering/shadows/Prd02ShadowsContributor.d.ts.map +1 -1
- package/dist/rendering/shadows/Prd02ShadowsContributor.js +4 -16
- package/dist/rendering/shadows/Prd02ShadowsContributor.js.map +1 -1
- package/dist/rendering/vfx/VfxAtlas.d.ts +10 -0
- package/dist/rendering/vfx/VfxAtlas.d.ts.map +1 -1
- package/dist/rendering/vfx/VfxAtlas.js +18 -3
- package/dist/rendering/vfx/VfxAtlas.js.map +1 -1
- package/dist/rendering/webgl2/LegacyPost.d.ts +9 -1
- package/dist/rendering/webgl2/LegacyPost.d.ts.map +1 -1
- package/dist/rendering/webgl2/LegacyPost.js +23 -7
- package/dist/rendering/webgl2/LegacyPost.js.map +1 -1
- package/dist/rendering/webgl2/MultiDraw.d.ts.map +1 -1
- package/dist/rendering/webgl2/MultiDraw.js +51 -1
- package/dist/rendering/webgl2/MultiDraw.js.map +1 -1
- package/dist/rendering/world/vegetation/WindField.d.ts.map +1 -1
- package/dist/rendering/world/vegetation/WindField.js +4 -1
- package/dist/rendering/world/vegetation/WindField.js.map +1 -1
- package/dist/rendering/world/water/ReflectionViewPass.d.ts.map +1 -1
- package/dist/rendering/world/water/ReflectionViewPass.js +12 -2
- package/dist/rendering/world/water/ReflectionViewPass.js.map +1 -1
- package/dist/rendering/world/water/SceneCopyFallback.d.ts.map +1 -1
- package/dist/rendering/world/water/SceneCopyFallback.js +9 -2
- package/dist/rendering/world/water/SceneCopyFallback.js.map +1 -1
- package/dist/rendering/world/water/WaterMaterial.d.ts.map +1 -1
- package/dist/rendering/world/water/WaterMaterial.js +8 -2
- package/dist/rendering/world/water/WaterMaterial.js.map +1 -1
- package/package.json +25 -25
- package/templates/cinematic-scene/package.json +2 -2
- package/templates/mini-game/package.json +2 -2
- package/templates/product-viewer/package.json +2 -2
- package/templates/production-asset-inspector/package.json +1 -1
- package/templates/production-material-studio/package.json +1 -1
- package/templates/production-product-configurator/package.json +1 -1
- package/templates/production-product-viewer/package.json +1 -1
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { resolveQrFlags } from "../../contracts/flags.js";
|
|
3
3
|
import { parseHrefCached } from "../../contracts/urlCache.js";
|
|
4
4
|
import { colorToLinearRgb, multiplyRgb } from "../colorUtils.js";
|
|
5
|
+
import { parseAuraColor } from "../color.js";
|
|
5
6
|
import { clampNumber, normalizedDirection, productionRuntimeLightDirection, quaternionFromForwardDirection } from "../compiler/observations.js";
|
|
6
7
|
import { normalize3 } from "../sceneMath.js";
|
|
7
8
|
import { groups } from "../nodes/groups.js";
|
|
@@ -412,6 +413,8 @@ export function resolveLightingModel(options, flags, url) {
|
|
|
412
413
|
return fromUrl.model;
|
|
413
414
|
return prd02LightingOn(flags, url) ? "physical" : "legacy-3.0";
|
|
414
415
|
}
|
|
416
|
+
/** GU47 E-B: the (flattened) authored node each `collectPrd02Lights` descriptor came from (`prd02DescriptorNode`). */
|
|
417
|
+
const prd02DescriptorNodes = new WeakMap();
|
|
415
418
|
/**
|
|
416
419
|
* Collects authored lights under the flag: physical units via
|
|
417
420
|
* `physicalLightDescriptor`, ambient summed additively (F-02-01), hemisphere
|
|
@@ -461,11 +464,16 @@ export function collectPrd02Lights(snapshot) {
|
|
|
461
464
|
return;
|
|
462
465
|
}
|
|
463
466
|
const descriptor = physicalLightDescriptor(node, node.name ?? `${node.light}-${index}`);
|
|
464
|
-
if (descriptor)
|
|
467
|
+
if (descriptor) {
|
|
468
|
+
prd02DescriptorNodes.set(descriptor, node);
|
|
465
469
|
descriptors.push(descriptor);
|
|
470
|
+
}
|
|
466
471
|
});
|
|
467
472
|
return { descriptors, hemisphere, ambientIntensity };
|
|
468
473
|
}
|
|
474
|
+
export function prd02DescriptorNode(descriptor) {
|
|
475
|
+
return prd02DescriptorNodes.get(descriptor);
|
|
476
|
+
}
|
|
469
477
|
/**
|
|
470
478
|
* Descriptor → `AuraLightData` for the std140 AuraLights packer
|
|
471
479
|
* (`packAuraLightsStd140`, u_lightData in the a3d_prd02_lighting_punctual
|
|
@@ -498,6 +506,355 @@ export function descriptorToAuraLightData(descriptor, shadowIndex) {
|
|
|
498
506
|
name: descriptor.name
|
|
499
507
|
};
|
|
500
508
|
}
|
|
509
|
+
// ---------- GU47 E-B: per-app frame light registry (lighting diagnostics) ----------
|
|
510
|
+
/**
|
|
511
|
+
* The collected lights each app submitted on its last frame, keyed by the app's runtime node registry
|
|
512
|
+
* (`app.nodes`, the object the mounted scene's per-frame update receives as `ctx.runtimeNodes`). The PRD-02
|
|
513
|
+
* light handler's per-frame update records them; `app.lighting.diagnostics()` counts them.
|
|
514
|
+
*/
|
|
515
|
+
const frameLightsByOwner = new WeakMap();
|
|
516
|
+
export function recordRuntimeFrameLights(owner, lights) {
|
|
517
|
+
frameLightsByOwner.set(owner, lights);
|
|
518
|
+
}
|
|
519
|
+
const PUNCTUAL_LIGHT_KINDS = new Set(["directional", "point", "spot", "rect-area"]);
|
|
520
|
+
/**
|
|
521
|
+
* `punctualLights`: visible authored punctual lights (directional, point, spot, rect/softbox) of the last frame.
|
|
522
|
+
* `localShadowLights`: the visible spot/point lights among them that carry a shadow caster slot.
|
|
523
|
+
* A light hidden with `setVisible(false)` is in neither count.
|
|
524
|
+
*/
|
|
525
|
+
export function runtimeLightStats(owner) {
|
|
526
|
+
const lights = owner ? frameLightsByOwner.get(owner) : undefined;
|
|
527
|
+
if (!lights)
|
|
528
|
+
return { punctualLights: 0, localShadowLights: 0 };
|
|
529
|
+
let punctualLights = 0;
|
|
530
|
+
let localShadowLights = 0;
|
|
531
|
+
for (const light of lights) {
|
|
532
|
+
if (light.source?.visible === false || !PUNCTUAL_LIGHT_KINDS.has(light.kind))
|
|
533
|
+
continue;
|
|
534
|
+
punctualLights += 1;
|
|
535
|
+
if (light.castsShadow && (light.kind === "spot" || light.kind === "point"))
|
|
536
|
+
localShadowLights += 1;
|
|
537
|
+
}
|
|
538
|
+
return { punctualLights, localShadowLights };
|
|
539
|
+
}
|
|
540
|
+
const runtimeLightBindings = new WeakMap();
|
|
541
|
+
export function bindRuntimeLight(light, binding) {
|
|
542
|
+
runtimeLightBindings.set(light, binding);
|
|
543
|
+
return light;
|
|
544
|
+
}
|
|
545
|
+
export function runtimeLightBinding(light) {
|
|
546
|
+
return runtimeLightBindings.get(light);
|
|
547
|
+
}
|
|
548
|
+
/** Bind a mount-time collected light to the authored node it came from (base values = the light as created). */
|
|
549
|
+
export function bindAuthoredLight(light, node, part, aim) {
|
|
550
|
+
return bindRuntimeLight(light, {
|
|
551
|
+
runtimeId: node.runtime?.id,
|
|
552
|
+
authoredLight: node.light,
|
|
553
|
+
part,
|
|
554
|
+
base: {
|
|
555
|
+
color: light.color,
|
|
556
|
+
intensity: light.intensity,
|
|
557
|
+
range: light.range,
|
|
558
|
+
position: light.position,
|
|
559
|
+
direction: light.direction,
|
|
560
|
+
width: node.width ?? light.width ?? 1,
|
|
561
|
+
height: node.height ?? light.height ?? 1
|
|
562
|
+
},
|
|
563
|
+
aim
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
/** True until an evaluation of the channel has reached its target. */
|
|
567
|
+
function channelRunning(channel) {
|
|
568
|
+
return channel !== undefined && channel.done !== true;
|
|
569
|
+
}
|
|
570
|
+
function lightChannelsRunning(control) {
|
|
571
|
+
return channelRunning(control.color) || channelRunning(control.intensity) || channelRunning(control.range)
|
|
572
|
+
|| channelRunning(control.direction) || channelRunning(control.position);
|
|
573
|
+
}
|
|
574
|
+
const runtimeLightControls = new WeakMap();
|
|
575
|
+
function lightControlFor(handle) {
|
|
576
|
+
let control = runtimeLightControls.get(handle);
|
|
577
|
+
if (!control) {
|
|
578
|
+
control = { pending: [], shown: {}, written: new WeakMap() };
|
|
579
|
+
runtimeLightControls.set(handle, control);
|
|
580
|
+
}
|
|
581
|
+
return control;
|
|
582
|
+
}
|
|
583
|
+
function assertFiniteVec3(value, field) {
|
|
584
|
+
if (!Array.isArray(value) || value.length !== 3 || !value.every((v) => typeof v === "number" && Number.isFinite(v))) {
|
|
585
|
+
throw new RangeError(`setLight ${field} expects three finite numbers, got ${JSON.stringify(value)}.`);
|
|
586
|
+
}
|
|
587
|
+
return [value[0], value[1], value[2]];
|
|
588
|
+
}
|
|
589
|
+
function assertNonNegative(value, field) {
|
|
590
|
+
if (typeof value !== "number" || !Number.isFinite(value) || value < 0) {
|
|
591
|
+
throw new RangeError(`setLight ${field} expects a finite number >= 0, got ${String(value)}.`);
|
|
592
|
+
}
|
|
593
|
+
return value;
|
|
594
|
+
}
|
|
595
|
+
/**
|
|
596
|
+
* Queue a `handle.setLight(patch, opts)` call. Input is validated here (errors surface at the call site); the patch
|
|
597
|
+
* starts on the next frame's update, blending from the value shown then.
|
|
598
|
+
*/
|
|
599
|
+
export function queueRuntimeLightPatch(handle, patch, opts) {
|
|
600
|
+
if (patch === null || typeof patch !== "object")
|
|
601
|
+
throw new TypeError("setLight expects a patch object.");
|
|
602
|
+
const seconds = opts?.transitionSeconds === undefined ? 0 : assertNonNegative(opts.transitionSeconds, "transitionSeconds");
|
|
603
|
+
const checked = {};
|
|
604
|
+
if (patch.color !== undefined) {
|
|
605
|
+
parseAuraColor(patch.color); // throws AuraColorParseError on an unparseable colour
|
|
606
|
+
checked.color = patch.color;
|
|
607
|
+
}
|
|
608
|
+
if (patch.intensity !== undefined)
|
|
609
|
+
checked.intensity = assertNonNegative(patch.intensity, "intensity");
|
|
610
|
+
if (patch.power !== undefined)
|
|
611
|
+
checked.power = assertNonNegative(patch.power, "power");
|
|
612
|
+
if (patch.distance !== undefined)
|
|
613
|
+
checked.distance = assertNonNegative(patch.distance, "distance");
|
|
614
|
+
if (patch.direction !== undefined) {
|
|
615
|
+
const direction = assertFiniteVec3(patch.direction, "direction");
|
|
616
|
+
if (Math.hypot(direction[0], direction[1], direction[2]) < 1e-9)
|
|
617
|
+
throw new RangeError("setLight direction must be a non-zero vector.");
|
|
618
|
+
checked.direction = normalize3(direction);
|
|
619
|
+
}
|
|
620
|
+
if (patch.position !== undefined)
|
|
621
|
+
checked.position = assertFiniteVec3(patch.position, "position");
|
|
622
|
+
lightControlFor(handle).pending.push({ patch: checked, seconds });
|
|
623
|
+
}
|
|
624
|
+
/** Physical intensity for a `power` patch (three.js r185 conventions; a directional light has no power unit). */
|
|
625
|
+
export function lightPowerToIntensity(authoredLight, power, width = 1, height = 1) {
|
|
626
|
+
if (authoredLight === "point")
|
|
627
|
+
return power / FOUR_PI;
|
|
628
|
+
if (authoredLight === "spot")
|
|
629
|
+
return power / Math.PI;
|
|
630
|
+
if (authoredLight === "rect" || authoredLight === "softbox")
|
|
631
|
+
return power / (Math.PI * Math.max(1e-6, width * height));
|
|
632
|
+
return power;
|
|
633
|
+
}
|
|
634
|
+
const lerpNumber = (a, b, t) => a + (b - a) * t;
|
|
635
|
+
const lerpVec3 = (a, b, t) => [lerpNumber(a[0], b[0], t), lerpNumber(a[1], b[1], t), lerpNumber(a[2], b[2], t)];
|
|
636
|
+
/** Normalised lerp (directions); falls back to the target when the two are opposite. */
|
|
637
|
+
function nlerpDirection(a, b, t) {
|
|
638
|
+
const mixed = lerpVec3(a, b, t);
|
|
639
|
+
return Math.hypot(mixed[0], mixed[1], mixed[2]) < 1e-6 ? b : normalize3(mixed);
|
|
640
|
+
}
|
|
641
|
+
/** Linear blend of one channel at `now`; a channel starts (from = the shown value) on its first evaluation. */
|
|
642
|
+
export function evaluateLightChannel(channel, now, shown, mix) {
|
|
643
|
+
if (channel.t0 === undefined) {
|
|
644
|
+
channel.t0 = now;
|
|
645
|
+
channel.from = shown;
|
|
646
|
+
}
|
|
647
|
+
const t = channel.seconds <= 0 ? 1 : Math.min(1, Math.max(0, (now - channel.t0) / channel.seconds));
|
|
648
|
+
if (t >= 1) {
|
|
649
|
+
channel.done = true;
|
|
650
|
+
return channel.to;
|
|
651
|
+
}
|
|
652
|
+
return mix(channel.from, channel.to, t);
|
|
653
|
+
}
|
|
654
|
+
function startChannel(to, seconds) {
|
|
655
|
+
return { from: undefined, to, seconds, t0: undefined };
|
|
656
|
+
}
|
|
657
|
+
/** Turn queued patches into channels (power converted with the light's kind). */
|
|
658
|
+
function consumePendingPatches(control, binding, authoredLight) {
|
|
659
|
+
if (control.pending.length === 0)
|
|
660
|
+
return;
|
|
661
|
+
for (const { patch, seconds } of control.pending) {
|
|
662
|
+
if (patch.color !== undefined)
|
|
663
|
+
control.color = startChannel(colorToLinearRgb(patch.color), seconds);
|
|
664
|
+
const intensity = patch.intensity ?? (patch.power !== undefined
|
|
665
|
+
? lightPowerToIntensity(authoredLight, patch.power, binding?.base.width, binding?.base.height)
|
|
666
|
+
: undefined);
|
|
667
|
+
if (intensity !== undefined)
|
|
668
|
+
control.intensity = startChannel(intensity, seconds);
|
|
669
|
+
if (patch.distance !== undefined)
|
|
670
|
+
control.range = startChannel(patch.distance, seconds);
|
|
671
|
+
if (patch.direction !== undefined)
|
|
672
|
+
control.direction = startChannel(patch.direction, seconds);
|
|
673
|
+
if (patch.position !== undefined) {
|
|
674
|
+
control.position = startChannel(patch.position, seconds);
|
|
675
|
+
control.lastWrittenPosition = undefined;
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
control.pending = [];
|
|
679
|
+
}
|
|
680
|
+
function sameVec3(a, b, epsilon = 1e-9) {
|
|
681
|
+
if (!a || !b)
|
|
682
|
+
return a === b;
|
|
683
|
+
return Math.abs(a[0] - b[0]) <= epsilon && Math.abs(a[1] - b[1]) <= epsilon && Math.abs(a[2] - b[2]) <= epsilon;
|
|
684
|
+
}
|
|
685
|
+
/**
|
|
686
|
+
* Write the frame values into a collected light and its scene `Light` (the shadow passes read `position`,
|
|
687
|
+
* `direction`, `range` and `source.visible`; the legacy shadow path reads the source transform). A hidden light
|
|
688
|
+
* shades with intensity 0 and `source.visible = false`, so no shadow pass selects it.
|
|
689
|
+
*/
|
|
690
|
+
export function writeRuntimeLight(light, values) {
|
|
691
|
+
const target = light;
|
|
692
|
+
target.color = values.color;
|
|
693
|
+
target.intensity = values.visible ? values.intensity : 0;
|
|
694
|
+
target.position = values.position;
|
|
695
|
+
target.direction = values.direction;
|
|
696
|
+
target.range = values.range;
|
|
697
|
+
if (light.kind === "rect-area") {
|
|
698
|
+
const basis = rectBasisFromDirection(values.direction);
|
|
699
|
+
target.right = basis.right;
|
|
700
|
+
target.up = basis.up;
|
|
701
|
+
}
|
|
702
|
+
const source = light.source;
|
|
703
|
+
if (!source)
|
|
704
|
+
return;
|
|
705
|
+
source.visible = values.visible;
|
|
706
|
+
source.color = [values.color[0], values.color[1], values.color[2]];
|
|
707
|
+
source.intensity = target.intensity;
|
|
708
|
+
source.transform.setPosition(values.position[0], values.position[1], values.position[2]);
|
|
709
|
+
if (source instanceof PointLight || source instanceof SpotLight)
|
|
710
|
+
source.range = Math.max(0.001, values.range);
|
|
711
|
+
if (!(source instanceof PointLight)) {
|
|
712
|
+
const rotation = quaternionFromForwardDirection(values.direction);
|
|
713
|
+
source.transform.setRotation(rotation[0], rotation[1], rotation[2], rotation[3]);
|
|
714
|
+
}
|
|
715
|
+
source.updateWorldTransform(true);
|
|
716
|
+
}
|
|
717
|
+
function frameSignature(values) {
|
|
718
|
+
return `${values.visible ? 1 : 0}|${values.color.join(",")}|${values.intensity}|${values.range}|${values.position.join(",")}|${values.direction.join(",")}`;
|
|
719
|
+
}
|
|
720
|
+
/** Collected lights bound to each runtime id, per mount-time light list. */
|
|
721
|
+
const lightsByRuntimeId = new WeakMap();
|
|
722
|
+
function boundLightsFor(lights, runtimeId) {
|
|
723
|
+
let index = lightsByRuntimeId.get(lights);
|
|
724
|
+
if (!index) {
|
|
725
|
+
index = new Map();
|
|
726
|
+
for (const light of lights) {
|
|
727
|
+
const id = runtimeLightBindings.get(light)?.runtimeId;
|
|
728
|
+
if (id === undefined)
|
|
729
|
+
continue;
|
|
730
|
+
const list = index.get(id);
|
|
731
|
+
if (list)
|
|
732
|
+
list.push(light);
|
|
733
|
+
else
|
|
734
|
+
index.set(id, [light]);
|
|
735
|
+
}
|
|
736
|
+
lightsByRuntimeId.set(lights, index);
|
|
737
|
+
}
|
|
738
|
+
return index.get(runtimeId) ?? [];
|
|
739
|
+
}
|
|
740
|
+
function rgbToHex(rgb) {
|
|
741
|
+
const channel = (v) => Math.round(Math.min(1, Math.max(0, linearToSrgb(v))) * 255).toString(16).padStart(2, "0");
|
|
742
|
+
return `#${channel(rgb[0])}${channel(rgb[1])}${channel(rgb[2])}`;
|
|
743
|
+
}
|
|
744
|
+
function linearToSrgb(v) {
|
|
745
|
+
return v <= 0.0031308 ? v * 12.92 : 1.055 * Math.pow(v, 1 / 2.4) - 0.055;
|
|
746
|
+
}
|
|
747
|
+
/**
|
|
748
|
+
* GU47 E-B per-frame light update (PRD-02 light handler `update`): drives the collected light(s) of one authored light
|
|
749
|
+
* node from its runtime handle. Position follows `handle.position` every frame (plus the node's parent offset),
|
|
750
|
+
* `setVisible(false)` zeroes the light and drops it from every shadow pass, and `setLight` patches blend linearly over
|
|
751
|
+
* their `transitionSeconds`. Lights without a handle are untouched (their mount values stand). Ambient / hemisphere /
|
|
752
|
+
* probe lights have no collected light: their `color` / `intensity` are written onto the flattened node, which the
|
|
753
|
+
* environment resolution reads every frame.
|
|
754
|
+
*/
|
|
755
|
+
export function updateRuntimeLight(node, handle, lights, timeSeconds) {
|
|
756
|
+
if (!handle)
|
|
757
|
+
return;
|
|
758
|
+
const bound = boundLightsFor(lights, handle.id);
|
|
759
|
+
if (bound.length === 0) {
|
|
760
|
+
if (node.light === "ambient" || node.light === "hemisphere" || node.light === "probe")
|
|
761
|
+
updateEnvironmentLightNode(node, handle, runtimeLightControls.get(handle), timeSeconds);
|
|
762
|
+
return;
|
|
763
|
+
}
|
|
764
|
+
const state = lightControlFor(handle);
|
|
765
|
+
// Steady state: nothing queued, no blend running and the handle unchanged since the last frame.
|
|
766
|
+
if (state.pending.length === 0 && typeof handle.version === "number" && handle.version === state.lastVersion && !lightChannelsRunning(state))
|
|
767
|
+
return;
|
|
768
|
+
const primary = bound.find((light) => runtimeLightBindings.get(light)?.part === 0) ?? bound[0];
|
|
769
|
+
const binding = runtimeLightBindings.get(primary);
|
|
770
|
+
const base = binding.base;
|
|
771
|
+
consumePendingPatches(state, binding, binding.authoredLight);
|
|
772
|
+
// Parent-group offset, captured at the first update (mount, before any handle write); 0 for top-level nodes.
|
|
773
|
+
state.offset ??= [base.position[0] - handle.position[0], base.position[1] - handle.position[1], base.position[2] - handle.position[2]];
|
|
774
|
+
// Position: a running position blend writes through setPosition; any other handle position cancels it.
|
|
775
|
+
if (state.position) {
|
|
776
|
+
if (state.lastWrittenPosition && !sameVec3(state.lastWrittenPosition, handle.position)) {
|
|
777
|
+
state.position = undefined;
|
|
778
|
+
}
|
|
779
|
+
else {
|
|
780
|
+
const next = evaluateLightChannel(state.position, timeSeconds, [...handle.position], (a, b, t) => lerpVec3(a, b, t));
|
|
781
|
+
if (!sameVec3(next, handle.position))
|
|
782
|
+
handle.setPosition(next[0], next[1], next[2]);
|
|
783
|
+
state.lastWrittenPosition = [...handle.position];
|
|
784
|
+
if (!channelRunning(state.position))
|
|
785
|
+
state.position = undefined;
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
const offset = state.offset;
|
|
789
|
+
const position = [handle.position[0] + offset[0], handle.position[1] + offset[1], handle.position[2] + offset[2]];
|
|
790
|
+
const moved = !sameVec3(position, base.position);
|
|
791
|
+
const shown = state.shown;
|
|
792
|
+
const color = state.color ? evaluateLightChannel(state.color, timeSeconds, shown.color ?? base.color, (a, b, t) => lerpVec3(a, b, t)) : base.color;
|
|
793
|
+
const intensity = state.intensity ? evaluateLightChannel(state.intensity, timeSeconds, shown.intensity ?? base.intensity, lerpNumber) : base.intensity;
|
|
794
|
+
const range = state.range ? evaluateLightChannel(state.range, timeSeconds, shown.range ?? base.range, lerpNumber) : base.range;
|
|
795
|
+
// Direction: an explicit setLight direction stays fixed while the light moves (a carried torch); without one, a moved
|
|
796
|
+
// directional / spot re-aims at its authored target by the mount path's own rule.
|
|
797
|
+
const aimed = moved ? binding.aim(position) : base.direction;
|
|
798
|
+
const direction = state.direction
|
|
799
|
+
? evaluateLightChannel(state.direction, timeSeconds, shown.direction ?? aimed, nlerpDirection)
|
|
800
|
+
: aimed;
|
|
801
|
+
state.shown = { color, intensity, range, direction, position };
|
|
802
|
+
state.lastVersion = handle.version;
|
|
803
|
+
const visible = handle.visible !== false;
|
|
804
|
+
for (const light of bound) {
|
|
805
|
+
const lightBinding = runtimeLightBindings.get(light);
|
|
806
|
+
const values = light === primary
|
|
807
|
+
? { visible, color, intensity, range, position, direction }
|
|
808
|
+
: secondaryLightValues(lightBinding, base, visible, color, intensity, position);
|
|
809
|
+
const signature = frameSignature(values);
|
|
810
|
+
if (state.written.get(light) === signature)
|
|
811
|
+
continue;
|
|
812
|
+
// Untouched lights keep their exact mount objects (no write while the values equal the base).
|
|
813
|
+
if (!state.written.has(light) && sameAsBase(values, lightBinding.base)) {
|
|
814
|
+
state.written.set(light, signature);
|
|
815
|
+
continue;
|
|
816
|
+
}
|
|
817
|
+
writeRuntimeLight(light, values);
|
|
818
|
+
state.written.set(light, signature);
|
|
819
|
+
}
|
|
820
|
+
}
|
|
821
|
+
function sameAsBase(values, base) {
|
|
822
|
+
return values.visible && values.intensity === base.intensity && values.range === base.range
|
|
823
|
+
&& sameVec3(values.color, base.color, 0) && sameVec3(values.position, base.position, 0) && sameVec3(values.direction, base.direction, 0);
|
|
824
|
+
}
|
|
825
|
+
/** A legacy `studio` node's fill / rim follow the key: same visibility, intensity and colour ratios, same move. */
|
|
826
|
+
function secondaryLightValues(binding, primaryBase, visible, color, intensity, position) {
|
|
827
|
+
const ratio = (value, baseValue) => (baseValue > 0 ? value / baseValue : 1);
|
|
828
|
+
const delta = [position[0] - primaryBase.position[0], position[1] - primaryBase.position[1], position[2] - primaryBase.position[2]];
|
|
829
|
+
const moved = [binding.base.position[0] + delta[0], binding.base.position[1] + delta[1], binding.base.position[2] + delta[2]];
|
|
830
|
+
return {
|
|
831
|
+
visible,
|
|
832
|
+
color: [
|
|
833
|
+
binding.base.color[0] * ratio(color[0], primaryBase.color[0]),
|
|
834
|
+
binding.base.color[1] * ratio(color[1], primaryBase.color[1]),
|
|
835
|
+
binding.base.color[2] * ratio(color[2], primaryBase.color[2])
|
|
836
|
+
],
|
|
837
|
+
intensity: binding.base.intensity * ratio(intensity, primaryBase.intensity),
|
|
838
|
+
range: binding.base.range,
|
|
839
|
+
position: moved,
|
|
840
|
+
direction: sameVec3(delta, [0, 0, 0]) ? binding.base.direction : binding.aim(moved)
|
|
841
|
+
};
|
|
842
|
+
}
|
|
843
|
+
/** Ambient / hemisphere / probe: `color` / `intensity` (and visibility) written onto the flattened node. */
|
|
844
|
+
function updateEnvironmentLightNode(node, handle, control, timeSeconds) {
|
|
845
|
+
if (!control && handle.visible !== false)
|
|
846
|
+
return;
|
|
847
|
+
const state = control ?? lightControlFor(handle);
|
|
848
|
+
consumePendingPatches(state, undefined, node.light);
|
|
849
|
+
const mutable = node;
|
|
850
|
+
state.nodeBase ??= { intensity: node.intensity ?? 0, color: node.color ?? "#ffffff" };
|
|
851
|
+
const baseColor = colorToLinearRgb(state.nodeBase.color);
|
|
852
|
+
const color = state.color ? evaluateLightChannel(state.color, timeSeconds, state.shown.color ?? baseColor, (a, b, t) => lerpVec3(a, b, t)) : baseColor;
|
|
853
|
+
const intensity = state.intensity ? evaluateLightChannel(state.intensity, timeSeconds, state.shown.intensity ?? state.nodeBase.intensity, lerpNumber) : state.nodeBase.intensity;
|
|
854
|
+
state.shown = { ...state.shown, color, intensity };
|
|
855
|
+
mutable.intensity = handle.visible === false ? 0 : intensity;
|
|
856
|
+
mutable.color = state.color ? rgbToHex(color) : state.nodeBase.color;
|
|
857
|
+
}
|
|
501
858
|
/** Orthonormal (right, up) spanning the plane ⊥ direction (default up +Y). */
|
|
502
859
|
function rectBasisFromDirection(direction) {
|
|
503
860
|
const [dx, dy, dz] = normalize3(direction);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lights.js","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/lights.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lights.js","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/lights.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AuraVec3, AuraSceneNode, AuraModelNode, AuraPrimitiveNode, AuraRendererRuntimeObservation, ProductionRuntimePrimitiveEntry } from "../nodes/types.js";
|
|
2
2
|
import type { CollectedLight, RenderDeviceDiagnostics, RendererShadowOptions } from "../../../rendering/index.js";
|
|
3
3
|
import type { AuraLightNode, AuraSceneSnapshot } from "../nodes/types.js";
|
|
4
|
+
import { type AuraQualityTier } from "../../../rendering/contracts/index.js";
|
|
4
5
|
interface AuraProductionBridgeEligibility {
|
|
5
6
|
readonly eligible: boolean;
|
|
6
7
|
readonly typedModelCount: number;
|
|
@@ -74,10 +75,43 @@ export interface ProductionRuntimeCollectedLightsOptions {
|
|
|
74
75
|
* builder below keeps turning it into a rect spot proxy, which the flag-off goldens pin.
|
|
75
76
|
*/
|
|
76
77
|
readonly hemisphereAsEnvironment?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* GU47 E-B: quality tier whose `shadow.localShadowLights` caps the local shadow casters on the physical path
|
|
80
|
+
* (low 0, medium 1, high 2, ultra 4). Default: the PRD-02 shadow config's own resolution ("medium" on a coarse
|
|
81
|
+
* pointer, else "high").
|
|
82
|
+
*/
|
|
83
|
+
readonly shadowTier?: AuraQualityTier;
|
|
77
84
|
}
|
|
78
85
|
export declare function createProductionRuntimeCollectedLights(snapshot: AuraSceneSnapshot, flags?: {
|
|
79
86
|
on(name: string): boolean;
|
|
80
87
|
}, options?: ProductionRuntimeCollectedLightsOptions): readonly CollectedLight[];
|
|
88
|
+
/**
|
|
89
|
+
* GU47 E-B handoff (eint EB-4): collected lights for light nodes added at runtime (`app.nodes.add(lights.*)` on the
|
|
90
|
+
* compiled path), built and bound like the mount's (`createProductionRuntimeCollectedLights`), so they render and their
|
|
91
|
+
* handle (`setLight`, `setPosition`, `setVisible`) drives them. Never the fallback rig and never a shadow caster (the
|
|
92
|
+
* mount selected the frame's casters). Ambient / hemisphere / probe nodes yield none: the environment path reads them
|
|
93
|
+
* from the live snapshot. One entry per node that produced lights, keyed by the node object passed in.
|
|
94
|
+
*/
|
|
95
|
+
export declare function createRuntimeAddedCollectedLights(nodes: readonly AuraSceneNode[], flags?: {
|
|
96
|
+
on(name: string): boolean;
|
|
97
|
+
}, options?: ProductionRuntimeCollectedLightsOptions): {
|
|
98
|
+
readonly node: AuraLightNode;
|
|
99
|
+
readonly lights: readonly CollectedLight[];
|
|
100
|
+
}[];
|
|
101
|
+
/**
|
|
102
|
+
* GU47 E-B multi-caster selection (pure): the single N1 caster (`resolveProductionShadowCasterIndex`, so one-caster
|
|
103
|
+
* scenes are unchanged) plus explicitly shadowed local (spot / point) lights until `localShadowLights` local casters
|
|
104
|
+
* are selected, in shadow-priority, then intensity, then authored order. The single caster keeps its slot even on a
|
|
105
|
+
* tier with no local slots (a scene whose only shadow request is one spot keeps that spot's shadow on Low). No second
|
|
106
|
+
* directional and no unrequested light is added. Returns ascending light indices.
|
|
107
|
+
*/
|
|
108
|
+
export declare function resolveProductionShadowCasterIndices(descriptors: readonly {
|
|
109
|
+
readonly kind: string;
|
|
110
|
+
readonly shadowPriority: number;
|
|
111
|
+
readonly shadowRequested: boolean;
|
|
112
|
+
readonly shadowDisabled?: boolean;
|
|
113
|
+
readonly intensity: number;
|
|
114
|
+
}[], localShadowLights: number): readonly number[];
|
|
81
115
|
/**
|
|
82
116
|
* N1 caster selection (pure, unit-tested): an explicit `shadow: true`
|
|
83
117
|
* request wins the single caster slot over unrequested lights; ties and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observations.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/observations.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC;AACpK,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AASxG,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAoC,MAAM,mBAAmB,CAAC;AAK5G,UAAU,+BAA+B;IACvC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,+BAA+B,CAmBnH;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI,aAAa,CAEhF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI,aAAa,GAAG,iBAAiB,CAWpG;AASD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CAE7E;AAED,2HAA2H;AAC3H,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAE9E;AASD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAKpF;AAED;;;;;;;GAOG;AAMH,wBAAgB,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAInF;AAED;;;;;;;;;GASG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,EACxC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAWxD;AAED;;;;;;GAMG;AACH,wBAAgB,wCAAwC,CACtD,aAAa,EAAE,qBAAqB,EACpC,WAAW,EAAE,uBAAuB,EACpC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,GACjD,WAAW,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,CAavD;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,SAAS,+BAA+B,EAAE,EACnD,SAAS,EAAE,QAAQ,EACnB,WAAW,EAAE,MAAM,GAClB,WAAW,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC,CAkCzD;AAED,wBAAgB,6CAA6C,CAC3D,WAAW,EAAE,uBAAuB,GACnC,8BAA8B,CAAC,aAAa,CAAC,CAe/C;AAED,MAAM,WAAW,uCAAuC;IACtD;;;;OAIG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"observations.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/observations.ts"],"names":[],"mappings":"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"}
|