@aura3d/rendering 3.0.1 → 4.0.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/BlendModes.d.ts +34 -0
- package/dist/BlendModes.d.ts.map +1 -0
- package/dist/BlendModes.js +42 -0
- package/dist/BlendModes.js.map +1 -0
- package/dist/DepthPass.d.ts +18 -0
- package/dist/DepthPass.d.ts.map +1 -1
- package/dist/DepthPass.js +103 -20
- package/dist/DepthPass.js.map +1 -1
- package/dist/EnvironmentBackgroundPass.d.ts +7 -0
- package/dist/EnvironmentBackgroundPass.d.ts.map +1 -1
- package/dist/EnvironmentBackgroundPass.js +39 -14
- package/dist/EnvironmentBackgroundPass.js.map +1 -1
- package/dist/EnvironmentMapResources.d.ts +1 -1
- package/dist/EnvironmentMapResources.d.ts.map +1 -1
- package/dist/EnvironmentMapResources.js +19 -8
- package/dist/EnvironmentMapResources.js.map +1 -1
- package/dist/EnvironmentPlatform.d.ts +6 -0
- package/dist/EnvironmentPlatform.d.ts.map +1 -1
- package/dist/EnvironmentPlatform.js +3 -1
- package/dist/EnvironmentPlatform.js.map +1 -1
- package/dist/EnvironmentPreset.d.ts +7 -0
- package/dist/EnvironmentPreset.d.ts.map +1 -1
- package/dist/EnvironmentPreset.js +11 -11
- package/dist/EnvironmentPreset.js.map +1 -1
- package/dist/EnvironmentPresetPack.d.ts +16 -0
- package/dist/EnvironmentPresetPack.d.ts.map +1 -1
- package/dist/EnvironmentPresetPack.js +28 -0
- package/dist/EnvironmentPresetPack.js.map +1 -1
- package/dist/ExternalParityRenderPreset.d.ts +15 -1
- package/dist/ExternalParityRenderPreset.d.ts.map +1 -1
- package/dist/ExternalParityRenderPreset.js +52 -7
- package/dist/ExternalParityRenderPreset.js.map +1 -1
- package/dist/ForwardPass.d.ts +240 -50
- package/dist/ForwardPass.d.ts.map +1 -1
- package/dist/ForwardPass.js +845 -866
- package/dist/ForwardPass.js.map +1 -1
- package/dist/Geometry.d.ts +44 -1
- package/dist/Geometry.d.ts.map +1 -1
- package/dist/Geometry.js +174 -24
- package/dist/Geometry.js.map +1 -1
- package/dist/InstancedPBRMaterial.d.ts +5 -0
- package/dist/InstancedPBRMaterial.d.ts.map +1 -1
- package/dist/InstancedPBRMaterial.js +7 -0
- package/dist/InstancedPBRMaterial.js.map +1 -1
- package/dist/LightCollector.d.ts +8 -0
- package/dist/LightCollector.d.ts.map +1 -1
- package/dist/LightCollector.js +1 -1
- package/dist/LightCollector.js.map +1 -1
- package/dist/LightUniforms.d.ts +78 -0
- package/dist/LightUniforms.d.ts.map +1 -1
- package/dist/LightUniforms.js +100 -0
- package/dist/LightUniforms.js.map +1 -1
- package/dist/Material.d.ts +15 -0
- package/dist/Material.d.ts.map +1 -1
- package/dist/Material.js +19 -2
- package/dist/Material.js.map +1 -1
- package/dist/MaterialBinding.d.ts +10 -0
- package/dist/MaterialBinding.d.ts.map +1 -1
- package/dist/MaterialBinding.js +91 -1
- package/dist/MaterialBinding.js.map +1 -1
- package/dist/MaterialPresets.d.ts +60 -0
- package/dist/MaterialPresets.d.ts.map +1 -1
- package/dist/MaterialPresets.js +212 -0
- package/dist/MaterialPresets.js.map +1 -1
- package/dist/NormalMappedPBRMaterial.d.ts +5 -0
- package/dist/NormalMappedPBRMaterial.d.ts.map +1 -1
- package/dist/NormalMappedPBRMaterial.js +7 -0
- package/dist/NormalMappedPBRMaterial.js.map +1 -1
- package/dist/OceanSurface.d.ts +8 -0
- package/dist/OceanSurface.d.ts.map +1 -1
- package/dist/OceanSurface.js +10 -79
- package/dist/OceanSurface.js.map +1 -1
- package/dist/PBRLightingDefaults.d.ts +8 -0
- package/dist/PBRLightingDefaults.d.ts.map +1 -1
- package/dist/PBRLightingDefaults.js +8 -0
- package/dist/PBRLightingDefaults.js.map +1 -1
- package/dist/PBRMaterial.d.ts +5 -0
- package/dist/PBRMaterial.d.ts.map +1 -1
- package/dist/PBRMaterial.js +7 -0
- package/dist/PBRMaterial.js.map +1 -1
- package/dist/PostProcessPass.d.ts +6 -490
- package/dist/PostProcessPass.d.ts.map +1 -1
- package/dist/PostProcessPass.js +6 -2016
- package/dist/PostProcessPass.js.map +1 -1
- package/dist/ProceduralMaterialTextures.d.ts +28 -0
- package/dist/ProceduralMaterialTextures.d.ts.map +1 -0
- package/dist/ProceduralMaterialTextures.js +217 -0
- package/dist/ProceduralMaterialTextures.js.map +1 -0
- package/dist/ReflectionProbe.d.ts.map +1 -1
- package/dist/ReflectionProbe.js +4 -1
- package/dist/ReflectionProbe.js.map +1 -1
- package/dist/RenderBackend.d.ts +2 -0
- package/dist/RenderBackend.d.ts.map +1 -1
- package/dist/RenderBackend.js +3 -0
- package/dist/RenderBackend.js.map +1 -1
- package/dist/RenderDevice.d.ts +92 -5
- package/dist/RenderDevice.d.ts.map +1 -1
- package/dist/RenderDevice.js +166 -9
- package/dist/RenderDevice.js.map +1 -1
- package/dist/RenderGraph.d.ts.map +1 -1
- package/dist/RenderGraph.js +17 -0
- package/dist/RenderGraph.js.map +1 -1
- package/dist/RenderPass.d.ts +7 -0
- package/dist/RenderPass.d.ts.map +1 -1
- package/dist/RenderPass.js.map +1 -1
- package/dist/RenderPipeline.d.ts +5 -0
- package/dist/RenderPipeline.d.ts.map +1 -1
- package/dist/RenderPipeline.js +6 -0
- package/dist/RenderPipeline.js.map +1 -1
- package/dist/Renderer.d.ts +261 -66
- package/dist/Renderer.d.ts.map +1 -1
- package/dist/Renderer.js +889 -1254
- package/dist/Renderer.js.map +1 -1
- package/dist/RendererPostprocessPlan.d.ts +4 -0
- package/dist/RendererPostprocessPlan.d.ts.map +1 -1
- package/dist/RendererPostprocessPlan.js +16 -2
- package/dist/RendererPostprocessPlan.js.map +1 -1
- package/dist/RendererTiming.d.ts +27 -0
- package/dist/RendererTiming.d.ts.map +1 -1
- package/dist/RendererTiming.js +179 -12
- package/dist/RendererTiming.js.map +1 -1
- package/dist/ResolutionGovernor.d.ts +56 -0
- package/dist/ResolutionGovernor.d.ts.map +1 -0
- package/dist/ResolutionGovernor.js +87 -0
- package/dist/ResolutionGovernor.js.map +1 -0
- package/dist/Sampler.d.ts +34 -1
- package/dist/Sampler.d.ts.map +1 -1
- package/dist/Sampler.js +55 -2
- package/dist/Sampler.js.map +1 -1
- package/dist/ShaderLibrary.d.ts.map +1 -1
- package/dist/ShaderLibrary.js +15 -10
- package/dist/ShaderLibrary.js.map +1 -1
- package/dist/ShaderLibraryCore.d.ts.map +1 -1
- package/dist/ShaderLibraryCore.js +3 -2
- package/dist/ShaderLibraryCore.js.map +1 -1
- package/dist/ShaderModule.d.ts +7 -1
- package/dist/ShaderModule.d.ts.map +1 -1
- package/dist/ShaderModule.js +20 -5
- package/dist/ShaderModule.js.map +1 -1
- package/dist/ShadowPass.d.ts.map +1 -1
- package/dist/ShadowPass.js +14 -7
- package/dist/ShadowPass.js.map +1 -1
- package/dist/SkinnedLitMaterial.d.ts +5 -0
- package/dist/SkinnedLitMaterial.d.ts.map +1 -1
- package/dist/SkinnedLitMaterial.js +13 -0
- package/dist/SkinnedLitMaterial.js.map +1 -1
- package/dist/SkinningBounds.d.ts +18 -0
- package/dist/SkinningBounds.d.ts.map +1 -1
- package/dist/SkinningBounds.js +78 -0
- package/dist/SkinningBounds.js.map +1 -1
- package/dist/SkinningPaletteTextureCache.d.ts +117 -0
- package/dist/SkinningPaletteTextureCache.d.ts.map +1 -0
- package/dist/SkinningPaletteTextureCache.js +205 -0
- package/dist/SkinningPaletteTextureCache.js.map +1 -0
- package/dist/SkinningUniforms.d.ts +56 -0
- package/dist/SkinningUniforms.d.ts.map +1 -0
- package/dist/SkinningUniforms.js +262 -0
- package/dist/SkinningUniforms.js.map +1 -0
- package/dist/TemporalHistory.d.ts +33 -0
- package/dist/TemporalHistory.d.ts.map +1 -1
- package/dist/TemporalHistory.js +84 -1
- package/dist/TemporalHistory.js.map +1 -1
- package/dist/TerrainHeightfield.d.ts +12 -0
- package/dist/TerrainHeightfield.d.ts.map +1 -1
- package/dist/TerrainHeightfield.js +29 -6
- package/dist/TerrainHeightfield.js.map +1 -1
- package/dist/TerrainTiles.d.ts +40 -10
- package/dist/TerrainTiles.d.ts.map +1 -1
- package/dist/TerrainTiles.js +18 -57
- package/dist/TerrainTiles.js.map +1 -1
- package/dist/Texture.d.ts +47 -2
- package/dist/Texture.d.ts.map +1 -1
- package/dist/Texture.js +119 -3
- package/dist/Texture.js.map +1 -1
- package/dist/TexturedPBRMaterial.d.ts +24 -0
- package/dist/TexturedPBRMaterial.d.ts.map +1 -1
- package/dist/TexturedPBRMaterial.js +72 -20
- package/dist/TexturedPBRMaterial.js.map +1 -1
- package/dist/TransmissionRenderTarget.d.ts +33 -0
- package/dist/TransmissionRenderTarget.d.ts.map +1 -0
- package/dist/TransmissionRenderTarget.js +61 -0
- package/dist/TransmissionRenderTarget.js.map +1 -0
- package/dist/VegetationScatter.js +1 -1
- package/dist/VegetationScatter.js.map +1 -1
- package/dist/VolumetricFog.d.ts +42 -0
- package/dist/VolumetricFog.d.ts.map +1 -1
- package/dist/VolumetricFog.js +52 -1
- package/dist/VolumetricFog.js.map +1 -1
- package/dist/WaterSurface.d.ts +5 -0
- package/dist/WaterSurface.d.ts.map +1 -1
- package/dist/WaterSurface.js +5 -0
- package/dist/WaterSurface.js.map +1 -1
- package/dist/WebGL2Device.d.ts +153 -207
- package/dist/WebGL2Device.d.ts.map +1 -1
- package/dist/WebGL2Device.js +822 -3706
- package/dist/WebGL2Device.js.map +1 -1
- package/dist/WebGL2StateCache.d.ts +15 -1
- package/dist/WebGL2StateCache.d.ts.map +1 -1
- package/dist/WebGL2StateCache.js +31 -2
- package/dist/WebGL2StateCache.js.map +1 -1
- package/dist/WebGPUDevice.d.ts +0 -4
- package/dist/WebGPUDevice.d.ts.map +1 -1
- package/dist/WebGPUDevice.js +31 -605
- package/dist/WebGPUDevice.js.map +1 -1
- package/dist/WebGPUSkinningLimits.d.ts +10 -1
- package/dist/WebGPUSkinningLimits.d.ts.map +1 -1
- package/dist/WebGPUSkinningLimits.js +15 -1
- package/dist/WebGPUSkinningLimits.js.map +1 -1
- package/dist/advanced-runtime/index.d.ts +6 -2
- package/dist/advanced-runtime/index.d.ts.map +1 -1
- package/dist/advanced-runtime/index.js +0 -1
- package/dist/advanced-runtime/index.js.map +1 -1
- package/dist/animation/AnimationRenderPreset.d.ts +1 -1
- package/dist/animation/AnimationRenderPreset.d.ts.map +1 -1
- package/dist/animation/AnimationRenderPreset.js +1 -1
- package/dist/animation/AnimationRenderPreset.js.map +1 -1
- package/dist/animation/applyAnimationRenderPreset.d.ts +1 -1
- package/dist/animation/applyAnimationRenderPreset.d.ts.map +1 -1
- package/dist/animation/index.d.ts +2 -1
- package/dist/animation/index.d.ts.map +1 -1
- package/dist/animation/index.js +1 -1
- package/dist/animation/index.js.map +1 -1
- package/dist/atmosphere/CloudLayer.d.ts +24 -0
- package/dist/atmosphere/CloudLayer.d.ts.map +1 -0
- package/dist/atmosphere/CloudLayer.js +30 -0
- package/dist/atmosphere/CloudLayer.js.map +1 -0
- package/dist/atmosphere/FogVolumes.d.ts +30 -0
- package/dist/atmosphere/FogVolumes.d.ts.map +1 -0
- package/dist/atmosphere/FogVolumes.js +96 -0
- package/dist/atmosphere/FogVolumes.js.map +1 -0
- package/dist/atmosphere/GradientSky.d.ts +40 -0
- package/dist/atmosphere/GradientSky.d.ts.map +1 -0
- package/dist/atmosphere/GradientSky.js +75 -0
- package/dist/atmosphere/GradientSky.js.map +1 -0
- package/dist/atmosphere/HeightFog.d.ts +154 -0
- package/dist/atmosphere/HeightFog.d.ts.map +1 -0
- package/dist/atmosphere/HeightFog.js +379 -0
- package/dist/atmosphere/HeightFog.js.map +1 -0
- package/dist/atmosphere/PreethamSky.d.ts +38 -0
- package/dist/atmosphere/PreethamSky.d.ts.map +1 -0
- package/dist/atmosphere/PreethamSky.js +150 -0
- package/dist/atmosphere/PreethamSky.js.map +1 -0
- package/dist/atmosphere/SkyBackgroundPass.d.ts +63 -0
- package/dist/atmosphere/SkyBackgroundPass.d.ts.map +1 -0
- package/dist/atmosphere/SkyBackgroundPass.js +233 -0
- package/dist/atmosphere/SkyBackgroundPass.js.map +1 -0
- package/dist/atmosphere/SkyCaptureAdapter.d.ts +45 -0
- package/dist/atmosphere/SkyCaptureAdapter.d.ts.map +1 -0
- package/dist/atmosphere/SkyCaptureAdapter.js +65 -0
- package/dist/atmosphere/SkyCaptureAdapter.js.map +1 -0
- package/dist/atmosphere/SkyEval.d.ts +56 -0
- package/dist/atmosphere/SkyEval.d.ts.map +1 -0
- package/dist/atmosphere/SkyEval.js +99 -0
- package/dist/atmosphere/SkyEval.js.map +1 -0
- package/dist/atmosphere/StarField.d.ts +26 -0
- package/dist/atmosphere/StarField.d.ts.map +1 -0
- package/dist/atmosphere/StarField.js +31 -0
- package/dist/atmosphere/StarField.js.map +1 -0
- package/dist/atmosphere/VolumetricFogPass.d.ts +69 -0
- package/dist/atmosphere/VolumetricFogPass.d.ts.map +1 -0
- package/dist/atmosphere/VolumetricFogPass.js +265 -0
- package/dist/atmosphere/VolumetricFogPass.js.map +1 -0
- package/dist/atmosphere/fogChunks.d.ts +8 -0
- package/dist/atmosphere/fogChunks.d.ts.map +1 -0
- package/dist/atmosphere/fogChunks.js +39 -0
- package/dist/atmosphere/fogChunks.js.map +1 -0
- package/dist/atmosphere/fogUniformStore.d.ts +20 -0
- package/dist/atmosphere/fogUniformStore.d.ts.map +1 -0
- package/dist/atmosphere/fogUniformStore.js +45 -0
- package/dist/atmosphere/fogUniformStore.js.map +1 -0
- package/dist/atmosphere/shaders/fog.glsl.d.ts +10 -0
- package/dist/atmosphere/shaders/fog.glsl.d.ts.map +1 -0
- package/dist/atmosphere/shaders/fog.glsl.js +161 -0
- package/dist/atmosphere/shaders/fog.glsl.js.map +1 -0
- package/dist/atmosphere/shaders/volumetric-apply.glsl.d.ts +3 -0
- package/dist/atmosphere/shaders/volumetric-apply.glsl.d.ts.map +1 -0
- package/dist/atmosphere/shaders/volumetric-apply.glsl.js +61 -0
- package/dist/atmosphere/shaders/volumetric-apply.glsl.js.map +1 -0
- package/dist/atmosphere/shaders/volumetric-inject.glsl.d.ts +4 -0
- package/dist/atmosphere/shaders/volumetric-inject.glsl.d.ts.map +1 -0
- package/dist/atmosphere/shaders/volumetric-inject.glsl.js +129 -0
- package/dist/atmosphere/shaders/volumetric-inject.glsl.js.map +1 -0
- package/dist/atmosphere/shaders/volumetric-integrate.glsl.d.ts +3 -0
- package/dist/atmosphere/shaders/volumetric-integrate.glsl.d.ts.map +1 -0
- package/dist/atmosphere/shaders/volumetric-integrate.glsl.js +55 -0
- package/dist/atmosphere/shaders/volumetric-integrate.glsl.js.map +1 -0
- package/dist/atmosphere/shaders/wetness.glsl.d.ts +34 -0
- package/dist/atmosphere/shaders/wetness.glsl.d.ts.map +1 -0
- package/dist/atmosphere/shaders/wetness.glsl.js +101 -0
- package/dist/atmosphere/shaders/wetness.glsl.js.map +1 -0
- package/dist/atmosphere/sky.glsl.d.ts +8 -0
- package/dist/atmosphere/sky.glsl.d.ts.map +1 -0
- package/dist/atmosphere/sky.glsl.js +249 -0
- package/dist/atmosphere/sky.glsl.js.map +1 -0
- package/dist/batching/BatchedGeometryPool.d.ts +72 -0
- package/dist/batching/BatchedGeometryPool.d.ts.map +1 -0
- package/dist/batching/BatchedGeometryPool.js +138 -0
- package/dist/batching/BatchedGeometryPool.js.map +1 -0
- package/dist/batching/ContentKeys.d.ts +29 -0
- package/dist/batching/ContentKeys.d.ts.map +1 -0
- package/dist/batching/ContentKeys.js +220 -0
- package/dist/batching/ContentKeys.js.map +1 -0
- package/dist/batching/DrawDataTexture.d.ts +51 -0
- package/dist/batching/DrawDataTexture.d.ts.map +1 -0
- package/dist/batching/DrawDataTexture.js +99 -0
- package/dist/batching/DrawDataTexture.js.map +1 -0
- package/dist/batching/MultiDrawBatch.d.ts +64 -0
- package/dist/batching/MultiDrawBatch.d.ts.map +1 -0
- package/dist/batching/MultiDrawBatch.js +103 -0
- package/dist/batching/MultiDrawBatch.js.map +1 -0
- package/dist/batching/StaticMergePlanner.d.ts +80 -0
- package/dist/batching/StaticMergePlanner.d.ts.map +1 -0
- package/dist/batching/StaticMergePlanner.js +323 -0
- package/dist/batching/StaticMergePlanner.js.map +1 -0
- package/dist/batching/index.d.ts +8 -0
- package/dist/batching/index.d.ts.map +1 -0
- package/dist/batching/index.js +8 -0
- package/dist/batching/index.js.map +1 -0
- package/dist/batching/shaders/drawId.glsl.d.ts +29 -0
- package/dist/batching/shaders/drawId.glsl.d.ts.map +1 -0
- package/dist/batching/shaders/drawId.glsl.js +93 -0
- package/dist/batching/shaders/drawId.glsl.js.map +1 -0
- package/dist/batching/shaders/instanceEmissive.glsl.d.ts +16 -0
- package/dist/batching/shaders/instanceEmissive.glsl.d.ts.map +1 -0
- package/dist/batching/shaders/instanceEmissive.glsl.js +63 -0
- package/dist/batching/shaders/instanceEmissive.glsl.js.map +1 -0
- package/dist/cinematic/BloomPass.d.ts +5 -9
- package/dist/cinematic/BloomPass.d.ts.map +1 -1
- package/dist/cinematic/BloomPass.js +5 -17
- package/dist/cinematic/BloomPass.js.map +1 -1
- package/dist/cinematic/DepthHazePass.d.ts +5 -11
- package/dist/cinematic/DepthHazePass.d.ts.map +1 -1
- package/dist/cinematic/DepthHazePass.js +5 -19
- package/dist/cinematic/DepthHazePass.js.map +1 -1
- package/dist/cinematic/FilmGrainPass.d.ts +5 -8
- package/dist/cinematic/FilmGrainPass.d.ts.map +1 -1
- package/dist/cinematic/FilmGrainPass.js +5 -16
- package/dist/cinematic/FilmGrainPass.js.map +1 -1
- package/dist/cinematic/VignettePass.d.ts +5 -9
- package/dist/cinematic/VignettePass.d.ts.map +1 -1
- package/dist/cinematic/VignettePass.js +5 -16
- package/dist/cinematic/VignettePass.js.map +1 -1
- package/dist/cinematic/index.d.ts +2 -1
- package/dist/cinematic/index.d.ts.map +1 -1
- package/dist/cinematic/index.js +1 -1
- package/dist/cinematic/index.js.map +1 -1
- package/dist/contracts/atmosphere.d.ts +30 -0
- package/dist/contracts/atmosphere.d.ts.map +1 -0
- package/dist/contracts/atmosphere.js +42 -0
- package/dist/contracts/atmosphere.js.map +1 -0
- package/dist/contracts/blend.d.ts +28 -0
- package/dist/contracts/blend.d.ts.map +1 -0
- package/dist/contracts/blend.js +73 -0
- package/dist/contracts/blend.js.map +1 -0
- package/dist/contracts/core.d.ts +47 -0
- package/dist/contracts/core.d.ts.map +1 -0
- package/dist/contracts/core.js +70 -0
- package/dist/contracts/core.js.map +1 -0
- package/dist/contracts/deform.d.ts +38 -0
- package/dist/contracts/deform.d.ts.map +1 -0
- package/dist/contracts/deform.js +14 -0
- package/dist/contracts/deform.js.map +1 -0
- package/dist/contracts/device.d.ts +71 -0
- package/dist/contracts/device.d.ts.map +1 -0
- package/dist/contracts/device.js +97 -0
- package/dist/contracts/device.js.map +1 -0
- package/dist/contracts/environment.d.ts +55 -0
- package/dist/contracts/environment.d.ts.map +1 -0
- package/dist/contracts/environment.js +115 -0
- package/dist/contracts/environment.js.map +1 -0
- package/dist/contracts/flags.state.d.ts +15 -0
- package/dist/contracts/flags.state.d.ts.map +1 -0
- package/dist/contracts/flags.state.js +45 -0
- package/dist/contracts/flags.state.js.map +1 -0
- package/dist/contracts/frameGraph.d.ts +78 -0
- package/dist/contracts/frameGraph.d.ts.map +1 -0
- package/dist/contracts/frameGraph.js +32 -0
- package/dist/contracts/frameGraph.js.map +1 -0
- package/dist/contracts/frameUniforms.d.ts +43 -0
- package/dist/contracts/frameUniforms.d.ts.map +1 -0
- package/dist/contracts/frameUniforms.js +35 -0
- package/dist/contracts/frameUniforms.js.map +1 -0
- package/dist/contracts/geometry.d.ts +33 -0
- package/dist/contracts/geometry.d.ts.map +1 -0
- package/dist/contracts/geometry.js +59 -0
- package/dist/contracts/geometry.js.map +1 -0
- package/dist/contracts/index.d.ts +27 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +27 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/materialLobes.d.ts +41 -0
- package/dist/contracts/materialLobes.d.ts.map +1 -0
- package/dist/contracts/materialLobes.js +14 -0
- package/dist/contracts/materialLobes.js.map +1 -0
- package/dist/contracts/output.d.ts +35 -0
- package/dist/contracts/output.d.ts.map +1 -0
- package/dist/contracts/output.js +18 -0
- package/dist/contracts/output.js.map +1 -0
- package/dist/contracts/particles.d.ts +41 -0
- package/dist/contracts/particles.d.ts.map +1 -0
- package/dist/contracts/particles.js +15 -0
- package/dist/contracts/particles.js.map +1 -0
- package/dist/contracts/post.d.ts +71 -0
- package/dist/contracts/post.d.ts.map +1 -0
- package/dist/contracts/post.js +28 -0
- package/dist/contracts/post.js.map +1 -0
- package/dist/contracts/program.d.ts +158 -0
- package/dist/contracts/program.d.ts.map +1 -0
- package/dist/contracts/program.js +128 -0
- package/dist/contracts/program.js.map +1 -0
- package/dist/contracts/quality.d.ts +93 -0
- package/dist/contracts/quality.d.ts.map +1 -0
- package/dist/contracts/quality.js +149 -0
- package/dist/contracts/quality.js.map +1 -0
- package/dist/contracts/renderItem.d.ts +58 -0
- package/dist/contracts/renderItem.d.ts.map +1 -0
- package/dist/contracts/renderItem.js +8 -0
- package/dist/contracts/renderItem.js.map +1 -0
- package/dist/contracts/renderSource.d.ts +63 -0
- package/dist/contracts/renderSource.d.ts.map +1 -0
- package/dist/contracts/renderSource.js +7 -0
- package/dist/contracts/renderSource.js.map +1 -0
- package/dist/contracts/rendererFactory.d.ts +42 -0
- package/dist/contracts/rendererFactory.d.ts.map +1 -0
- package/dist/contracts/rendererFactory.js +32 -0
- package/dist/contracts/rendererFactory.js.map +1 -0
- package/dist/contracts/sampling.d.ts +23 -0
- package/dist/contracts/sampling.d.ts.map +1 -0
- package/dist/contracts/sampling.js +17 -0
- package/dist/contracts/sampling.js.map +1 -0
- package/dist/contracts/shadows.d.ts +53 -0
- package/dist/contracts/shadows.d.ts.map +1 -0
- package/dist/contracts/shadows.js +66 -0
- package/dist/contracts/shadows.js.map +1 -0
- package/dist/contracts/testing/ChunkHarness.d.ts +18 -0
- package/dist/contracts/testing/ChunkHarness.d.ts.map +1 -0
- package/dist/contracts/testing/ChunkHarness.js +68 -0
- package/dist/contracts/testing/ChunkHarness.js.map +1 -0
- package/dist/contracts/textureFormats.d.ts +18 -0
- package/dist/contracts/textureFormats.d.ts.map +1 -0
- package/dist/contracts/textureFormats.js +13 -0
- package/dist/contracts/textureFormats.js.map +1 -0
- package/dist/contracts/velocity.d.ts +37 -0
- package/dist/contracts/velocity.d.ts.map +1 -0
- package/dist/contracts/velocity.js +22 -0
- package/dist/contracts/velocity.js.map +1 -0
- package/dist/environment/EnvUniforms.d.ts +42 -0
- package/dist/environment/EnvUniforms.d.ts.map +1 -0
- package/dist/environment/EnvUniforms.js +54 -0
- package/dist/environment/EnvUniforms.js.map +1 -0
- package/dist/environment/EnvironmentCache.d.ts +83 -0
- package/dist/environment/EnvironmentCache.d.ts.map +1 -0
- package/dist/environment/EnvironmentCache.js +205 -0
- package/dist/environment/EnvironmentCache.js.map +1 -0
- package/dist/environment/EnvironmentProbeFactory.d.ts +41 -0
- package/dist/environment/EnvironmentProbeFactory.d.ts.map +1 -0
- package/dist/environment/EnvironmentProbeFactory.js +52 -0
- package/dist/environment/EnvironmentProbeFactory.js.map +1 -0
- package/dist/environment/GPUPMREMGenerator.d.ts +44 -0
- package/dist/environment/GPUPMREMGenerator.d.ts.map +1 -0
- package/dist/environment/GPUPMREMGenerator.js +98 -0
- package/dist/environment/GPUPMREMGenerator.js.map +1 -0
- package/dist/environment/HdrEquirect.d.ts +28 -0
- package/dist/environment/HdrEquirect.d.ts.map +1 -0
- package/dist/environment/HdrEquirect.js +205 -0
- package/dist/environment/HdrEquirect.js.map +1 -0
- package/dist/environment/LightingSamplerBudget.d.ts +20 -0
- package/dist/environment/LightingSamplerBudget.d.ts.map +1 -0
- package/dist/environment/LightingSamplerBudget.js +94 -0
- package/dist/environment/LightingSamplerBudget.js.map +1 -0
- package/dist/environment/Prd02BackgroundShaderLibrary.d.ts +10 -0
- package/dist/environment/Prd02BackgroundShaderLibrary.d.ts.map +1 -0
- package/dist/environment/Prd02BackgroundShaderLibrary.js +100 -0
- package/dist/environment/Prd02BackgroundShaderLibrary.js.map +1 -0
- package/dist/environment/Rgb9e5Cube.d.ts +25 -0
- package/dist/environment/Rgb9e5Cube.d.ts.map +1 -0
- package/dist/environment/Rgb9e5Cube.js +103 -0
- package/dist/environment/Rgb9e5Cube.js.map +1 -0
- package/dist/environment/RoomEnvironmentScene.d.ts +57 -0
- package/dist/environment/RoomEnvironmentScene.d.ts.map +1 -0
- package/dist/environment/RoomEnvironmentScene.js +165 -0
- package/dist/environment/RoomEnvironmentScene.js.map +1 -0
- package/dist/environment/SphericalHarmonics.d.ts +32 -0
- package/dist/environment/SphericalHarmonics.d.ts.map +1 -0
- package/dist/environment/SphericalHarmonics.js +155 -0
- package/dist/environment/SphericalHarmonics.js.map +1 -0
- package/dist/environment/probeBuild.d.ts +97 -0
- package/dist/environment/probeBuild.d.ts.map +1 -0
- package/dist/environment/probeBuild.js +406 -0
- package/dist/environment/probeBuild.js.map +1 -0
- package/dist/environment/workers/cpuPrefilter.d.ts +58 -0
- package/dist/environment/workers/cpuPrefilter.d.ts.map +1 -0
- package/dist/environment/workers/cpuPrefilter.js +288 -0
- package/dist/environment/workers/cpuPrefilter.js.map +1 -0
- package/dist/forward/Deform.d.ts +56 -0
- package/dist/forward/Deform.d.ts.map +1 -0
- package/dist/forward/Deform.js +517 -0
- package/dist/forward/Deform.js.map +1 -0
- package/dist/forward/DrawSubmit.d.ts +32 -0
- package/dist/forward/DrawSubmit.d.ts.map +1 -0
- package/dist/forward/DrawSubmit.js +75 -0
- package/dist/forward/DrawSubmit.js.map +1 -0
- package/dist/forward/Lighting.d.ts +35 -0
- package/dist/forward/Lighting.d.ts.map +1 -0
- package/dist/forward/Lighting.js +477 -0
- package/dist/forward/Lighting.js.map +1 -0
- package/dist/forward/Transmission.d.ts +62 -0
- package/dist/forward/Transmission.d.ts.map +1 -0
- package/dist/forward/Transmission.js +299 -0
- package/dist/forward/Transmission.js.map +1 -0
- package/dist/forward/Velocity.d.ts +47 -0
- package/dist/forward/Velocity.d.ts.map +1 -0
- package/dist/forward/Velocity.js +153 -0
- package/dist/forward/Velocity.js.map +1 -0
- package/dist/forward/transmissionTargetStore.d.ts +21 -0
- package/dist/forward/transmissionTargetStore.d.ts.map +1 -0
- package/dist/forward/transmissionTargetStore.js +8 -0
- package/dist/forward/transmissionTargetStore.js.map +1 -0
- package/dist/geometry/Primitives.d.ts +28 -0
- package/dist/geometry/Primitives.d.ts.map +1 -0
- package/dist/geometry/Primitives.js +110 -0
- package/dist/geometry/Primitives.js.map +1 -0
- package/dist/index.d.ts +140 -58
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +102 -52
- package/dist/index.js.map +1 -1
- package/dist/lanes/index.d.ts +17 -0
- package/dist/lanes/index.d.ts.map +1 -0
- package/dist/lanes/index.js +17 -0
- package/dist/lanes/index.js.map +1 -0
- package/dist/lanes/prd01.d.ts +6 -0
- package/dist/lanes/prd01.d.ts.map +1 -0
- package/dist/lanes/prd01.js +19 -0
- package/dist/lanes/prd01.js.map +1 -0
- package/dist/lanes/prd02.d.ts +62 -0
- package/dist/lanes/prd02.d.ts.map +1 -0
- package/dist/lanes/prd02.js +117 -0
- package/dist/lanes/prd02.js.map +1 -0
- package/dist/lanes/prd03.d.ts +19 -0
- package/dist/lanes/prd03.d.ts.map +1 -0
- package/dist/lanes/prd03.js +55 -0
- package/dist/lanes/prd03.js.map +1 -0
- package/dist/lanes/prd04.d.ts +22 -0
- package/dist/lanes/prd04.d.ts.map +1 -0
- package/dist/lanes/prd04.js +35 -0
- package/dist/lanes/prd04.js.map +1 -0
- package/dist/lanes/prd05.d.ts +4 -0
- package/dist/lanes/prd05.d.ts.map +1 -0
- package/dist/lanes/prd05.js +31 -0
- package/dist/lanes/prd05.js.map +1 -0
- package/dist/lanes/prd06.d.ts +33 -0
- package/dist/lanes/prd06.d.ts.map +1 -0
- package/dist/lanes/prd06.js +217 -0
- package/dist/lanes/prd06.js.map +1 -0
- package/dist/lanes/prd07.d.ts +49 -0
- package/dist/lanes/prd07.d.ts.map +1 -0
- package/dist/lanes/prd07.js +112 -0
- package/dist/lanes/prd07.js.map +1 -0
- package/dist/lanes/prd08.d.ts +2 -0
- package/dist/lanes/prd08.d.ts.map +1 -0
- package/dist/lanes/prd08.js +17 -0
- package/dist/lanes/prd08.js.map +1 -0
- package/dist/lanes/prd09.d.ts +6 -0
- package/dist/lanes/prd09.d.ts.map +1 -0
- package/dist/lanes/prd09.js +6 -0
- package/dist/lanes/prd09.js.map +1 -0
- package/dist/lanes/prd10.d.ts +2 -0
- package/dist/lanes/prd10.d.ts.map +1 -0
- package/dist/lanes/prd10.js +10 -0
- package/dist/lanes/prd10.js.map +1 -0
- package/dist/lanes/prd11.d.ts +61 -0
- package/dist/lanes/prd11.d.ts.map +1 -0
- package/dist/lanes/prd11.js +244 -0
- package/dist/lanes/prd11.js.map +1 -0
- package/dist/lanes/prd12.d.ts +6 -0
- package/dist/lanes/prd12.d.ts.map +1 -0
- package/dist/lanes/prd12.js +6 -0
- package/dist/lanes/prd12.js.map +1 -0
- package/dist/lanes/prd13.d.ts +6 -0
- package/dist/lanes/prd13.d.ts.map +1 -0
- package/dist/lanes/prd13.js +6 -0
- package/dist/lanes/prd13.js.map +1 -0
- package/dist/lanes/prd14.d.ts +6 -0
- package/dist/lanes/prd14.d.ts.map +1 -0
- package/dist/lanes/prd14.js +6 -0
- package/dist/lanes/prd14.js.map +1 -0
- package/dist/lanes/prd15.d.ts +6 -0
- package/dist/lanes/prd15.d.ts.map +1 -0
- package/dist/lanes/prd15.js +6 -0
- package/dist/lanes/prd15.js.map +1 -0
- package/dist/materials/PhysicalFeatures.d.ts +71 -0
- package/dist/materials/PhysicalFeatures.d.ts.map +1 -0
- package/dist/materials/PhysicalFeatures.js +255 -0
- package/dist/materials/PhysicalFeatures.js.map +1 -0
- package/dist/materials/PhysicalMaterial.d.ts +85 -0
- package/dist/materials/PhysicalMaterial.d.ts.map +1 -1
- package/dist/materials/PhysicalMaterial.js +21 -0
- package/dist/materials/PhysicalMaterial.js.map +1 -1
- package/dist/materials/features.d.ts +47 -0
- package/dist/materials/features.d.ts.map +1 -0
- package/dist/materials/features.js +282 -0
- package/dist/materials/features.js.map +1 -0
- package/dist/materials/lobes.d.ts +3 -0
- package/dist/materials/lobes.d.ts.map +1 -0
- package/dist/materials/lobes.js +225 -0
- package/dist/materials/lobes.js.map +1 -0
- package/dist/output/HdrTarget.d.ts +27 -0
- package/dist/output/HdrTarget.d.ts.map +1 -0
- package/dist/output/HdrTarget.js +48 -0
- package/dist/output/HdrTarget.js.map +1 -0
- package/dist/output/OutputPass.d.ts +28 -0
- package/dist/output/OutputPass.d.ts.map +1 -0
- package/dist/output/OutputPass.js +142 -0
- package/dist/output/OutputPass.js.map +1 -0
- package/dist/output/ToneMappingOperators.glsl.d.ts +22 -0
- package/dist/output/ToneMappingOperators.glsl.d.ts.map +1 -0
- package/dist/output/ToneMappingOperators.glsl.js +217 -0
- package/dist/output/ToneMappingOperators.glsl.js.map +1 -0
- package/dist/passes/ContactShadowPass.d.ts +57 -0
- package/dist/passes/ContactShadowPass.d.ts.map +1 -0
- package/dist/passes/ContactShadowPass.js +151 -0
- package/dist/passes/ContactShadowPass.js.map +1 -0
- package/dist/passes/Prd02ContactShadowsContributor.d.ts +16 -0
- package/dist/passes/Prd02ContactShadowsContributor.d.ts.map +1 -0
- package/dist/passes/Prd02ContactShadowsContributor.js +133 -0
- package/dist/passes/Prd02ContactShadowsContributor.js.map +1 -0
- package/dist/passes/Prd02SubFlags.d.ts +22 -0
- package/dist/passes/Prd02SubFlags.d.ts.map +1 -0
- package/dist/passes/Prd02SubFlags.js +32 -0
- package/dist/passes/Prd02SubFlags.js.map +1 -0
- package/dist/performance/BVH.d.ts +46 -0
- package/dist/performance/BVH.d.ts.map +1 -1
- package/dist/performance/BVH.js +212 -0
- package/dist/performance/BVH.js.map +1 -1
- package/dist/performance/Batcher.d.ts +11 -0
- package/dist/performance/Batcher.d.ts.map +1 -1
- package/dist/performance/Batcher.js +10 -0
- package/dist/performance/Batcher.js.map +1 -1
- package/dist/performance/FrustumCuller.d.ts +29 -0
- package/dist/performance/FrustumCuller.d.ts.map +1 -1
- package/dist/performance/FrustumCuller.js +78 -1
- package/dist/performance/FrustumCuller.js.map +1 -1
- package/dist/performance/LOD.d.ts +6 -0
- package/dist/performance/LOD.d.ts.map +1 -1
- package/dist/performance/LOD.js +12 -0
- package/dist/performance/LOD.js.map +1 -1
- package/dist/performance/RenderItemSorting.d.ts +2 -0
- package/dist/performance/RenderItemSorting.d.ts.map +1 -1
- package/dist/performance/RenderItemSorting.js +5 -1
- package/dist/performance/RenderItemSorting.js.map +1 -1
- package/dist/post/CubeLut.d.ts +15 -0
- package/dist/post/CubeLut.d.ts.map +1 -0
- package/dist/post/CubeLut.js +86 -0
- package/dist/post/CubeLut.js.map +1 -0
- package/dist/post/DisplayLutCache.d.ts +31 -0
- package/dist/post/DisplayLutCache.d.ts.map +1 -0
- package/dist/post/DisplayLutCache.js +44 -0
- package/dist/post/DisplayLutCache.js.map +1 -0
- package/dist/post/PostAntiAlias.d.ts +49 -0
- package/dist/post/PostAntiAlias.d.ts.map +1 -0
- package/dist/post/PostAntiAlias.js +75 -0
- package/dist/post/PostAntiAlias.js.map +1 -0
- package/dist/post/PostGraph.d.ts +206 -0
- package/dist/post/PostGraph.d.ts.map +1 -0
- package/dist/post/PostGraph.js +234 -0
- package/dist/post/PostGraph.js.map +1 -0
- package/dist/post/PostQualityTiers.d.ts +95 -0
- package/dist/post/PostQualityTiers.d.ts.map +1 -0
- package/dist/post/PostQualityTiers.js +62 -0
- package/dist/post/PostQualityTiers.js.map +1 -0
- package/dist/post/PostResources.d.ts +49 -0
- package/dist/post/PostResources.d.ts.map +1 -0
- package/dist/post/PostResources.js +119 -0
- package/dist/post/PostResources.js.map +1 -0
- package/dist/post/PostTimer.d.ts +37 -0
- package/dist/post/PostTimer.d.ts.map +1 -0
- package/dist/post/PostTimer.js +88 -0
- package/dist/post/PostTimer.js.map +1 -0
- package/dist/post/ScreenFeelPass.d.ts +83 -0
- package/dist/post/ScreenFeelPass.d.ts.map +1 -0
- package/dist/post/ScreenFeelPass.js +197 -0
- package/dist/post/ScreenFeelPass.js.map +1 -0
- package/dist/post/ToneOperators.d.ts +42 -0
- package/dist/post/ToneOperators.d.ts.map +1 -0
- package/dist/post/ToneOperators.js +179 -0
- package/dist/post/ToneOperators.js.map +1 -0
- package/dist/post/chunks/indirectFraction.glsl.d.ts +50 -0
- package/dist/post/chunks/indirectFraction.glsl.d.ts.map +1 -0
- package/dist/post/chunks/indirectFraction.glsl.js +82 -0
- package/dist/post/chunks/indirectFraction.glsl.js.map +1 -0
- package/dist/post/chunks/velocity.glsl.d.ts +35 -0
- package/dist/post/chunks/velocity.glsl.d.ts.map +1 -0
- package/dist/post/chunks/velocity.glsl.js +86 -0
- package/dist/post/chunks/velocity.glsl.js.map +1 -0
- package/dist/post/shaders/bloom.glsl.d.ts +21 -0
- package/dist/post/shaders/bloom.glsl.d.ts.map +1 -0
- package/dist/post/shaders/bloom.glsl.js +120 -0
- package/dist/post/shaders/bloom.glsl.js.map +1 -0
- package/dist/post/shaders/bloom.wgsl.d.ts +10 -0
- package/dist/post/shaders/bloom.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/bloom.wgsl.js +121 -0
- package/dist/post/shaders/bloom.wgsl.js.map +1 -0
- package/dist/post/shaders/common.glsl.d.ts +11 -0
- package/dist/post/shaders/common.glsl.d.ts.map +1 -0
- package/dist/post/shaders/common.glsl.js +34 -0
- package/dist/post/shaders/common.glsl.js.map +1 -0
- package/dist/post/shaders/common.wgsl.d.ts +25 -0
- package/dist/post/shaders/common.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/common.wgsl.js +48 -0
- package/dist/post/shaders/common.wgsl.js.map +1 -0
- package/dist/post/shaders/composite.glsl.d.ts +25 -0
- package/dist/post/shaders/composite.glsl.d.ts.map +1 -0
- package/dist/post/shaders/composite.glsl.js +96 -0
- package/dist/post/shaders/composite.glsl.js.map +1 -0
- package/dist/post/shaders/composite.wgsl.d.ts +10 -0
- package/dist/post/shaders/composite.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/composite.wgsl.js +92 -0
- package/dist/post/shaders/composite.wgsl.js.map +1 -0
- package/dist/post/shaders/depthDownsample.glsl.d.ts +20 -0
- package/dist/post/shaders/depthDownsample.glsl.d.ts.map +1 -0
- package/dist/post/shaders/depthDownsample.glsl.js +78 -0
- package/dist/post/shaders/depthDownsample.glsl.js.map +1 -0
- package/dist/post/shaders/depthDownsample.wgsl.d.ts +17 -0
- package/dist/post/shaders/depthDownsample.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/depthDownsample.wgsl.js +87 -0
- package/dist/post/shaders/depthDownsample.wgsl.js.map +1 -0
- package/dist/post/shaders/displayGrade.glsl.d.ts +18 -0
- package/dist/post/shaders/displayGrade.glsl.d.ts.map +1 -0
- package/dist/post/shaders/displayGrade.glsl.js +80 -0
- package/dist/post/shaders/displayGrade.glsl.js.map +1 -0
- package/dist/post/shaders/displayGrade.wgsl.d.ts +9 -0
- package/dist/post/shaders/displayGrade.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/displayGrade.wgsl.js +75 -0
- package/dist/post/shaders/displayGrade.wgsl.js.map +1 -0
- package/dist/post/shaders/dof.glsl.d.ts +25 -0
- package/dist/post/shaders/dof.glsl.d.ts.map +1 -0
- package/dist/post/shaders/dof.glsl.js +129 -0
- package/dist/post/shaders/dof.glsl.js.map +1 -0
- package/dist/post/shaders/dof.wgsl.d.ts +11 -0
- package/dist/post/shaders/dof.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/dof.wgsl.js +119 -0
- package/dist/post/shaders/dof.wgsl.js.map +1 -0
- package/dist/post/shaders/exposure.glsl.d.ts +43 -0
- package/dist/post/shaders/exposure.glsl.d.ts.map +1 -0
- package/dist/post/shaders/exposure.glsl.js +115 -0
- package/dist/post/shaders/exposure.glsl.js.map +1 -0
- package/dist/post/shaders/exposure.wgsl.d.ts +16 -0
- package/dist/post/shaders/exposure.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/exposure.wgsl.js +97 -0
- package/dist/post/shaders/exposure.wgsl.js.map +1 -0
- package/dist/post/shaders/finalize.glsl.d.ts +17 -0
- package/dist/post/shaders/finalize.glsl.d.ts.map +1 -0
- package/dist/post/shaders/finalize.glsl.js +120 -0
- package/dist/post/shaders/finalize.glsl.js.map +1 -0
- package/dist/post/shaders/finalize.wgsl.d.ts +13 -0
- package/dist/post/shaders/finalize.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/finalize.wgsl.js +124 -0
- package/dist/post/shaders/finalize.wgsl.js.map +1 -0
- package/dist/post/shaders/fxaa.glsl.d.ts +26 -0
- package/dist/post/shaders/fxaa.glsl.d.ts.map +1 -0
- package/dist/post/shaders/fxaa.glsl.js +246 -0
- package/dist/post/shaders/fxaa.glsl.js.map +1 -0
- package/dist/post/shaders/fxaa.wgsl.d.ts +17 -0
- package/dist/post/shaders/fxaa.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/fxaa.wgsl.js +268 -0
- package/dist/post/shaders/fxaa.wgsl.js.map +1 -0
- package/dist/post/shaders/godrays.glsl.d.ts +16 -0
- package/dist/post/shaders/godrays.glsl.d.ts.map +1 -0
- package/dist/post/shaders/godrays.glsl.js +70 -0
- package/dist/post/shaders/godrays.glsl.js.map +1 -0
- package/dist/post/shaders/godrays.wgsl.d.ts +8 -0
- package/dist/post/shaders/godrays.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/godrays.wgsl.js +60 -0
- package/dist/post/shaders/godrays.wgsl.js.map +1 -0
- package/dist/post/shaders/gtao.glsl.d.ts +29 -0
- package/dist/post/shaders/gtao.glsl.d.ts.map +1 -0
- package/dist/post/shaders/gtao.glsl.js +190 -0
- package/dist/post/shaders/gtao.glsl.js.map +1 -0
- package/dist/post/shaders/gtao.wgsl.d.ts +13 -0
- package/dist/post/shaders/gtao.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/gtao.wgsl.js +163 -0
- package/dist/post/shaders/gtao.wgsl.js.map +1 -0
- package/dist/post/shaders/gtaoDenoise.glsl.d.ts +22 -0
- package/dist/post/shaders/gtaoDenoise.glsl.d.ts.map +1 -0
- package/dist/post/shaders/gtaoDenoise.glsl.js +121 -0
- package/dist/post/shaders/gtaoDenoise.glsl.js.map +1 -0
- package/dist/post/shaders/gtaoDenoise.wgsl.d.ts +11 -0
- package/dist/post/shaders/gtaoDenoise.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/gtaoDenoise.wgsl.js +117 -0
- package/dist/post/shaders/gtaoDenoise.wgsl.js.map +1 -0
- package/dist/post/shaders/motionBlur.glsl.d.ts +21 -0
- package/dist/post/shaders/motionBlur.glsl.d.ts.map +1 -0
- package/dist/post/shaders/motionBlur.glsl.js +110 -0
- package/dist/post/shaders/motionBlur.glsl.js.map +1 -0
- package/dist/post/shaders/motionBlur.wgsl.d.ts +10 -0
- package/dist/post/shaders/motionBlur.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/motionBlur.wgsl.js +102 -0
- package/dist/post/shaders/motionBlur.wgsl.js.map +1 -0
- package/dist/post/shaders/smaa.glsl.d.ts +28 -0
- package/dist/post/shaders/smaa.glsl.d.ts.map +1 -0
- package/dist/post/shaders/smaa.glsl.js +354 -0
- package/dist/post/shaders/smaa.glsl.js.map +1 -0
- package/dist/post/shaders/smaa.wgsl.d.ts +20 -0
- package/dist/post/shaders/smaa.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/smaa.wgsl.js +375 -0
- package/dist/post/shaders/smaa.wgsl.js.map +1 -0
- package/dist/post/shaders/taa.glsl.d.ts +23 -0
- package/dist/post/shaders/taa.glsl.d.ts.map +1 -0
- package/dist/post/shaders/taa.glsl.js +169 -0
- package/dist/post/shaders/taa.glsl.js.map +1 -0
- package/dist/post/shaders/taa.wgsl.d.ts +10 -0
- package/dist/post/shaders/taa.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/taa.wgsl.js +185 -0
- package/dist/post/shaders/taa.wgsl.js.map +1 -0
- package/dist/post/shaders/velocityDilate.glsl.d.ts +16 -0
- package/dist/post/shaders/velocityDilate.glsl.d.ts.map +1 -0
- package/dist/post/shaders/velocityDilate.glsl.js +45 -0
- package/dist/post/shaders/velocityDilate.glsl.js.map +1 -0
- package/dist/post/shaders/velocityDilate.wgsl.d.ts +8 -0
- package/dist/post/shaders/velocityDilate.wgsl.d.ts.map +1 -0
- package/dist/post/shaders/velocityDilate.wgsl.js +30 -0
- package/dist/post/shaders/velocityDilate.wgsl.js.map +1 -0
- package/dist/post/smaa/textures.d.ts +17 -0
- package/dist/post/smaa/textures.d.ts.map +1 -0
- package/dist/post/smaa/textures.js +17 -0
- package/dist/post/smaa/textures.js.map +1 -0
- package/dist/post/v2Entry.d.ts +25 -0
- package/dist/post/v2Entry.d.ts.map +1 -0
- package/dist/post/v2Entry.js +28 -0
- package/dist/post/v2Entry.js.map +1 -0
- package/dist/post/v2Stages.d.ts +156 -0
- package/dist/post/v2Stages.d.ts.map +1 -0
- package/dist/post/v2Stages.js +1189 -0
- package/dist/post/v2Stages.js.map +1 -0
- package/dist/postprocess/EffectComposer.d.ts +6 -109
- package/dist/postprocess/EffectComposer.d.ts.map +1 -1
- package/dist/postprocess/EffectComposer.js +6 -246
- package/dist/postprocess/EffectComposer.js.map +1 -1
- package/dist/postprocess/NativeBloomPyramid.d.ts +34 -0
- package/dist/postprocess/NativeBloomPyramid.d.ts.map +1 -1
- package/dist/postprocess/NativeBloomPyramid.js +57 -0
- package/dist/postprocess/NativeBloomPyramid.js.map +1 -1
- package/dist/postprocess/SSAOPass.d.ts +5 -5
- package/dist/postprocess/SSAOPass.d.ts.map +1 -1
- package/dist/postprocess/SSAOPass.js +5 -17
- package/dist/postprocess/SSAOPass.js.map +1 -1
- package/dist/probes/IrradianceVolume.d.ts +45 -0
- package/dist/probes/IrradianceVolume.d.ts.map +1 -0
- package/dist/probes/IrradianceVolume.js +230 -0
- package/dist/probes/IrradianceVolume.js.map +1 -0
- package/dist/probes/LtcLuts.d.ts +30 -0
- package/dist/probes/LtcLuts.d.ts.map +1 -0
- package/dist/probes/LtcLuts.js +120 -0
- package/dist/probes/LtcLuts.js.map +1 -0
- package/dist/probes/Prd02ProbesContributor.d.ts +53 -0
- package/dist/probes/Prd02ProbesContributor.d.ts.map +1 -0
- package/dist/probes/Prd02ProbesContributor.js +241 -0
- package/dist/probes/Prd02ProbesContributor.js.map +1 -0
- package/dist/probes/ProbeBoxProjection.d.ts +53 -0
- package/dist/probes/ProbeBoxProjection.d.ts.map +1 -0
- package/dist/probes/ProbeBoxProjection.js +99 -0
- package/dist/probes/ProbeBoxProjection.js.map +1 -0
- package/dist/probes/ReflectionProbeSystem.d.ts +64 -0
- package/dist/probes/ReflectionProbeSystem.d.ts.map +1 -0
- package/dist/probes/ReflectionProbeSystem.js +157 -0
- package/dist/probes/ReflectionProbeSystem.js.map +1 -0
- package/dist/production-runtime/PBRHDRPipeline.d.ts.map +1 -1
- package/dist/production-runtime/PBRHDRPipeline.js +23 -9
- package/dist/production-runtime/PBRHDRPipeline.js.map +1 -1
- package/dist/production-runtime/ProductionRendererTypes.d.ts +16 -6
- package/dist/production-runtime/ProductionRendererTypes.d.ts.map +1 -1
- package/dist/production-runtime/ProductionRendererTypes.js.map +1 -1
- package/dist/production-runtime/ProductionWebGPURenderer.d.ts +4 -4
- package/dist/production-runtime/ProductionWebGPURenderer.d.ts.map +1 -1
- package/dist/production-runtime/ProductionWebGPURenderer.js +10 -45
- package/dist/production-runtime/ProductionWebGPURenderer.js.map +1 -1
- package/dist/production-runtime/backendSelection.d.ts +26 -0
- package/dist/production-runtime/backendSelection.d.ts.map +1 -0
- package/dist/production-runtime/backendSelection.js +46 -0
- package/dist/production-runtime/backendSelection.js.map +1 -0
- package/dist/production-runtime/backends/WebGL2RendererBackend.d.ts +1 -1
- package/dist/production-runtime/backends/WebGL2RendererBackend.d.ts.map +1 -1
- package/dist/production-runtime/backends/WebGL2RendererBackend.js +8 -4
- package/dist/production-runtime/backends/WebGL2RendererBackend.js.map +1 -1
- package/dist/production-runtime/backends/WebGPURendererBackend.d.ts +2 -19
- package/dist/production-runtime/backends/WebGPURendererBackend.d.ts.map +1 -1
- package/dist/production-runtime/backends/WebGPURendererBackend.js +2 -18
- package/dist/production-runtime/backends/WebGPURendererBackend.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Buffer.d.ts +2 -10
- package/dist/production-runtime/backends/webgl2/WebGL2Buffer.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Buffer.js +2 -7
- package/dist/production-runtime/backends/webgl2/WebGL2Buffer.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Capabilities.d.ts +2 -10
- package/dist/production-runtime/backends/webgl2/WebGL2Capabilities.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Capabilities.js +2 -7
- package/dist/production-runtime/backends/webgl2/WebGL2Capabilities.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2RenderTarget.d.ts +2 -10
- package/dist/production-runtime/backends/webgl2/WebGL2RenderTarget.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2RenderTarget.js +2 -7
- package/dist/production-runtime/backends/webgl2/WebGL2RenderTarget.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Shader.d.ts +2 -10
- package/dist/production-runtime/backends/webgl2/WebGL2Shader.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Shader.js +2 -7
- package/dist/production-runtime/backends/webgl2/WebGL2Shader.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2StateCache.d.ts +1 -0
- package/dist/production-runtime/backends/webgl2/WebGL2StateCache.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2StateCache.js +1 -0
- package/dist/production-runtime/backends/webgl2/WebGL2StateCache.js.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Texture.d.ts +2 -10
- package/dist/production-runtime/backends/webgl2/WebGL2Texture.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgl2/WebGL2Texture.js +2 -7
- package/dist/production-runtime/backends/webgl2/WebGL2Texture.js.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUBuffer.d.ts +2 -10
- package/dist/production-runtime/backends/webgpu/WebGPUBuffer.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUBuffer.js +2 -7
- package/dist/production-runtime/backends/webgpu/WebGPUBuffer.js.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUCapabilities.d.ts +2 -10
- package/dist/production-runtime/backends/webgpu/WebGPUCapabilities.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUCapabilities.js +2 -7
- package/dist/production-runtime/backends/webgpu/WebGPUCapabilities.js.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPURenderTarget.d.ts +2 -10
- package/dist/production-runtime/backends/webgpu/WebGPURenderTarget.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPURenderTarget.js +2 -7
- package/dist/production-runtime/backends/webgpu/WebGPURenderTarget.js.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUShader.d.ts +2 -10
- package/dist/production-runtime/backends/webgpu/WebGPUShader.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUShader.js +2 -7
- package/dist/production-runtime/backends/webgpu/WebGPUShader.js.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUTexture.d.ts +2 -10
- package/dist/production-runtime/backends/webgpu/WebGPUTexture.d.ts.map +1 -1
- package/dist/production-runtime/backends/webgpu/WebGPUTexture.js +2 -7
- package/dist/production-runtime/backends/webgpu/WebGPUTexture.js.map +1 -1
- package/dist/production-runtime/index.d.ts +6 -6
- package/dist/production-runtime/index.d.ts.map +1 -1
- package/dist/production-runtime/index.js +9 -3
- package/dist/production-runtime/index.js.map +1 -1
- package/dist/production-runtime/materials/GLTFMaterialAdapter.d.ts +12 -13
- package/dist/production-runtime/materials/GLTFMaterialAdapter.d.ts.map +1 -1
- package/dist/production-runtime/materials/GLTFMaterialAdapter.js +10 -4
- package/dist/production-runtime/materials/GLTFMaterialAdapter.js.map +1 -1
- package/dist/production-runtime/materials/GLTFPBRMaterialAdapter.d.ts +9 -2
- package/dist/production-runtime/materials/GLTFPBRMaterialAdapter.d.ts.map +1 -1
- package/dist/production-runtime/materials/GLTFPBRMaterialAdapter.js +7 -1
- package/dist/production-runtime/materials/GLTFPBRMaterialAdapter.js.map +1 -1
- package/dist/production-runtime/materials/MaterialCompiler.d.ts +10 -8
- package/dist/production-runtime/materials/MaterialCompiler.d.ts.map +1 -1
- package/dist/production-runtime/materials/MaterialCompiler.js +9 -4
- package/dist/production-runtime/materials/MaterialCompiler.js.map +1 -1
- package/dist/production-runtime/materials/PBRShaderFeatures.d.ts.map +1 -1
- package/dist/production-runtime/materials/PBRShaderFeatures.js +30 -1
- package/dist/production-runtime/materials/PBRShaderFeatures.js.map +1 -1
- package/dist/production-runtime/renderProofs.d.ts +54 -0
- package/dist/production-runtime/renderProofs.d.ts.map +1 -0
- package/dist/production-runtime/renderProofs.js +245 -0
- package/dist/production-runtime/renderProofs.js.map +1 -0
- package/dist/program/DFGLut.d.ts +23 -0
- package/dist/program/DFGLut.d.ts.map +1 -0
- package/dist/program/DFGLut.js +58 -0
- package/dist/program/DFGLut.js.map +1 -0
- package/dist/program/DFGLutData.d.ts +35 -0
- package/dist/program/DFGLutData.d.ts.map +1 -0
- package/dist/program/DFGLutData.js +52 -0
- package/dist/program/DFGLutData.js.map +1 -0
- package/dist/program/FeatureSelect.d.ts +35 -0
- package/dist/program/FeatureSelect.d.ts.map +1 -0
- package/dist/program/FeatureSelect.js +88 -0
- package/dist/program/FeatureSelect.js.map +1 -0
- package/dist/program/MaterialFeatures.d.ts +66 -0
- package/dist/program/MaterialFeatures.d.ts.map +1 -0
- package/dist/program/MaterialFeatures.js +242 -0
- package/dist/program/MaterialFeatures.js.map +1 -0
- package/dist/program/ProgramCache.d.ts +83 -0
- package/dist/program/ProgramCache.d.ts.map +1 -0
- package/dist/program/ProgramCache.js +194 -0
- package/dist/program/ProgramCache.js.map +1 -0
- package/dist/program/ProgramFeatures.d.ts +21 -0
- package/dist/program/ProgramFeatures.d.ts.map +1 -0
- package/dist/program/ProgramFeatures.js +95 -0
- package/dist/program/ProgramFeatures.js.map +1 -0
- package/dist/program/ProgramGenerator.d.ts +60 -0
- package/dist/program/ProgramGenerator.d.ts.map +1 -0
- package/dist/program/ProgramGenerator.js +760 -0
- package/dist/program/ProgramGenerator.js.map +1 -0
- package/dist/program/ProgramKey.d.ts +10 -0
- package/dist/program/ProgramKey.d.ts.map +1 -0
- package/dist/program/ProgramKey.js +13 -0
- package/dist/program/ProgramKey.js.map +1 -0
- package/dist/program/ProgramWarmup.d.ts +37 -0
- package/dist/program/ProgramWarmup.d.ts.map +1 -0
- package/dist/program/ProgramWarmup.js +68 -0
- package/dist/program/ProgramWarmup.js.map +1 -0
- package/dist/program/UniformLayout.d.ts +40 -0
- package/dist/program/UniformLayout.d.ts.map +1 -0
- package/dist/program/UniformLayout.js +105 -0
- package/dist/program/UniformLayout.js.map +1 -0
- package/dist/program/chunks/alpha.glsl.d.ts +7 -0
- package/dist/program/chunks/alpha.glsl.d.ts.map +1 -0
- package/dist/program/chunks/alpha.glsl.js +17 -0
- package/dist/program/chunks/alpha.glsl.js.map +1 -0
- package/dist/program/chunks/brdf.glsl.d.ts +12 -0
- package/dist/program/chunks/brdf.glsl.d.ts.map +1 -0
- package/dist/program/chunks/brdf.glsl.js +144 -0
- package/dist/program/chunks/brdf.glsl.js.map +1 -0
- package/dist/program/chunks/colorspace.glsl.d.ts +8 -0
- package/dist/program/chunks/colorspace.glsl.d.ts.map +1 -0
- package/dist/program/chunks/colorspace.glsl.js +16 -0
- package/dist/program/chunks/colorspace.glsl.js.map +1 -0
- package/dist/program/chunks/common.glsl.d.ts +7 -0
- package/dist/program/chunks/common.glsl.d.ts.map +1 -0
- package/dist/program/chunks/common.glsl.js +25 -0
- package/dist/program/chunks/common.glsl.js.map +1 -0
- package/dist/program/chunks/depth.glsl.d.ts +9 -0
- package/dist/program/chunks/depth.glsl.d.ts.map +1 -0
- package/dist/program/chunks/depth.glsl.js +18 -0
- package/dist/program/chunks/depth.glsl.js.map +1 -0
- package/dist/program/chunks/drawId.wgsl.d.ts +9 -0
- package/dist/program/chunks/drawId.wgsl.d.ts.map +1 -0
- package/dist/program/chunks/drawId.wgsl.js +29 -0
- package/dist/program/chunks/drawId.wgsl.js.map +1 -0
- package/dist/program/chunks/fog_default.glsl.d.ts +8 -0
- package/dist/program/chunks/fog_default.glsl.d.ts.map +1 -0
- package/dist/program/chunks/fog_default.glsl.js +31 -0
- package/dist/program/chunks/fog_default.glsl.js.map +1 -0
- package/dist/program/chunks/indirect_default.glsl.d.ts +29 -0
- package/dist/program/chunks/indirect_default.glsl.d.ts.map +1 -0
- package/dist/program/chunks/indirect_default.glsl.js +113 -0
- package/dist/program/chunks/indirect_default.glsl.js.map +1 -0
- package/dist/program/chunks/instanceEmissive.wgsl.d.ts +10 -0
- package/dist/program/chunks/instanceEmissive.wgsl.d.ts.map +1 -0
- package/dist/program/chunks/instanceEmissive.wgsl.js +21 -0
- package/dist/program/chunks/instanceEmissive.wgsl.js.map +1 -0
- package/dist/program/chunks/instancing.glsl.d.ts +8 -0
- package/dist/program/chunks/instancing.glsl.d.ts.map +1 -0
- package/dist/program/chunks/instancing.glsl.js +25 -0
- package/dist/program/chunks/instancing.glsl.js.map +1 -0
- package/dist/program/chunks/lights_legacy.glsl.d.ts +15 -0
- package/dist/program/chunks/lights_legacy.glsl.d.ts.map +1 -0
- package/dist/program/chunks/lights_legacy.glsl.js +95 -0
- package/dist/program/chunks/lights_legacy.glsl.js.map +1 -0
- package/dist/program/chunks/manifest.d.ts +42 -0
- package/dist/program/chunks/manifest.d.ts.map +1 -0
- package/dist/program/chunks/manifest.js +48 -0
- package/dist/program/chunks/manifest.js.map +1 -0
- package/dist/program/chunks/normal.glsl.d.ts +8 -0
- package/dist/program/chunks/normal.glsl.d.ts.map +1 -0
- package/dist/program/chunks/normal.glsl.js +34 -0
- package/dist/program/chunks/normal.glsl.js.map +1 -0
- package/dist/program/chunks/shadow_forward.glsl.d.ts +23 -0
- package/dist/program/chunks/shadow_forward.glsl.d.ts.map +1 -0
- package/dist/program/chunks/shadow_forward.glsl.js +73 -0
- package/dist/program/chunks/shadow_forward.glsl.js.map +1 -0
- package/dist/quality/DeviceClasses.d.ts +31 -0
- package/dist/quality/DeviceClasses.d.ts.map +1 -0
- package/dist/quality/DeviceClasses.js +83 -0
- package/dist/quality/DeviceClasses.js.map +1 -0
- package/dist/quality/DeviceProbe.d.ts +42 -0
- package/dist/quality/DeviceProbe.d.ts.map +1 -0
- package/dist/quality/DeviceProbe.js +83 -0
- package/dist/quality/DeviceProbe.js.map +1 -0
- package/dist/quality/FrameStats.d.ts +62 -0
- package/dist/quality/FrameStats.d.ts.map +1 -0
- package/dist/quality/FrameStats.js +220 -0
- package/dist/quality/FrameStats.js.map +1 -0
- package/dist/quality/PostprocessGuard.d.ts +49 -0
- package/dist/quality/PostprocessGuard.d.ts.map +1 -0
- package/dist/quality/PostprocessGuard.js +92 -0
- package/dist/quality/PostprocessGuard.js.map +1 -0
- package/dist/quality/QualityController.d.ts +93 -0
- package/dist/quality/QualityController.d.ts.map +1 -0
- package/dist/quality/QualityController.js +248 -0
- package/dist/quality/QualityController.js.map +1 -0
- package/dist/quality/QualityGovernor.d.ts +78 -0
- package/dist/quality/QualityGovernor.d.ts.map +1 -0
- package/dist/quality/QualityGovernor.js +170 -0
- package/dist/quality/QualityGovernor.js.map +1 -0
- package/dist/quality/QualityTier.d.ts +17 -0
- package/dist/quality/QualityTier.d.ts.map +1 -0
- package/dist/quality/QualityTier.js +23 -0
- package/dist/quality/QualityTier.js.map +1 -0
- package/dist/quality/RenderScaleController.d.ts +35 -0
- package/dist/quality/RenderScaleController.d.ts.map +1 -0
- package/dist/quality/RenderScaleController.js +57 -0
- package/dist/quality/RenderScaleController.js.map +1 -0
- package/dist/quality/RetentionPolicy.d.ts +11 -0
- package/dist/quality/RetentionPolicy.d.ts.map +1 -0
- package/dist/quality/RetentionPolicy.js +12 -0
- package/dist/quality/RetentionPolicy.js.map +1 -0
- package/dist/quality/TierResolver.d.ts +52 -0
- package/dist/quality/TierResolver.d.ts.map +1 -0
- package/dist/quality/TierResolver.js +155 -0
- package/dist/quality/TierResolver.js.map +1 -0
- package/dist/quality/liveTier.d.ts +23 -0
- package/dist/quality/liveTier.d.ts.map +1 -0
- package/dist/quality/liveTier.js +16 -0
- package/dist/quality/liveTier.js.map +1 -0
- package/dist/reference/BloomPass.d.ts +10 -0
- package/dist/reference/BloomPass.d.ts.map +1 -0
- package/dist/reference/BloomPass.js +18 -0
- package/dist/reference/BloomPass.js.map +1 -0
- package/dist/reference/DepthHazePass.d.ts +12 -0
- package/dist/reference/DepthHazePass.d.ts.map +1 -0
- package/dist/reference/DepthHazePass.js +20 -0
- package/dist/reference/DepthHazePass.js.map +1 -0
- package/dist/reference/EffectComposer.d.ts +110 -0
- package/dist/reference/EffectComposer.d.ts.map +1 -0
- package/dist/reference/EffectComposer.js +247 -0
- package/dist/reference/EffectComposer.js.map +1 -0
- package/dist/reference/FilmGrainPass.d.ts +9 -0
- package/dist/reference/FilmGrainPass.d.ts.map +1 -0
- package/dist/reference/FilmGrainPass.js +17 -0
- package/dist/reference/FilmGrainPass.js.map +1 -0
- package/dist/reference/PostProcessPass.d.ts +511 -0
- package/dist/reference/PostProcessPass.d.ts.map +1 -0
- package/dist/reference/PostProcessPass.js +2020 -0
- package/dist/reference/PostProcessPass.js.map +1 -0
- package/dist/reference/SSAOPass.d.ts +6 -0
- package/dist/reference/SSAOPass.d.ts.map +1 -0
- package/dist/reference/SSAOPass.js +18 -0
- package/dist/reference/SSAOPass.js.map +1 -0
- package/dist/reference/VignettePass.d.ts +10 -0
- package/dist/reference/VignettePass.d.ts.map +1 -0
- package/dist/reference/VignettePass.js +17 -0
- package/dist/reference/VignettePass.js.map +1 -0
- package/dist/reference/index.d.ts +15 -0
- package/dist/reference/index.d.ts.map +1 -0
- package/dist/reference/index.js +15 -0
- package/dist/reference/index.js.map +1 -0
- package/dist/renderer/Background.d.ts +49 -0
- package/dist/renderer/Background.d.ts.map +1 -0
- package/dist/renderer/Background.js +259 -0
- package/dist/renderer/Background.js.map +1 -0
- package/dist/renderer/CullingBatching.d.ts +55 -0
- package/dist/renderer/CullingBatching.d.ts.map +1 -0
- package/dist/renderer/CullingBatching.js +362 -0
- package/dist/renderer/CullingBatching.js.map +1 -0
- package/dist/renderer/DeviceLifecycle.d.ts +29 -0
- package/dist/renderer/DeviceLifecycle.d.ts.map +1 -0
- package/dist/renderer/DeviceLifecycle.js +48 -0
- package/dist/renderer/DeviceLifecycle.js.map +1 -0
- package/dist/renderer/FrameGraph.d.ts +96 -0
- package/dist/renderer/FrameGraph.d.ts.map +1 -0
- package/dist/renderer/FrameGraph.js +301 -0
- package/dist/renderer/FrameGraph.js.map +1 -0
- package/dist/renderer/InterleavedTransparentPass.d.ts +31 -0
- package/dist/renderer/InterleavedTransparentPass.d.ts.map +1 -0
- package/dist/renderer/InterleavedTransparentPass.js +65 -0
- package/dist/renderer/InterleavedTransparentPass.js.map +1 -0
- package/dist/renderer/PixelRatio.d.ts +64 -0
- package/dist/renderer/PixelRatio.d.ts.map +1 -0
- package/dist/renderer/PixelRatio.js +81 -0
- package/dist/renderer/PixelRatio.js.map +1 -0
- package/dist/renderer/PostprocessExecution.d.ts +82 -0
- package/dist/renderer/PostprocessExecution.d.ts.map +1 -0
- package/dist/renderer/PostprocessExecution.js +741 -0
- package/dist/renderer/PostprocessExecution.js.map +1 -0
- package/dist/renderer/Prd06ShaderWarmup.d.ts +32 -0
- package/dist/renderer/Prd06ShaderWarmup.d.ts.map +1 -0
- package/dist/renderer/Prd06ShaderWarmup.js +45 -0
- package/dist/renderer/Prd06ShaderWarmup.js.map +1 -0
- package/dist/renderer/RenderShared.d.ts +11 -0
- package/dist/renderer/RenderShared.d.ts.map +1 -0
- package/dist/renderer/RenderShared.js +47 -0
- package/dist/renderer/RenderShared.js.map +1 -0
- package/dist/renderer/RendererFactory.d.ts +3 -0
- package/dist/renderer/RendererFactory.d.ts.map +1 -0
- package/dist/renderer/RendererFactory.js +19 -0
- package/dist/renderer/RendererFactory.js.map +1 -0
- package/dist/renderer/RendererHost.d.ts +25 -0
- package/dist/renderer/RendererHost.d.ts.map +1 -0
- package/dist/renderer/RendererHost.js +4 -0
- package/dist/renderer/RendererHost.js.map +1 -0
- package/dist/renderer/SceneDepthCopyPass.d.ts +50 -0
- package/dist/renderer/SceneDepthCopyPass.d.ts.map +1 -0
- package/dist/renderer/SceneDepthCopyPass.js +124 -0
- package/dist/renderer/SceneDepthCopyPass.js.map +1 -0
- package/dist/renderer/ShadowOrchestration.d.ts +32 -0
- package/dist/renderer/ShadowOrchestration.d.ts.map +1 -0
- package/dist/renderer/ShadowOrchestration.js +491 -0
- package/dist/renderer/ShadowOrchestration.js.map +1 -0
- package/dist/renderer/SkinnedBounds.d.ts +6 -0
- package/dist/renderer/SkinnedBounds.d.ts.map +1 -0
- package/dist/renderer/SkinnedBounds.js +74 -0
- package/dist/renderer/SkinnedBounds.js.map +1 -0
- package/dist/renderer/coreOutputPostRoute.d.ts +40 -0
- package/dist/renderer/coreOutputPostRoute.d.ts.map +1 -0
- package/dist/renderer/coreOutputPostRoute.js +46 -0
- package/dist/renderer/coreOutputPostRoute.js.map +1 -0
- package/dist/renderer/postSkipped.d.ts +12 -0
- package/dist/renderer/postSkipped.d.ts.map +1 -0
- package/dist/renderer/postSkipped.js +54 -0
- package/dist/renderer/postSkipped.js.map +1 -0
- package/dist/renderer/qrSubFlags.d.ts +45 -0
- package/dist/renderer/qrSubFlags.d.ts.map +1 -0
- package/dist/renderer/qrSubFlags.js +130 -0
- package/dist/renderer/qrSubFlags.js.map +1 -0
- package/dist/resources/InstanceBuffer.d.ts +34 -0
- package/dist/resources/InstanceBuffer.d.ts.map +1 -0
- package/dist/resources/InstanceBuffer.js +96 -0
- package/dist/resources/InstanceBuffer.js.map +1 -0
- package/dist/resources/MorphTargetTexture.d.ts +53 -0
- package/dist/resources/MorphTargetTexture.d.ts.map +1 -0
- package/dist/resources/MorphTargetTexture.js +135 -0
- package/dist/resources/MorphTargetTexture.js.map +1 -0
- package/dist/resources/RenderTargetPool.d.ts +47 -0
- package/dist/resources/RenderTargetPool.d.ts.map +1 -0
- package/dist/resources/RenderTargetPool.js +113 -0
- package/dist/resources/RenderTargetPool.js.map +1 -0
- package/dist/resources/ResourceRegistry.d.ts +48 -0
- package/dist/resources/ResourceRegistry.d.ts.map +1 -0
- package/dist/resources/ResourceRegistry.js +95 -0
- package/dist/resources/ResourceRegistry.js.map +1 -0
- package/dist/resources/UniformBlock.d.ts +90 -0
- package/dist/resources/UniformBlock.d.ts.map +1 -0
- package/dist/resources/UniformBlock.js +184 -0
- package/dist/resources/UniformBlock.js.map +1 -0
- package/dist/shaders/camera-fade.glsl.d.ts +26 -0
- package/dist/shaders/camera-fade.glsl.d.ts.map +1 -0
- package/dist/shaders/camera-fade.glsl.js +109 -0
- package/dist/shaders/camera-fade.glsl.js.map +1 -0
- package/dist/shaders/chunks/contact_shadow.glsl.d.ts +12 -0
- package/dist/shaders/chunks/contact_shadow.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/contact_shadow.glsl.js +53 -0
- package/dist/shaders/chunks/contact_shadow.glsl.js.map +1 -0
- package/dist/shaders/chunks/lighting_ibl.glsl.d.ts +29 -0
- package/dist/shaders/chunks/lighting_ibl.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/lighting_ibl.glsl.js +122 -0
- package/dist/shaders/chunks/lighting_ibl.glsl.js.map +1 -0
- package/dist/shaders/chunks/lighting_mirrors.d.ts +18 -0
- package/dist/shaders/chunks/lighting_mirrors.d.ts.map +1 -0
- package/dist/shaders/chunks/lighting_mirrors.js +35 -0
- package/dist/shaders/chunks/lighting_mirrors.js.map +1 -0
- package/dist/shaders/chunks/lighting_punctual.glsl.d.ts +17 -0
- package/dist/shaders/chunks/lighting_punctual.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/lighting_punctual.glsl.js +197 -0
- package/dist/shaders/chunks/lighting_punctual.glsl.js.map +1 -0
- package/dist/shaders/chunks/sh9.glsl.d.ts +9 -0
- package/dist/shaders/chunks/sh9.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/sh9.glsl.js +41 -0
- package/dist/shaders/chunks/sh9.glsl.js.map +1 -0
- package/dist/shaders/chunks/shadow_caster.glsl.d.ts +10 -0
- package/dist/shaders/chunks/shadow_caster.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/shadow_caster.glsl.js +32 -0
- package/dist/shaders/chunks/shadow_caster.glsl.js.map +1 -0
- package/dist/shaders/chunks/shadow_receive.glsl.d.ts +13 -0
- package/dist/shaders/chunks/shadow_receive.glsl.d.ts.map +1 -0
- package/dist/shaders/chunks/shadow_receive.glsl.js +136 -0
- package/dist/shaders/chunks/shadow_receive.glsl.js.map +1 -0
- package/dist/shaders/debug-view.glsl.d.ts +18 -0
- package/dist/shaders/debug-view.glsl.d.ts.map +1 -0
- package/dist/shaders/debug-view.glsl.js +153 -0
- package/dist/shaders/debug-view.glsl.js.map +1 -0
- package/dist/shaders/deform/deform.glsl.d.ts +17 -0
- package/dist/shaders/deform/deform.glsl.d.ts.map +1 -0
- package/dist/shaders/deform/deform.glsl.js +99 -0
- package/dist/shaders/deform/deform.glsl.js.map +1 -0
- package/dist/shaders/deform/deform.wgsl.d.ts +15 -0
- package/dist/shaders/deform/deform.wgsl.d.ts.map +1 -0
- package/dist/shaders/deform/deform.wgsl.js +89 -0
- package/dist/shaders/deform/deform.wgsl.js.map +1 -0
- package/dist/shaders/deform/depthFeature.d.ts +22 -0
- package/dist/shaders/deform/depthFeature.d.ts.map +1 -0
- package/dist/shaders/deform/depthFeature.js +44 -0
- package/dist/shaders/deform/depthFeature.js.map +1 -0
- package/dist/shaders/deform/forwardFeature.d.ts +114 -0
- package/dist/shaders/deform/forwardFeature.d.ts.map +1 -0
- package/dist/shaders/deform/forwardFeature.js +300 -0
- package/dist/shaders/deform/forwardFeature.js.map +1 -0
- package/dist/shaders/deform/morph.glsl.d.ts +14 -0
- package/dist/shaders/deform/morph.glsl.d.ts.map +1 -0
- package/dist/shaders/deform/morph.glsl.js +45 -0
- package/dist/shaders/deform/morph.glsl.js.map +1 -0
- package/dist/shaders/deform/morph.wgsl.d.ts +21 -0
- package/dist/shaders/deform/morph.wgsl.d.ts.map +1 -0
- package/dist/shaders/deform/morph.wgsl.js +73 -0
- package/dist/shaders/deform/morph.wgsl.js.map +1 -0
- package/dist/shaders/deform/skinning.glsl.d.ts +8 -0
- package/dist/shaders/deform/skinning.glsl.d.ts.map +1 -0
- package/dist/shaders/deform/skinning.glsl.js +37 -0
- package/dist/shaders/deform/skinning.glsl.js.map +1 -0
- package/dist/shaders/deform/skinning.wgsl.d.ts +26 -0
- package/dist/shaders/deform/skinning.wgsl.d.ts.map +1 -0
- package/dist/shaders/deform/skinning.wgsl.js +58 -0
- package/dist/shaders/deform/skinning.wgsl.js.map +1 -0
- package/dist/shaders/deform/twins.d.ts +8 -0
- package/dist/shaders/deform/twins.d.ts.map +1 -0
- package/dist/shaders/deform/twins.js +20 -0
- package/dist/shaders/deform/twins.js.map +1 -0
- package/dist/shaders/lod-dither.glsl.d.ts +12 -0
- package/dist/shaders/lod-dither.glsl.d.ts.map +1 -0
- package/dist/shaders/lod-dither.glsl.js +101 -0
- package/dist/shaders/lod-dither.glsl.js.map +1 -0
- package/dist/shaders/physical/alpha_a2c.glsl.d.ts +19 -0
- package/dist/shaders/physical/alpha_a2c.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/alpha_a2c.glsl.js +29 -0
- package/dist/shaders/physical/alpha_a2c.glsl.js.map +1 -0
- package/dist/shaders/physical/anisotropy.glsl.d.ts +23 -0
- package/dist/shaders/physical/anisotropy.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/anisotropy.glsl.js +116 -0
- package/dist/shaders/physical/anisotropy.glsl.js.map +1 -0
- package/dist/shaders/physical/bsdf_lobes_common.glsl.d.ts +25 -0
- package/dist/shaders/physical/bsdf_lobes_common.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/bsdf_lobes_common.glsl.js +95 -0
- package/dist/shaders/physical/bsdf_lobes_common.glsl.js.map +1 -0
- package/dist/shaders/physical/clearcoat.glsl.d.ts +23 -0
- package/dist/shaders/physical/clearcoat.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/clearcoat.glsl.js +70 -0
- package/dist/shaders/physical/clearcoat.glsl.js.map +1 -0
- package/dist/shaders/physical/debug_view.glsl.d.ts +19 -0
- package/dist/shaders/physical/debug_view.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/debug_view.glsl.js +76 -0
- package/dist/shaders/physical/debug_view.glsl.js.map +1 -0
- package/dist/shaders/physical/dispersion.glsl.d.ts +18 -0
- package/dist/shaders/physical/dispersion.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/dispersion.glsl.js +67 -0
- package/dist/shaders/physical/dispersion.glsl.js.map +1 -0
- package/dist/shaders/physical/emissive_strength.glsl.d.ts +18 -0
- package/dist/shaders/physical/emissive_strength.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/emissive_strength.glsl.js +20 -0
- package/dist/shaders/physical/emissive_strength.glsl.js.map +1 -0
- package/dist/shaders/physical/index.d.ts +27 -0
- package/dist/shaders/physical/index.d.ts.map +1 -0
- package/dist/shaders/physical/index.js +69 -0
- package/dist/shaders/physical/index.js.map +1 -0
- package/dist/shaders/physical/iridescence.glsl.d.ts +25 -0
- package/dist/shaders/physical/iridescence.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/iridescence.glsl.js +186 -0
- package/dist/shaders/physical/iridescence.glsl.js.map +1 -0
- package/dist/shaders/physical/lobe_calls.glsl.d.ts +83 -0
- package/dist/shaders/physical/lobe_calls.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/lobe_calls.glsl.js +397 -0
- package/dist/shaders/physical/lobe_calls.glsl.js.map +1 -0
- package/dist/shaders/physical/sheen.glsl.d.ts +24 -0
- package/dist/shaders/physical/sheen.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/sheen.glsl.js +108 -0
- package/dist/shaders/physical/sheen.glsl.js.map +1 -0
- package/dist/shaders/physical/specular_ior.glsl.d.ts +20 -0
- package/dist/shaders/physical/specular_ior.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/specular_ior.glsl.js +64 -0
- package/dist/shaders/physical/specular_ior.glsl.js.map +1 -0
- package/dist/shaders/physical/tangent_frame.glsl.d.ts +27 -0
- package/dist/shaders/physical/tangent_frame.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/tangent_frame.glsl.js +71 -0
- package/dist/shaders/physical/tangent_frame.glsl.js.map +1 -0
- package/dist/shaders/physical/transmission.glsl.d.ts +25 -0
- package/dist/shaders/physical/transmission.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/transmission.glsl.js +204 -0
- package/dist/shaders/physical/transmission.glsl.js.map +1 -0
- package/dist/shaders/physical/transmission_copy.glsl.d.ts +15 -0
- package/dist/shaders/physical/transmission_copy.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/transmission_copy.glsl.js +33 -0
- package/dist/shaders/physical/transmission_copy.glsl.js.map +1 -0
- package/dist/shaders/physical/unlit.glsl.d.ts +17 -0
- package/dist/shaders/physical/unlit.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/unlit.glsl.js +19 -0
- package/dist/shaders/physical/unlit.glsl.js.map +1 -0
- package/dist/shaders/physical/uv_transform.glsl.d.ts +18 -0
- package/dist/shaders/physical/uv_transform.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/uv_transform.glsl.js +30 -0
- package/dist/shaders/physical/uv_transform.glsl.js.map +1 -0
- package/dist/shaders/physical/volume.glsl.d.ts +19 -0
- package/dist/shaders/physical/volume.glsl.d.ts.map +1 -0
- package/dist/shaders/physical/volume.glsl.js +47 -0
- package/dist/shaders/physical/volume.glsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/alpha_a2c.wgsl.d.ts +8 -0
- package/dist/shaders/physical-wgsl/alpha_a2c.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/alpha_a2c.wgsl.js +26 -0
- package/dist/shaders/physical-wgsl/alpha_a2c.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/anisotropy.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/anisotropy.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/anisotropy.wgsl.js +97 -0
- package/dist/shaders/physical-wgsl/anisotropy.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/bsdf_lobes_common.wgsl.d.ts +11 -0
- package/dist/shaders/physical-wgsl/bsdf_lobes_common.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/bsdf_lobes_common.wgsl.js +76 -0
- package/dist/shaders/physical-wgsl/bsdf_lobes_common.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/clearcoat.wgsl.d.ts +9 -0
- package/dist/shaders/physical-wgsl/clearcoat.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/clearcoat.wgsl.js +56 -0
- package/dist/shaders/physical-wgsl/clearcoat.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/debug_view.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/debug_view.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/debug_view.wgsl.js +71 -0
- package/dist/shaders/physical-wgsl/debug_view.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/dispersion.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/dispersion.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/dispersion.wgsl.js +51 -0
- package/dist/shaders/physical-wgsl/dispersion.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/emissive_strength.wgsl.d.ts +9 -0
- package/dist/shaders/physical-wgsl/emissive_strength.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/emissive_strength.wgsl.js +15 -0
- package/dist/shaders/physical-wgsl/emissive_strength.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/index.d.ts +35 -0
- package/dist/shaders/physical-wgsl/index.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/index.js +51 -0
- package/dist/shaders/physical-wgsl/index.js.map +1 -0
- package/dist/shaders/physical-wgsl/iridescence.wgsl.d.ts +9 -0
- package/dist/shaders/physical-wgsl/iridescence.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/iridescence.wgsl.js +162 -0
- package/dist/shaders/physical-wgsl/iridescence.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/sheen.wgsl.d.ts +9 -0
- package/dist/shaders/physical-wgsl/sheen.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/sheen.wgsl.js +85 -0
- package/dist/shaders/physical-wgsl/sheen.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/specular_ior.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/specular_ior.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/specular_ior.wgsl.js +47 -0
- package/dist/shaders/physical-wgsl/specular_ior.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/tangent_frame.wgsl.d.ts +11 -0
- package/dist/shaders/physical-wgsl/tangent_frame.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/tangent_frame.wgsl.js +57 -0
- package/dist/shaders/physical-wgsl/tangent_frame.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/transmission.wgsl.d.ts +14 -0
- package/dist/shaders/physical-wgsl/transmission.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/transmission.wgsl.js +159 -0
- package/dist/shaders/physical-wgsl/transmission.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/unlit.wgsl.d.ts +8 -0
- package/dist/shaders/physical-wgsl/unlit.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/unlit.wgsl.js +13 -0
- package/dist/shaders/physical-wgsl/unlit.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/uv_transform.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/uv_transform.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/uv_transform.wgsl.js +24 -0
- package/dist/shaders/physical-wgsl/uv_transform.wgsl.js.map +1 -0
- package/dist/shaders/physical-wgsl/volume.wgsl.d.ts +10 -0
- package/dist/shaders/physical-wgsl/volume.wgsl.d.ts.map +1 -0
- package/dist/shaders/physical-wgsl/volume.wgsl.js +35 -0
- package/dist/shaders/physical-wgsl/volume.wgsl.js.map +1 -0
- package/dist/shadows/DirectionalCascadeFitter.d.ts +97 -0
- package/dist/shadows/DirectionalCascadeFitter.d.ts.map +1 -0
- package/dist/shadows/DirectionalCascadeFitter.js +372 -0
- package/dist/shadows/DirectionalCascadeFitter.js.map +1 -0
- package/dist/shadows/Prd02DepthShaderLibrary.d.ts +77 -0
- package/dist/shadows/Prd02DepthShaderLibrary.d.ts.map +1 -0
- package/dist/shadows/Prd02DepthShaderLibrary.js +381 -0
- package/dist/shadows/Prd02DepthShaderLibrary.js.map +1 -0
- package/dist/shadows/Prd02ReceiveShadowContributor.d.ts +20 -0
- package/dist/shadows/Prd02ReceiveShadowContributor.d.ts.map +1 -0
- package/dist/shadows/Prd02ReceiveShadowContributor.js +20 -0
- package/dist/shadows/Prd02ReceiveShadowContributor.js.map +1 -0
- package/dist/shadows/Prd02ShadowBridge.d.ts +111 -0
- package/dist/shadows/Prd02ShadowBridge.d.ts.map +1 -0
- package/dist/shadows/Prd02ShadowBridge.js +267 -0
- package/dist/shadows/Prd02ShadowBridge.js.map +1 -0
- package/dist/shadows/Prd02ShadowFilter.d.ts +29 -0
- package/dist/shadows/Prd02ShadowFilter.d.ts.map +1 -0
- package/dist/shadows/Prd02ShadowFilter.js +35 -0
- package/dist/shadows/Prd02ShadowFilter.js.map +1 -0
- package/dist/shadows/Prd02ShadowsContributor.d.ts +44 -0
- package/dist/shadows/Prd02ShadowsContributor.d.ts.map +1 -0
- package/dist/shadows/Prd02ShadowsContributor.js +197 -0
- package/dist/shadows/Prd02ShadowsContributor.js.map +1 -0
- package/dist/shadows/ShadowAtlas.d.ts +59 -0
- package/dist/shadows/ShadowAtlas.d.ts.map +1 -0
- package/dist/shadows/ShadowAtlas.js +137 -0
- package/dist/shadows/ShadowAtlas.js.map +1 -0
- package/dist/shadows/ShadowDebugViews.d.ts +5 -0
- package/dist/shadows/ShadowDebugViews.d.ts.map +1 -1
- package/dist/shadows/ShadowDebugViews.js +15 -10
- package/dist/shadows/ShadowDebugViews.js.map +1 -1
- package/dist/shadows/ShadowFrameBinding.d.ts +18 -0
- package/dist/shadows/ShadowFrameBinding.d.ts.map +1 -0
- package/dist/shadows/ShadowFrameBinding.js +52 -0
- package/dist/shadows/ShadowFrameBinding.js.map +1 -0
- package/dist/shadows/ShadowSystem.d.ts +125 -0
- package/dist/shadows/ShadowSystem.d.ts.map +1 -0
- package/dist/shadows/ShadowSystem.js +293 -0
- package/dist/shadows/ShadowSystem.js.map +1 -0
- package/dist/textures/TextureBudget.d.ts +42 -0
- package/dist/textures/TextureBudget.d.ts.map +1 -0
- package/dist/textures/TextureBudget.js +180 -0
- package/dist/textures/TextureBudget.js.map +1 -0
- package/dist/vfx/BeamPass.d.ts +42 -0
- package/dist/vfx/BeamPass.d.ts.map +1 -0
- package/dist/vfx/BeamPass.js +249 -0
- package/dist/vfx/BeamPass.js.map +1 -0
- package/dist/vfx/BlendFallback.d.ts +19 -0
- package/dist/vfx/BlendFallback.d.ts.map +1 -0
- package/dist/vfx/BlendFallback.js +73 -0
- package/dist/vfx/BlendFallback.js.map +1 -0
- package/dist/vfx/DecalBatch.d.ts +120 -0
- package/dist/vfx/DecalBatch.d.ts.map +1 -0
- package/dist/vfx/DecalBatch.js +234 -0
- package/dist/vfx/DecalBatch.js.map +1 -0
- package/dist/vfx/DecalPass.d.ts +63 -0
- package/dist/vfx/DecalPass.d.ts.map +1 -0
- package/dist/vfx/DecalPass.js +159 -0
- package/dist/vfx/DecalPass.js.map +1 -0
- package/dist/vfx/LowResParticles.d.ts +31 -0
- package/dist/vfx/LowResParticles.d.ts.map +1 -0
- package/dist/vfx/LowResParticles.js +151 -0
- package/dist/vfx/LowResParticles.js.map +1 -0
- package/dist/vfx/MeshParticleBatch.d.ts +49 -0
- package/dist/vfx/MeshParticleBatch.d.ts.map +1 -0
- package/dist/vfx/MeshParticleBatch.js +184 -0
- package/dist/vfx/MeshParticleBatch.js.map +1 -0
- package/dist/vfx/MeshParticlePass.d.ts +28 -0
- package/dist/vfx/MeshParticlePass.d.ts.map +1 -0
- package/dist/vfx/MeshParticlePass.js +150 -0
- package/dist/vfx/MeshParticlePass.js.map +1 -0
- package/dist/vfx/ParticleBatchPass.d.ts +61 -0
- package/dist/vfx/ParticleBatchPass.d.ts.map +1 -0
- package/dist/vfx/ParticleBatchPass.js +320 -0
- package/dist/vfx/ParticleBatchPass.js.map +1 -0
- package/dist/vfx/ParticleGpuSim.d.ts +85 -0
- package/dist/vfx/ParticleGpuSim.d.ts.map +1 -0
- package/dist/vfx/ParticleGpuSim.js +301 -0
- package/dist/vfx/ParticleGpuSim.js.map +1 -0
- package/dist/vfx/ParticleInstanceLayout.d.ts +38 -0
- package/dist/vfx/ParticleInstanceLayout.d.ts.map +1 -0
- package/dist/vfx/ParticleInstanceLayout.js +105 -0
- package/dist/vfx/ParticleInstanceLayout.js.map +1 -0
- package/dist/vfx/ParticleSort.d.ts +21 -0
- package/dist/vfx/ParticleSort.d.ts.map +1 -0
- package/dist/vfx/ParticleSort.js +80 -0
- package/dist/vfx/ParticleSort.js.map +1 -0
- package/dist/vfx/ProceduralVolumeEmitter.d.ts +90 -0
- package/dist/vfx/ProceduralVolumeEmitter.d.ts.map +1 -0
- package/dist/vfx/ProceduralVolumeEmitter.js +155 -0
- package/dist/vfx/ProceduralVolumeEmitter.js.map +1 -0
- package/dist/vfx/RibbonBatch.d.ts +71 -0
- package/dist/vfx/RibbonBatch.d.ts.map +1 -0
- package/dist/vfx/RibbonBatch.js +234 -0
- package/dist/vfx/RibbonBatch.js.map +1 -0
- package/dist/vfx/RibbonPass.d.ts +21 -0
- package/dist/vfx/RibbonPass.d.ts.map +1 -0
- package/dist/vfx/RibbonPass.js +108 -0
- package/dist/vfx/RibbonPass.js.map +1 -0
- package/dist/vfx/SceneDepthAdapter.d.ts +28 -0
- package/dist/vfx/SceneDepthAdapter.d.ts.map +1 -0
- package/dist/vfx/SceneDepthAdapter.js +70 -0
- package/dist/vfx/SceneDepthAdapter.js.map +1 -0
- package/dist/vfx/VfxAtlas.d.ts +68 -0
- package/dist/vfx/VfxAtlas.d.ts.map +1 -0
- package/dist/vfx/VfxAtlas.js +106 -0
- package/dist/vfx/VfxAtlas.js.map +1 -0
- package/dist/vfx/contributors.d.ts +73 -0
- package/dist/vfx/contributors.d.ts.map +1 -0
- package/dist/vfx/contributors.js +615 -0
- package/dist/vfx/contributors.js.map +1 -0
- package/dist/vfx/decalLighting.d.ts +8 -0
- package/dist/vfx/decalLighting.d.ts.map +1 -0
- package/dist/vfx/decalLighting.js +53 -0
- package/dist/vfx/decalLighting.js.map +1 -0
- package/dist/vfx/depthSampler.d.ts +3 -0
- package/dist/vfx/depthSampler.d.ts.map +1 -0
- package/dist/vfx/depthSampler.js +10 -0
- package/dist/vfx/depthSampler.js.map +1 -0
- package/dist/vfx/prd07FeaturePars.d.ts +12 -0
- package/dist/vfx/prd07FeaturePars.d.ts.map +1 -0
- package/dist/vfx/prd07FeaturePars.js +54 -0
- package/dist/vfx/prd07FeaturePars.js.map +1 -0
- package/dist/vfx/shaders/beam.glsl.d.ts +11 -0
- package/dist/vfx/shaders/beam.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/beam.glsl.js +89 -0
- package/dist/vfx/shaders/beam.glsl.js.map +1 -0
- package/dist/vfx/shaders/decal.glsl.d.ts +14 -0
- package/dist/vfx/shaders/decal.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/decal.glsl.js +157 -0
- package/dist/vfx/shaders/decal.glsl.js.map +1 -0
- package/dist/vfx/shaders/gpu-sim.glsl.d.ts +5 -0
- package/dist/vfx/shaders/gpu-sim.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/gpu-sim.glsl.js +177 -0
- package/dist/vfx/shaders/gpu-sim.glsl.js.map +1 -0
- package/dist/vfx/shaders/lowresComposite.glsl.d.ts +9 -0
- package/dist/vfx/shaders/lowresComposite.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/lowresComposite.glsl.js +64 -0
- package/dist/vfx/shaders/lowresComposite.glsl.js.map +1 -0
- package/dist/vfx/shaders/mesh-particle.glsl.d.ts +4 -0
- package/dist/vfx/shaders/mesh-particle.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/mesh-particle.glsl.js +55 -0
- package/dist/vfx/shaders/mesh-particle.glsl.js.map +1 -0
- package/dist/vfx/shaders/particle.glsl.d.ts +24 -0
- package/dist/vfx/shaders/particle.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/particle.glsl.js +215 -0
- package/dist/vfx/shaders/particle.glsl.js.map +1 -0
- package/dist/vfx/shaders/ribbon.glsl.d.ts +9 -0
- package/dist/vfx/shaders/ribbon.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/ribbon.glsl.js +60 -0
- package/dist/vfx/shaders/ribbon.glsl.js.map +1 -0
- package/dist/vfx/shaders/volume.glsl.d.ts +5 -0
- package/dist/vfx/shaders/volume.glsl.d.ts.map +1 -0
- package/dist/vfx/shaders/volume.glsl.js +52 -0
- package/dist/vfx/shaders/volume.glsl.js.map +1 -0
- package/dist/webgl2/ContextLifecycle.d.ts +43 -0
- package/dist/webgl2/ContextLifecycle.d.ts.map +1 -0
- package/dist/webgl2/ContextLifecycle.js +189 -0
- package/dist/webgl2/ContextLifecycle.js.map +1 -0
- package/dist/webgl2/Counters.d.ts +58 -0
- package/dist/webgl2/Counters.d.ts.map +1 -0
- package/dist/webgl2/Counters.js +207 -0
- package/dist/webgl2/Counters.js.map +1 -0
- package/dist/webgl2/DeviceHost.d.ts +41 -0
- package/dist/webgl2/DeviceHost.d.ts.map +1 -0
- package/dist/webgl2/DeviceHost.js +3 -0
- package/dist/webgl2/DeviceHost.js.map +1 -0
- package/dist/webgl2/LegacyPost.d.ts +279 -0
- package/dist/webgl2/LegacyPost.d.ts.map +1 -0
- package/dist/webgl2/LegacyPost.js +2477 -0
- package/dist/webgl2/LegacyPost.js.map +1 -0
- package/dist/webgl2/MultiDraw.d.ts +96 -0
- package/dist/webgl2/MultiDraw.d.ts.map +1 -0
- package/dist/webgl2/MultiDraw.js +716 -0
- package/dist/webgl2/MultiDraw.js.map +1 -0
- package/dist/webgl2/Probe.d.ts +27 -0
- package/dist/webgl2/Probe.d.ts.map +1 -0
- package/dist/webgl2/Probe.js +303 -0
- package/dist/webgl2/Probe.js.map +1 -0
- package/dist/webgl2/Samplers.d.ts +20 -0
- package/dist/webgl2/Samplers.d.ts.map +1 -0
- package/dist/webgl2/Samplers.js +179 -0
- package/dist/webgl2/Samplers.js.map +1 -0
- package/dist/webgl2/TextureFormats.d.ts +48 -0
- package/dist/webgl2/TextureFormats.d.ts.map +1 -0
- package/dist/webgl2/TextureFormats.js +185 -0
- package/dist/webgl2/TextureFormats.js.map +1 -0
- package/dist/webgl2/TextureUpload.d.ts +38 -0
- package/dist/webgl2/TextureUpload.d.ts.map +1 -0
- package/dist/webgl2/TextureUpload.js +346 -0
- package/dist/webgl2/TextureUpload.js.map +1 -0
- package/dist/webgpu/WebGPUBuffer.d.ts +1 -0
- package/dist/webgpu/WebGPUBuffer.d.ts.map +1 -1
- package/dist/webgpu/WebGPUCompute.d.ts +1 -0
- package/dist/webgpu/WebGPUCompute.d.ts.map +1 -1
- package/dist/webgpu/WebGPUCompute.js +1 -0
- package/dist/webgpu/WebGPUCompute.js.map +1 -1
- package/dist/webgpu/WebGPUPipelineCache.d.ts +4 -0
- package/dist/webgpu/WebGPUPipelineCache.d.ts.map +1 -1
- package/dist/webgpu/WebGPUPipelineCache.js +4 -0
- package/dist/webgpu/WebGPUPipelineCache.js.map +1 -1
- package/dist/webgpu/WebGPUPostShaders.d.ts.map +1 -1
- package/dist/webgpu/WebGPUPostShaders.js +33 -2
- package/dist/webgpu/WebGPUPostShaders.js.map +1 -1
- package/dist/webgpu/WebGPUTexture.d.ts +1 -0
- package/dist/webgpu/WebGPUTexture.d.ts.map +1 -1
- package/dist/webgpu/WebGPUTexture.js.map +1 -1
- package/dist/world/chunks.d.ts +15 -0
- package/dist/world/chunks.d.ts.map +1 -0
- package/dist/world/chunks.js +56 -0
- package/dist/world/chunks.js.map +1 -0
- package/dist/world/index.d.ts +38 -0
- package/dist/world/index.d.ts.map +1 -0
- package/dist/world/index.js +39 -0
- package/dist/world/index.js.map +1 -0
- package/dist/world/shared/shaders/worldLightFallback.d.ts +12 -0
- package/dist/world/shared/shaders/worldLightFallback.d.ts.map +1 -0
- package/dist/world/shared/shaders/worldLightFallback.js +82 -0
- package/dist/world/shared/shaders/worldLightFallback.js.map +1 -0
- package/dist/world/space/PlanetMaterial.d.ts +24 -0
- package/dist/world/space/PlanetMaterial.d.ts.map +1 -0
- package/dist/world/space/PlanetMaterial.js +82 -0
- package/dist/world/space/PlanetMaterial.js.map +1 -0
- package/dist/world/space/SpaceSkyBake.d.ts +46 -0
- package/dist/world/space/SpaceSkyBake.d.ts.map +1 -0
- package/dist/world/space/SpaceSkyBake.js +145 -0
- package/dist/world/space/SpaceSkyBake.js.map +1 -0
- package/dist/world/space/shaders/planet.d.ts +8 -0
- package/dist/world/space/shaders/planet.d.ts.map +1 -0
- package/dist/world/space/shaders/planet.js +55 -0
- package/dist/world/space/shaders/planet.js.map +1 -0
- package/dist/world/space/shaders/spaceBake.d.ts +9 -0
- package/dist/world/space/shaders/spaceBake.d.ts.map +1 -0
- package/dist/world/space/shaders/spaceBake.js +102 -0
- package/dist/world/space/shaders/spaceBake.js.map +1 -0
- package/dist/world/terrain/SplatBake.d.ts +76 -0
- package/dist/world/terrain/SplatBake.d.ts.map +1 -0
- package/dist/world/terrain/SplatBake.js +308 -0
- package/dist/world/terrain/SplatBake.js.map +1 -0
- package/dist/world/terrain/TerrainCdlod.d.ts +67 -0
- package/dist/world/terrain/TerrainCdlod.d.ts.map +1 -0
- package/dist/world/terrain/TerrainCdlod.js +115 -0
- package/dist/world/terrain/TerrainCdlod.js.map +1 -0
- package/dist/world/terrain/TerrainHeightTexture.d.ts +44 -0
- package/dist/world/terrain/TerrainHeightTexture.d.ts.map +1 -0
- package/dist/world/terrain/TerrainHeightTexture.js +173 -0
- package/dist/world/terrain/TerrainHeightTexture.js.map +1 -0
- package/dist/world/terrain/TerrainPatchGeometry.d.ts +18 -0
- package/dist/world/terrain/TerrainPatchGeometry.d.ts.map +1 -0
- package/dist/world/terrain/TerrainPatchGeometry.js +40 -0
- package/dist/world/terrain/TerrainPatchGeometry.js.map +1 -0
- package/dist/world/terrain/shaders/terrain.vert.glsl.d.ts +19 -0
- package/dist/world/terrain/shaders/terrain.vert.glsl.d.ts.map +1 -0
- package/dist/world/terrain/shaders/terrain.vert.glsl.js +162 -0
- package/dist/world/terrain/shaders/terrain.vert.glsl.js.map +1 -0
- package/dist/world/terrain/shaders/terrainCdlod.d.ts +23 -0
- package/dist/world/terrain/shaders/terrainCdlod.d.ts.map +1 -0
- package/dist/world/terrain/shaders/terrainCdlod.js +110 -0
- package/dist/world/terrain/shaders/terrainCdlod.js.map +1 -0
- package/dist/world/terrain/shaders/terrainSplat.d.ts +26 -0
- package/dist/world/terrain/shaders/terrainSplat.d.ts.map +1 -0
- package/dist/world/terrain/shaders/terrainSplat.js +181 -0
- package/dist/world/terrain/shaders/terrainSplat.js.map +1 -0
- package/dist/world/vegetation/FoliageMaterial.d.ts +14 -0
- package/dist/world/vegetation/FoliageMaterial.d.ts.map +1 -0
- package/dist/world/vegetation/FoliageMaterial.js +107 -0
- package/dist/world/vegetation/FoliageMaterial.js.map +1 -0
- package/dist/world/vegetation/GrassField.d.ts +43 -0
- package/dist/world/vegetation/GrassField.d.ts.map +1 -0
- package/dist/world/vegetation/GrassField.js +68 -0
- package/dist/world/vegetation/GrassField.js.map +1 -0
- package/dist/world/vegetation/ImpostorMaterial.d.ts +20 -0
- package/dist/world/vegetation/ImpostorMaterial.d.ts.map +1 -0
- package/dist/world/vegetation/ImpostorMaterial.js +80 -0
- package/dist/world/vegetation/ImpostorMaterial.js.map +1 -0
- package/dist/world/vegetation/InstanceChunkGrid.d.ts +67 -0
- package/dist/world/vegetation/InstanceChunkGrid.d.ts.map +1 -0
- package/dist/world/vegetation/InstanceChunkGrid.js +150 -0
- package/dist/world/vegetation/InstanceChunkGrid.js.map +1 -0
- package/dist/world/vegetation/WindCpu.d.ts +19 -0
- package/dist/world/vegetation/WindCpu.d.ts.map +1 -0
- package/dist/world/vegetation/WindCpu.js +43 -0
- package/dist/world/vegetation/WindCpu.js.map +1 -0
- package/dist/world/vegetation/WindField.d.ts +42 -0
- package/dist/world/vegetation/WindField.d.ts.map +1 -0
- package/dist/world/vegetation/WindField.js +154 -0
- package/dist/world/vegetation/WindField.js.map +1 -0
- package/dist/world/vegetation/shaders/foliage.d.ts +8 -0
- package/dist/world/vegetation/shaders/foliage.d.ts.map +1 -0
- package/dist/world/vegetation/shaders/foliage.js +104 -0
- package/dist/world/vegetation/shaders/foliage.js.map +1 -0
- package/dist/world/vegetation/shaders/grass.d.ts +10 -0
- package/dist/world/vegetation/shaders/grass.d.ts.map +1 -0
- package/dist/world/vegetation/shaders/grass.js +79 -0
- package/dist/world/vegetation/shaders/grass.js.map +1 -0
- package/dist/world/vegetation/shaders/impostor.d.ts +9 -0
- package/dist/world/vegetation/shaders/impostor.d.ts.map +1 -0
- package/dist/world/vegetation/shaders/impostor.js +97 -0
- package/dist/world/vegetation/shaders/impostor.js.map +1 -0
- package/dist/world/vegetation/shaders/wind.d.ts +9 -0
- package/dist/world/vegetation/shaders/wind.d.ts.map +1 -0
- package/dist/world/vegetation/shaders/wind.js +103 -0
- package/dist/world/vegetation/shaders/wind.js.map +1 -0
- package/dist/world/water/GerstnerWaves.d.ts +65 -0
- package/dist/world/water/GerstnerWaves.d.ts.map +1 -0
- package/dist/world/water/GerstnerWaves.js +182 -0
- package/dist/world/water/GerstnerWaves.js.map +1 -0
- package/dist/world/water/ReflectionViewPass.d.ts +46 -0
- package/dist/world/water/ReflectionViewPass.d.ts.map +1 -0
- package/dist/world/water/ReflectionViewPass.js +85 -0
- package/dist/world/water/ReflectionViewPass.js.map +1 -0
- package/dist/world/water/SceneCopyFallback.d.ts +21 -0
- package/dist/world/water/SceneCopyFallback.d.ts.map +1 -0
- package/dist/world/water/SceneCopyFallback.js +150 -0
- package/dist/world/water/SceneCopyFallback.js.map +1 -0
- package/dist/world/water/UnderwaterState.d.ts +25 -0
- package/dist/world/water/UnderwaterState.d.ts.map +1 -0
- package/dist/world/water/UnderwaterState.js +134 -0
- package/dist/world/water/UnderwaterState.js.map +1 -0
- package/dist/world/water/WaterMaterial.d.ts +23 -0
- package/dist/world/water/WaterMaterial.d.ts.map +1 -0
- package/dist/world/water/WaterMaterial.js +129 -0
- package/dist/world/water/WaterMaterial.js.map +1 -0
- package/dist/world/water/shaders/caustics.d.ts +13 -0
- package/dist/world/water/shaders/caustics.d.ts.map +1 -0
- package/dist/world/water/shaders/caustics.js +103 -0
- package/dist/world/water/shaders/caustics.js.map +1 -0
- package/dist/world/water/shaders/gerstner.d.ts +9 -0
- package/dist/world/water/shaders/gerstner.d.ts.map +1 -0
- package/dist/world/water/shaders/gerstner.js +100 -0
- package/dist/world/water/shaders/gerstner.js.map +1 -0
- package/dist/world/water/shaders/water.d.ts +12 -0
- package/dist/world/water/shaders/water.d.ts.map +1 -0
- package/dist/world/water/shaders/water.js +112 -0
- package/dist/world/water/shaders/water.js.map +1 -0
- package/package.json +32 -11
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.4 — S2 GTAO denoise + joint-bilateral upsample/apply (WebGL2).
|
|
3
|
+
*
|
|
4
|
+
* `GTAO_DENOISE_GLSL` runs twice (H then V, `u_dir`): a 5-tap bilateral over
|
|
5
|
+
* the half-res R8 AO, `w_i = gauss_i · exp(−|Δz| / (0.05·z))` on the paired
|
|
6
|
+
* linear-depth texture.
|
|
7
|
+
*
|
|
8
|
+
* `GTAO_APPLY_GLSL` is the fused joint-bilateral upsample + apply: it reads
|
|
9
|
+
* the denoised half-res AO (2×2 taps depth-weighted against the full-res
|
|
10
|
+
* linear depth) and multiplies the full-res HDR per §6.3:
|
|
11
|
+
* `hdr.rgb *= mix(1.0, aoMB, w)`
|
|
12
|
+
* `aoMB = max(ao, ((ao·a + b)·ao + c)·ao)` Jimenez 2016 multi-bounce,
|
|
13
|
+
* a = 2.0404ρ−0.3324, b = −4.7951ρ+0.6417, c = 2.7552ρ+0.6903, ρ = 0.5
|
|
14
|
+
* `w = (1 − sky) · clamp(hdr.a − 2, 0, 1)` on pixels tagged by the
|
|
15
|
+
* `prd03.indirectFraction` forward feature (`hdr.a = 2 + f_ind`), else
|
|
16
|
+
* `w = (1 − sky) · u_aoFallbackStrength · step(luma(hdr), 4.0)`
|
|
17
|
+
* (legacy draws; conservative strength, see v2Stages),
|
|
18
|
+
* with `sky = linZ ≥ far·0.999`. Alpha is restored to `min(a, 1)`.
|
|
19
|
+
*/
|
|
20
|
+
const HEADER = `#version 300 es
|
|
21
|
+
precision highp float;
|
|
22
|
+
`;
|
|
23
|
+
const BILATERAL_WEIGHTS = /* glsl */ `
|
|
24
|
+
// 5-tap gaussian (sigma 1.0) × exponential depth term exp(-|dz|/(0.05*z)).
|
|
25
|
+
float aoWeight(float dz, float z, float g) {
|
|
26
|
+
return g * exp(-abs(dz) / max(0.05 * z, 1e-4));
|
|
27
|
+
}
|
|
28
|
+
const float GAUSS_5[5] = float[5](0.06136, 0.24477, 0.38774, 0.24477, 0.06136);
|
|
29
|
+
`;
|
|
30
|
+
export const GTAO_DENOISE_GLSL = /* glsl */ `${HEADER}
|
|
31
|
+
uniform sampler2D u_ao; // half-res R8
|
|
32
|
+
uniform highp sampler2D u_depthHalf; // half-res linear depth (.r)
|
|
33
|
+
uniform vec2 u_dir; // (texel.x, 0) then (0, texel.y)
|
|
34
|
+
out vec4 o_color;
|
|
35
|
+
|
|
36
|
+
${BILATERAL_WEIGHTS}
|
|
37
|
+
|
|
38
|
+
void main() {
|
|
39
|
+
ivec2 p = ivec2(gl_FragCoord.xy);
|
|
40
|
+
vec2 texel = vec2(textureSize(u_ao, 0));
|
|
41
|
+
float centerAo = texelFetch(u_ao, p, 0).r;
|
|
42
|
+
float centerZ = texelFetch(u_depthHalf, p, 0).r;
|
|
43
|
+
float total = GAUSS_5[2];
|
|
44
|
+
float sum = centerAo * GAUSS_5[2];
|
|
45
|
+
for (int i = -2; i <= 2; ++i) {
|
|
46
|
+
if (i == 0) continue;
|
|
47
|
+
ivec2 s = p + ivec2(u_dir * texel * float(i));
|
|
48
|
+
s = clamp(s, ivec2(0), ivec2(texel) - 1);
|
|
49
|
+
float z = texelFetch(u_depthHalf, s, 0).r;
|
|
50
|
+
float w = aoWeight(z - centerZ, centerZ, GAUSS_5[i + 2]);
|
|
51
|
+
sum += texelFetch(u_ao, s, 0).r * w;
|
|
52
|
+
total += w;
|
|
53
|
+
}
|
|
54
|
+
o_color = vec4(sum / total, 0.0, 0.0, 1.0);
|
|
55
|
+
}
|
|
56
|
+
`;
|
|
57
|
+
export const GTAO_APPLY_GLSL = /* glsl */ `${HEADER}
|
|
58
|
+
uniform sampler2D u_hdr; // full-res HDR (linear)
|
|
59
|
+
uniform sampler2D u_ao; // denoised half-res R8
|
|
60
|
+
uniform highp sampler2D u_depthFull; // full-res linear depth
|
|
61
|
+
uniform highp sampler2D u_depthHalf;
|
|
62
|
+
uniform float u_far;
|
|
63
|
+
uniform float u_aoFallbackStrength;
|
|
64
|
+
uniform bool u_aoMultiBounce;
|
|
65
|
+
out vec4 o_color;
|
|
66
|
+
${BILATERAL_WEIGHTS}
|
|
67
|
+
// Jimenez 2016 multi-bounce polynomial, albedoProxy ρ = 0.5.
|
|
68
|
+
float aoMultiBounce(float ao) {
|
|
69
|
+
float a = 2.0404 * 0.5 - 0.3324;
|
|
70
|
+
float b = -4.7951 * 0.5 + 0.6417;
|
|
71
|
+
float c = 2.7552 * 0.5 + 0.6903;
|
|
72
|
+
return max(ao, ((ao * a + b) * ao + c) * ao);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Joint-bilateral upsample: the four half-res taps around the bilinear
|
|
76
|
+
// coordinate, weighted by depth similarity to the full-res texel.
|
|
77
|
+
float upsampleAo(vec2 uvHalf, float fullZ, vec2 halfSize) {
|
|
78
|
+
vec2 p = uvHalf * halfSize - 0.5;
|
|
79
|
+
ivec2 p0 = ivec2(floor(p));
|
|
80
|
+
vec2 f = p - vec2(p0);
|
|
81
|
+
float sum = 0.0;
|
|
82
|
+
float total = 0.0;
|
|
83
|
+
for (int y = 0; y < 2; ++y) {
|
|
84
|
+
for (int x = 0; x < 2; ++x) {
|
|
85
|
+
ivec2 s = clamp(p0 + ivec2(x, y), ivec2(0), ivec2(halfSize) - 1);
|
|
86
|
+
float z = texelFetch(u_depthHalf, s, 0).r;
|
|
87
|
+
float w = aoWeight(z - fullZ, fullZ,
|
|
88
|
+
(x == 0 ? 1.0 - f.x : f.x) * (y == 0 ? 1.0 - f.y : f.y));
|
|
89
|
+
sum += texelFetch(u_ao, s, 0).r * w;
|
|
90
|
+
total += w;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return total > 0.0 ? sum / total : 1.0;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
void main() {
|
|
97
|
+
ivec2 p = ivec2(gl_FragCoord.xy);
|
|
98
|
+
vec4 hdr = texelFetch(u_hdr, p, 0);
|
|
99
|
+
float fullZ = texelFetch(u_depthFull, p, 0).r;
|
|
100
|
+
vec2 halfSize = vec2(textureSize(u_ao, 0));
|
|
101
|
+
vec2 uvHalf = gl_FragCoord.xy / vec2(textureSize(u_hdr, 0));
|
|
102
|
+
float ao = upsampleAo(uvHalf, fullZ, halfSize);
|
|
103
|
+
float aoMB = u_aoMultiBounce ? aoMultiBounce(ao) : ao;
|
|
104
|
+
|
|
105
|
+
float sky = step(u_far * 0.999, fullZ);
|
|
106
|
+
float w;
|
|
107
|
+
if (hdr.a >= 1.5) {
|
|
108
|
+
// Tagged generated-program pixel: alpha = 2 + f_ind (prd03.indirectFraction).
|
|
109
|
+
w = clamp(hdr.a - 2.0, 0.0, 1.0);
|
|
110
|
+
} else {
|
|
111
|
+
// Legacy / custom-shader pixel: no f_ind, conservative fallback.
|
|
112
|
+
float luma = dot(hdr.rgb, vec3(0.2126, 0.7152, 0.0722));
|
|
113
|
+
w = u_aoFallbackStrength * step(luma, 4.0);
|
|
114
|
+
}
|
|
115
|
+
w *= 1.0 - sky;
|
|
116
|
+
hdr.rgb *= mix(1.0, aoMB, w);
|
|
117
|
+
hdr.a = min(hdr.a, 1.0);
|
|
118
|
+
o_color = hdr;
|
|
119
|
+
}
|
|
120
|
+
`;
|
|
121
|
+
//# sourceMappingURL=gtaoDenoise.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gtaoDenoise.glsl.js","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/gtaoDenoise.glsl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,GAAG;;CAEd,CAAC;AAEF,MAAM,iBAAiB,GAAG,UAAU,CAAC;;;;;;CAMpC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,MAAM;;;;;;EAMnD,iBAAiB;;;;;;;;;;;;;;;;;;;;CAoBlB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,MAAM;;;;;;;;;EASjD,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDlB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.4 Phase 7 — S2 GTAO denoise + joint-bilateral upsample/apply
|
|
3
|
+
* WGSL twins. `GTAO_DENOISE_WGSL` runs twice (H then V). `GTAO_APPLY_WGSL`
|
|
4
|
+
* is the fused joint-bilateral upsample + §6.3 multiply
|
|
5
|
+
* (`hdr *= mix(1, aoMB, w)`; w = `clamp(hdr.a − 2, 0, 1)` on pixels tagged
|
|
6
|
+
* by `prd03.indirectFraction` (alpha = 2 + f_ind), else the conservative
|
|
7
|
+
* fallback `strength · step(luma, 4)`; both × (1 − sky); alpha → min(a, 1)).
|
|
8
|
+
*/
|
|
9
|
+
export declare const GTAO_DENOISE_WGSL = "struct GtaoDenoiseParams {\n dir: vec2<f32>, // (texel.x, 0) then (0, texel.y)\n _pad: vec2<f32>,\n};\n\n@group(0) @binding(0) var<uniform> u_params: GtaoDenoiseParams;\n@group(0) @binding(1) var u_ao_tex: texture_2d<f32>; // half-res R8\n@group(0) @binding(2) var u_depth_half_tex: texture_2d<f32>; // half-res linear depth (.r)\n\n\n// 5-tap gaussian (sigma 1.0) \u00D7 exponential depth term exp(-|dz|/(0.05*z)).\nfn ao_weight(dz: f32, z: f32, g: f32) -> f32 {\n return g * exp(-abs(dz) / max(0.05 * z, 1e-4));\n}\nconst GAUSS_5 = array<f32, 5>(0.06136, 0.24477, 0.38774, 0.24477, 0.06136);\n\n\n@fragment\nfn fs_gtao_denoise(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {\n let p = vec2<i32>(frag_coord.xy);\n let texel = vec2<f32>(textureDimensions(u_ao_tex));\n let center_ao = textureLoad(u_ao_tex, p, 0).r;\n let center_z = textureLoad(u_depth_half_tex, p, 0).r;\n var total = GAUSS_5[2];\n var sum = center_ao * GAUSS_5[2];\n for (var i = -2; i <= 2; i = i + 1) {\n if (i == 0) { continue; }\n var s = p + vec2<i32>(u_params.dir * texel * f32(i));\n s = clamp(s, vec2<i32>(0), vec2<i32>(texel) - vec2<i32>(1));\n let z = textureLoad(u_depth_half_tex, s, 0).r;\n let w = ao_weight(z - center_z, center_z, GAUSS_5[i + 2]);\n sum = sum + textureLoad(u_ao_tex, s, 0).r * w;\n total = total + w;\n }\n return vec4<f32>(sum / total, 0.0, 0.0, 1.0);\n}\n";
|
|
10
|
+
export declare const GTAO_APPLY_WGSL = "struct GtaoApplyParams {\n far: f32,\n ao_fallback_strength: f32,\n ao_multi_bounce: i32,\n ao_indirect_fraction: i32, // AURA_AO_INDIRECT_FRACTION equivalent\n};\n\n@group(0) @binding(0) var<uniform> u_params: GtaoApplyParams;\n@group(0) @binding(1) var u_hdr_tex: texture_2d<f32>; // full-res HDR (linear)\n@group(0) @binding(2) var u_ao_tex: texture_2d<f32>; // denoised half-res R8\n@group(0) @binding(3) var u_depth_full_tex: texture_2d<f32>; // full-res linear depth\n@group(0) @binding(4) var u_depth_half_tex: texture_2d<f32>;\n\n\n// 5-tap gaussian (sigma 1.0) \u00D7 exponential depth term exp(-|dz|/(0.05*z)).\nfn ao_weight(dz: f32, z: f32, g: f32) -> f32 {\n return g * exp(-abs(dz) / max(0.05 * z, 1e-4));\n}\nconst GAUSS_5 = array<f32, 5>(0.06136, 0.24477, 0.38774, 0.24477, 0.06136);\n\n\n// Jimenez 2016 multi-bounce polynomial, albedoProxy \u03C1 = 0.5.\nfn ao_multi_bounce(ao: f32) -> f32 {\n let a = 2.0404 * 0.5 - 0.3324;\n let b = -4.7951 * 0.5 + 0.6417;\n let c = 2.7552 * 0.5 + 0.6903;\n return max(ao, ((ao * a + b) * ao + c) * ao);\n}\n\n// Joint-bilateral upsample: the four half-res taps around the bilinear\n// coordinate, weighted by depth similarity to the full-res texel.\nfn upsample_ao(uv_half: vec2<f32>, full_z: f32, half_size: vec2<f32>) -> f32 {\n let p = uv_half * half_size - vec2<f32>(0.5);\n let p0 = vec2<i32>(floor(p));\n let f = p - vec2<f32>(p0);\n var sum = 0.0;\n var total = 0.0;\n for (var y = 0; y < 2; y = y + 1) {\n for (var x = 0; x < 2; x = x + 1) {\n let s = clamp(p0 + vec2<i32>(x, y), vec2<i32>(0), vec2<i32>(half_size) - vec2<i32>(1));\n let z = textureLoad(u_depth_half_tex, s, 0).r;\n let w = ao_weight(z - full_z, full_z,\n select(f.x, 1.0 - f.x, x == 0) * select(f.y, 1.0 - f.y, y == 0));\n sum = sum + textureLoad(u_ao_tex, s, 0).r * w;\n total = total + w;\n }\n }\n return select(1.0, sum / total, total > 0.0);\n}\n\n@fragment\nfn fs_gtao_apply(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {\n let p = vec2<i32>(frag_coord.xy);\n var hdr = textureLoad(u_hdr_tex, p, 0);\n let full_z = textureLoad(u_depth_full_tex, p, 0).r;\n let half_size = vec2<f32>(textureDimensions(u_ao_tex));\n let uv_half = frag_coord.xy / vec2<f32>(textureDimensions(u_hdr_tex));\n let ao = upsample_ao(uv_half, full_z, half_size);\n let ao_mb = select(ao, ao_multi_bounce(ao), u_params.ao_multi_bounce != 0);\n\n let sky = step(u_params.far * 0.999, full_z);\n var w: f32;\n if (hdr.a >= 1.5) {\n // Tagged generated-program pixel: alpha = 2 + f_ind.\n w = clamp(hdr.a - 2.0, 0.0, 1.0);\n } else if (u_params.ao_indirect_fraction != 0) {\n w = clamp(hdr.a, 0.0, 1.0);\n } else {\n let luma = dot(hdr.rgb, vec3<f32>(0.2126, 0.7152, 0.0722));\n w = u_params.ao_fallback_strength * step(luma, 4.0);\n }\n w = w * (1.0 - sky);\n hdr = vec4<f32>(hdr.rgb * mix(1.0, ao_mb, w), min(hdr.a, 1.0));\n return hdr;\n}\n";
|
|
11
|
+
//# sourceMappingURL=gtaoDenoise.wgsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gtaoDenoise.wgsl.d.ts","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/gtaoDenoise.wgsl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,eAAO,MAAM,iBAAiB,w5CA8B7B,CAAC;AAEF,eAAO,MAAM,eAAe,m6FAqE3B,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.4 Phase 7 — S2 GTAO denoise + joint-bilateral upsample/apply
|
|
3
|
+
* WGSL twins. `GTAO_DENOISE_WGSL` runs twice (H then V). `GTAO_APPLY_WGSL`
|
|
4
|
+
* is the fused joint-bilateral upsample + §6.3 multiply
|
|
5
|
+
* (`hdr *= mix(1, aoMB, w)`; w = `clamp(hdr.a − 2, 0, 1)` on pixels tagged
|
|
6
|
+
* by `prd03.indirectFraction` (alpha = 2 + f_ind), else the conservative
|
|
7
|
+
* fallback `strength · step(luma, 4)`; both × (1 − sky); alpha → min(a, 1)).
|
|
8
|
+
*/
|
|
9
|
+
const BILATERAL = /* wgsl */ `
|
|
10
|
+
// 5-tap gaussian (sigma 1.0) × exponential depth term exp(-|dz|/(0.05*z)).
|
|
11
|
+
fn ao_weight(dz: f32, z: f32, g: f32) -> f32 {
|
|
12
|
+
return g * exp(-abs(dz) / max(0.05 * z, 1e-4));
|
|
13
|
+
}
|
|
14
|
+
const GAUSS_5 = array<f32, 5>(0.06136, 0.24477, 0.38774, 0.24477, 0.06136);
|
|
15
|
+
`;
|
|
16
|
+
export const GTAO_DENOISE_WGSL = /* wgsl */ `struct GtaoDenoiseParams {
|
|
17
|
+
dir: vec2<f32>, // (texel.x, 0) then (0, texel.y)
|
|
18
|
+
_pad: vec2<f32>,
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
@group(0) @binding(0) var<uniform> u_params: GtaoDenoiseParams;
|
|
22
|
+
@group(0) @binding(1) var u_ao_tex: texture_2d<f32>; // half-res R8
|
|
23
|
+
@group(0) @binding(2) var u_depth_half_tex: texture_2d<f32>; // half-res linear depth (.r)
|
|
24
|
+
|
|
25
|
+
${BILATERAL}
|
|
26
|
+
|
|
27
|
+
@fragment
|
|
28
|
+
fn fs_gtao_denoise(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {
|
|
29
|
+
let p = vec2<i32>(frag_coord.xy);
|
|
30
|
+
let texel = vec2<f32>(textureDimensions(u_ao_tex));
|
|
31
|
+
let center_ao = textureLoad(u_ao_tex, p, 0).r;
|
|
32
|
+
let center_z = textureLoad(u_depth_half_tex, p, 0).r;
|
|
33
|
+
var total = GAUSS_5[2];
|
|
34
|
+
var sum = center_ao * GAUSS_5[2];
|
|
35
|
+
for (var i = -2; i <= 2; i = i + 1) {
|
|
36
|
+
if (i == 0) { continue; }
|
|
37
|
+
var s = p + vec2<i32>(u_params.dir * texel * f32(i));
|
|
38
|
+
s = clamp(s, vec2<i32>(0), vec2<i32>(texel) - vec2<i32>(1));
|
|
39
|
+
let z = textureLoad(u_depth_half_tex, s, 0).r;
|
|
40
|
+
let w = ao_weight(z - center_z, center_z, GAUSS_5[i + 2]);
|
|
41
|
+
sum = sum + textureLoad(u_ao_tex, s, 0).r * w;
|
|
42
|
+
total = total + w;
|
|
43
|
+
}
|
|
44
|
+
return vec4<f32>(sum / total, 0.0, 0.0, 1.0);
|
|
45
|
+
}
|
|
46
|
+
`;
|
|
47
|
+
export const GTAO_APPLY_WGSL = /* wgsl */ `struct GtaoApplyParams {
|
|
48
|
+
far: f32,
|
|
49
|
+
ao_fallback_strength: f32,
|
|
50
|
+
ao_multi_bounce: i32,
|
|
51
|
+
ao_indirect_fraction: i32, // AURA_AO_INDIRECT_FRACTION equivalent
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
@group(0) @binding(0) var<uniform> u_params: GtaoApplyParams;
|
|
55
|
+
@group(0) @binding(1) var u_hdr_tex: texture_2d<f32>; // full-res HDR (linear)
|
|
56
|
+
@group(0) @binding(2) var u_ao_tex: texture_2d<f32>; // denoised half-res R8
|
|
57
|
+
@group(0) @binding(3) var u_depth_full_tex: texture_2d<f32>; // full-res linear depth
|
|
58
|
+
@group(0) @binding(4) var u_depth_half_tex: texture_2d<f32>;
|
|
59
|
+
|
|
60
|
+
${BILATERAL}
|
|
61
|
+
|
|
62
|
+
// Jimenez 2016 multi-bounce polynomial, albedoProxy ρ = 0.5.
|
|
63
|
+
fn ao_multi_bounce(ao: f32) -> f32 {
|
|
64
|
+
let a = 2.0404 * 0.5 - 0.3324;
|
|
65
|
+
let b = -4.7951 * 0.5 + 0.6417;
|
|
66
|
+
let c = 2.7552 * 0.5 + 0.6903;
|
|
67
|
+
return max(ao, ((ao * a + b) * ao + c) * ao);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Joint-bilateral upsample: the four half-res taps around the bilinear
|
|
71
|
+
// coordinate, weighted by depth similarity to the full-res texel.
|
|
72
|
+
fn upsample_ao(uv_half: vec2<f32>, full_z: f32, half_size: vec2<f32>) -> f32 {
|
|
73
|
+
let p = uv_half * half_size - vec2<f32>(0.5);
|
|
74
|
+
let p0 = vec2<i32>(floor(p));
|
|
75
|
+
let f = p - vec2<f32>(p0);
|
|
76
|
+
var sum = 0.0;
|
|
77
|
+
var total = 0.0;
|
|
78
|
+
for (var y = 0; y < 2; y = y + 1) {
|
|
79
|
+
for (var x = 0; x < 2; x = x + 1) {
|
|
80
|
+
let s = clamp(p0 + vec2<i32>(x, y), vec2<i32>(0), vec2<i32>(half_size) - vec2<i32>(1));
|
|
81
|
+
let z = textureLoad(u_depth_half_tex, s, 0).r;
|
|
82
|
+
let w = ao_weight(z - full_z, full_z,
|
|
83
|
+
select(f.x, 1.0 - f.x, x == 0) * select(f.y, 1.0 - f.y, y == 0));
|
|
84
|
+
sum = sum + textureLoad(u_ao_tex, s, 0).r * w;
|
|
85
|
+
total = total + w;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return select(1.0, sum / total, total > 0.0);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@fragment
|
|
92
|
+
fn fs_gtao_apply(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {
|
|
93
|
+
let p = vec2<i32>(frag_coord.xy);
|
|
94
|
+
var hdr = textureLoad(u_hdr_tex, p, 0);
|
|
95
|
+
let full_z = textureLoad(u_depth_full_tex, p, 0).r;
|
|
96
|
+
let half_size = vec2<f32>(textureDimensions(u_ao_tex));
|
|
97
|
+
let uv_half = frag_coord.xy / vec2<f32>(textureDimensions(u_hdr_tex));
|
|
98
|
+
let ao = upsample_ao(uv_half, full_z, half_size);
|
|
99
|
+
let ao_mb = select(ao, ao_multi_bounce(ao), u_params.ao_multi_bounce != 0);
|
|
100
|
+
|
|
101
|
+
let sky = step(u_params.far * 0.999, full_z);
|
|
102
|
+
var w: f32;
|
|
103
|
+
if (hdr.a >= 1.5) {
|
|
104
|
+
// Tagged generated-program pixel: alpha = 2 + f_ind.
|
|
105
|
+
w = clamp(hdr.a - 2.0, 0.0, 1.0);
|
|
106
|
+
} else if (u_params.ao_indirect_fraction != 0) {
|
|
107
|
+
w = clamp(hdr.a, 0.0, 1.0);
|
|
108
|
+
} else {
|
|
109
|
+
let luma = dot(hdr.rgb, vec3<f32>(0.2126, 0.7152, 0.0722));
|
|
110
|
+
w = u_params.ao_fallback_strength * step(luma, 4.0);
|
|
111
|
+
}
|
|
112
|
+
w = w * (1.0 - sky);
|
|
113
|
+
hdr = vec4<f32>(hdr.rgb * mix(1.0, ao_mb, w), min(hdr.a, 1.0));
|
|
114
|
+
return hdr;
|
|
115
|
+
}
|
|
116
|
+
`;
|
|
117
|
+
//# sourceMappingURL=gtaoDenoise.wgsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gtaoDenoise.wgsl.js","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/gtaoDenoise.wgsl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,SAAS,GAAG,UAAU,CAAC;;;;;;CAM5B,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,UAAU,CAAC;;;;;;;;;EAS1C,SAAS;;;;;;;;;;;;;;;;;;;;;CAqBV,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;;;;;;;;;;;;;EAaxC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDV,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.8 — S7 motion blur, McGuire 2012 tile reconstruction (WebGL2).
|
|
3
|
+
*
|
|
4
|
+
* Pass 1 MB_TILE_MAX_GLSL — per MB_TILE_SIZE tile: the velocity with the
|
|
5
|
+
* largest magnitude (direction preserved).
|
|
6
|
+
* Pass 2 MB_NEIGHBOR_GLSL — max of the 3×3 tile neighborhood so a fast
|
|
7
|
+
* object bleeds onto still pixels beside it.
|
|
8
|
+
* Pass 3 MB_RECONSTRUCT_GLSL — per pixel: taps along the neighbor-max
|
|
9
|
+
* direction, soft depth compare (0.05 m) to
|
|
10
|
+
* keep background from being smeared by an
|
|
11
|
+
* unrelated foreground vector, IGN jitter.
|
|
12
|
+
*
|
|
13
|
+
* Velocity enters in UV units per frame; the driver scales it by
|
|
14
|
+
* `shutter · (targetFrameTime / actualFrameTime)` (C-23 timeScale goes into
|
|
15
|
+
* the authored shutter before it reaches this pass) and clamps to
|
|
16
|
+
* `maxBlurPx`.
|
|
17
|
+
*/
|
|
18
|
+
export declare const MB_TILE_MAX_GLSL = "#version 300 es\nprecision highp float;\n\nuniform highp sampler2D u_velocity; // dilated velocity (.rg), render res\nout vec4 o_color;\n\nvoid main() {\n ivec2 tile = ivec2(gl_FragCoord.xy);\n ivec2 size = textureSize(u_velocity, 0);\n vec2 best = vec2(0.0);\n float mag = 0.0;\n for (int y = 0; y < MB_TILE_SIZE; y += 1) for (int x = 0; x < MB_TILE_SIZE; x += 1) {\n ivec2 p = tile * MB_TILE_SIZE + ivec2(x, y);\n if (p.x >= size.x || p.y >= size.y) continue;\n vec2 v = texelFetch(u_velocity, p, 0).rg;\n float m = dot(v, v);\n if (m > mag) { mag = m; best = v; }\n }\n o_color = vec4(best, 0.0, 1.0);\n}\n";
|
|
19
|
+
export declare const MB_NEIGHBOR_GLSL = "#version 300 es\nprecision highp float;\n\nuniform highp sampler2D u_tileMax;\nout vec4 o_color;\n\nvoid main() {\n ivec2 tile = ivec2(gl_FragCoord.xy);\n ivec2 size = textureSize(u_tileMax, 0);\n vec2 best = vec2(0.0);\n float mag = 0.0;\n for (int y = -1; y <= 1; y += 1) for (int x = -1; x <= 1; x += 1) {\n vec2 v = texelFetch(u_tileMax, clamp(tile + ivec2(x, y), ivec2(0), size - 1), 0).rg;\n float m = dot(v, v);\n if (m > mag) { mag = m; best = v; }\n }\n o_color = vec4(best, 0.0, 1.0);\n}\n";
|
|
20
|
+
export declare const MB_RECONSTRUCT_GLSL = "#version 300 es\nprecision highp float;\n\nuniform highp sampler2D u_color;\nuniform highp sampler2D u_velocity; // dilated velocity (.rg)\nuniform highp sampler2D u_neighbor; // 3x3 tile max\nuniform highp sampler2D u_linearDepth; // .r = viewZ metres\nuniform float u_shutter; // authored shutter \u00B7 frameTime scale\nuniform float u_maxBlurPx;\nuniform int u_samples; // 8 | 12 | 16\nuniform int u_tileSize;\nuniform int u_frameIndex;\nout vec4 o_color;\n\n\nfloat linearizeDepth(float d, float n, float f, bool ortho) {\n float z = d * 2.0 - 1.0;\n return ortho ? mix(n, f, d) : (2.0 * n * f) / (f + n - z * (f - n));\n}\n\nuvec2 pcg2d(uvec2 v) {\n v = v * 1664525u + 1013904223u;\n v.x += v.y * 1664525u;\n v.y += v.x * 1664525u;\n v ^= v >> 16u;\n v.x += v.y * 1664525u;\n v.y += v.x * 1664525u;\n v ^= v >> 16u;\n return v;\n}\n\n// Triangular-PDF dither: (rand0 + rand1 - 1) / 255 \u2192 \u00B11 LSB of 8-bit output.\nfloat triangularDither(vec2 fragCoord, float frame) {\n uvec2 seed = uvec2(fragCoord) + uvec2(uint(frame) * 747796405u);\n vec2 rand = vec2(pcg2d(seed)) / 4294967296.0;\n return (rand.x + rand.y - 1.0) / 255.0;\n}\n\n\nfloat ign(vec2 pixel) {\n // Interleaved gradient noise \u2014 per-pixel tap phase.\n return fract(52.9829189 * fract(dot(pixel, vec2(0.06711056, 0.00583715)) + float(u_frameIndex) * 0.618034));\n}\n\nvoid main() {\n ivec2 pixel = ivec2(gl_FragCoord.xy);\n ivec2 size = textureSize(u_color, 0);\n vec2 uv = (vec2(pixel) + 0.5) / vec2(size);\n vec3 src = texelFetch(u_color, pixel, 0).rgb;\n float zSelf = texelFetch(u_linearDepth, pixel, 0).r;\n\n // Shutter\u00B7frame-time scale and pixel clamp happen once, on the tile vector.\n vec2 tileV = texelFetch(u_neighbor, pixel / u_tileSize, 0).rg * u_shutter;\n float maxLen = u_maxBlurPx / float(size.y);\n if (length(tileV) > maxLen) tileV *= maxLen / length(tileV);\n\n float jitter = ign(vec2(pixel));\n vec3 sum = src;\n float wsum = 1.0;\n for (int i = 0; i < 16; i += 1) {\n if (i >= u_samples) break;\n float t = (float(i) + jitter) / float(u_samples - 1) - 0.5;\n vec2 offset = tileV * t;\n ivec2 tapPx = clamp(ivec2(floor((uv + offset) * vec2(size))), ivec2(0), size - 1);\n vec3 c = texelFetch(u_color, tapPx, 0).rgb;\n float zTap = texelFetch(u_linearDepth, tapPx, 0).r;\n // Soft depth compare (0.05 m): taps on a different surface don't smear.\n float depthW = clamp(1.0 - abs(zTap - zSelf) / 0.05, 0.0, 1.0);\n // Coverage weight: a tap counts while the tile vector reaches it.\n float reach = length(tileV) * abs(t);\n float w = depthW * clamp(1.0 + length(tileV) * 0.5 - reach, 0.0, 1.0);\n sum += c * w;\n wsum += w;\n }\n o_color = vec4(sum / wsum, 1.0);\n}\n";
|
|
21
|
+
//# sourceMappingURL=motionBlur.glsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"motionBlur.glsl.d.ts","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/motionBlur.glsl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,eAAO,MAAM,gBAAgB,4nBAkB5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,wgBAgB5B,CAAC;AAEF,eAAO,MAAM,mBAAmB,ouFAmD/B,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.8 — S7 motion blur, McGuire 2012 tile reconstruction (WebGL2).
|
|
3
|
+
*
|
|
4
|
+
* Pass 1 MB_TILE_MAX_GLSL — per MB_TILE_SIZE tile: the velocity with the
|
|
5
|
+
* largest magnitude (direction preserved).
|
|
6
|
+
* Pass 2 MB_NEIGHBOR_GLSL — max of the 3×3 tile neighborhood so a fast
|
|
7
|
+
* object bleeds onto still pixels beside it.
|
|
8
|
+
* Pass 3 MB_RECONSTRUCT_GLSL — per pixel: taps along the neighbor-max
|
|
9
|
+
* direction, soft depth compare (0.05 m) to
|
|
10
|
+
* keep background from being smeared by an
|
|
11
|
+
* unrelated foreground vector, IGN jitter.
|
|
12
|
+
*
|
|
13
|
+
* Velocity enters in UV units per frame; the driver scales it by
|
|
14
|
+
* `shutter · (targetFrameTime / actualFrameTime)` (C-23 timeScale goes into
|
|
15
|
+
* the authored shutter before it reaches this pass) and clamps to
|
|
16
|
+
* `maxBlurPx`.
|
|
17
|
+
*/
|
|
18
|
+
import { POST_COMMON_GLSL } from "./common.glsl.js";
|
|
19
|
+
const HEADER = `#version 300 es
|
|
20
|
+
precision highp float;
|
|
21
|
+
`;
|
|
22
|
+
export const MB_TILE_MAX_GLSL = /* glsl */ `${HEADER}
|
|
23
|
+
uniform highp sampler2D u_velocity; // dilated velocity (.rg), render res
|
|
24
|
+
out vec4 o_color;
|
|
25
|
+
|
|
26
|
+
void main() {
|
|
27
|
+
ivec2 tile = ivec2(gl_FragCoord.xy);
|
|
28
|
+
ivec2 size = textureSize(u_velocity, 0);
|
|
29
|
+
vec2 best = vec2(0.0);
|
|
30
|
+
float mag = 0.0;
|
|
31
|
+
for (int y = 0; y < MB_TILE_SIZE; y += 1) for (int x = 0; x < MB_TILE_SIZE; x += 1) {
|
|
32
|
+
ivec2 p = tile * MB_TILE_SIZE + ivec2(x, y);
|
|
33
|
+
if (p.x >= size.x || p.y >= size.y) continue;
|
|
34
|
+
vec2 v = texelFetch(u_velocity, p, 0).rg;
|
|
35
|
+
float m = dot(v, v);
|
|
36
|
+
if (m > mag) { mag = m; best = v; }
|
|
37
|
+
}
|
|
38
|
+
o_color = vec4(best, 0.0, 1.0);
|
|
39
|
+
}
|
|
40
|
+
`;
|
|
41
|
+
export const MB_NEIGHBOR_GLSL = /* glsl */ `${HEADER}
|
|
42
|
+
uniform highp sampler2D u_tileMax;
|
|
43
|
+
out vec4 o_color;
|
|
44
|
+
|
|
45
|
+
void main() {
|
|
46
|
+
ivec2 tile = ivec2(gl_FragCoord.xy);
|
|
47
|
+
ivec2 size = textureSize(u_tileMax, 0);
|
|
48
|
+
vec2 best = vec2(0.0);
|
|
49
|
+
float mag = 0.0;
|
|
50
|
+
for (int y = -1; y <= 1; y += 1) for (int x = -1; x <= 1; x += 1) {
|
|
51
|
+
vec2 v = texelFetch(u_tileMax, clamp(tile + ivec2(x, y), ivec2(0), size - 1), 0).rg;
|
|
52
|
+
float m = dot(v, v);
|
|
53
|
+
if (m > mag) { mag = m; best = v; }
|
|
54
|
+
}
|
|
55
|
+
o_color = vec4(best, 0.0, 1.0);
|
|
56
|
+
}
|
|
57
|
+
`;
|
|
58
|
+
export const MB_RECONSTRUCT_GLSL = /* glsl */ `${HEADER}
|
|
59
|
+
uniform highp sampler2D u_color;
|
|
60
|
+
uniform highp sampler2D u_velocity; // dilated velocity (.rg)
|
|
61
|
+
uniform highp sampler2D u_neighbor; // 3x3 tile max
|
|
62
|
+
uniform highp sampler2D u_linearDepth; // .r = viewZ metres
|
|
63
|
+
uniform float u_shutter; // authored shutter · frameTime scale
|
|
64
|
+
uniform float u_maxBlurPx;
|
|
65
|
+
uniform int u_samples; // 8 | 12 | 16
|
|
66
|
+
uniform int u_tileSize;
|
|
67
|
+
uniform int u_frameIndex;
|
|
68
|
+
out vec4 o_color;
|
|
69
|
+
|
|
70
|
+
${POST_COMMON_GLSL}
|
|
71
|
+
|
|
72
|
+
float ign(vec2 pixel) {
|
|
73
|
+
// Interleaved gradient noise — per-pixel tap phase.
|
|
74
|
+
return fract(52.9829189 * fract(dot(pixel, vec2(0.06711056, 0.00583715)) + float(u_frameIndex) * 0.618034));
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
void main() {
|
|
78
|
+
ivec2 pixel = ivec2(gl_FragCoord.xy);
|
|
79
|
+
ivec2 size = textureSize(u_color, 0);
|
|
80
|
+
vec2 uv = (vec2(pixel) + 0.5) / vec2(size);
|
|
81
|
+
vec3 src = texelFetch(u_color, pixel, 0).rgb;
|
|
82
|
+
float zSelf = texelFetch(u_linearDepth, pixel, 0).r;
|
|
83
|
+
|
|
84
|
+
// Shutter·frame-time scale and pixel clamp happen once, on the tile vector.
|
|
85
|
+
vec2 tileV = texelFetch(u_neighbor, pixel / u_tileSize, 0).rg * u_shutter;
|
|
86
|
+
float maxLen = u_maxBlurPx / float(size.y);
|
|
87
|
+
if (length(tileV) > maxLen) tileV *= maxLen / length(tileV);
|
|
88
|
+
|
|
89
|
+
float jitter = ign(vec2(pixel));
|
|
90
|
+
vec3 sum = src;
|
|
91
|
+
float wsum = 1.0;
|
|
92
|
+
for (int i = 0; i < 16; i += 1) {
|
|
93
|
+
if (i >= u_samples) break;
|
|
94
|
+
float t = (float(i) + jitter) / float(u_samples - 1) - 0.5;
|
|
95
|
+
vec2 offset = tileV * t;
|
|
96
|
+
ivec2 tapPx = clamp(ivec2(floor((uv + offset) * vec2(size))), ivec2(0), size - 1);
|
|
97
|
+
vec3 c = texelFetch(u_color, tapPx, 0).rgb;
|
|
98
|
+
float zTap = texelFetch(u_linearDepth, tapPx, 0).r;
|
|
99
|
+
// Soft depth compare (0.05 m): taps on a different surface don't smear.
|
|
100
|
+
float depthW = clamp(1.0 - abs(zTap - zSelf) / 0.05, 0.0, 1.0);
|
|
101
|
+
// Coverage weight: a tap counts while the tile vector reaches it.
|
|
102
|
+
float reach = length(tileV) * abs(t);
|
|
103
|
+
float w = depthW * clamp(1.0 + length(tileV) * 0.5 - reach, 0.0, 1.0);
|
|
104
|
+
sum += c * w;
|
|
105
|
+
wsum += w;
|
|
106
|
+
}
|
|
107
|
+
o_color = vec4(sum / wsum, 1.0);
|
|
108
|
+
}
|
|
109
|
+
`;
|
|
110
|
+
//# sourceMappingURL=motionBlur.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"motionBlur.glsl.js","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/motionBlur.glsl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,MAAM,GAAG;;CAEd,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,MAAM;;;;;;;;;;;;;;;;;;CAkBnD,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,MAAM;;;;;;;;;;;;;;;;CAgBnD,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,MAAM;;;;;;;;;;;;EAYrD,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCjB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.8 Phase 7 — S7 motion blur WGSL twins, McGuire 2012 tile
|
|
3
|
+
* reconstruction: per-tile max velocity → 3×3 tile-neighborhood max →
|
|
4
|
+
* per-pixel taps along the neighbor-max direction with a soft depth
|
|
5
|
+
* compare (0.05 m) and IGN jitter. All inputs texelFetch-only.
|
|
6
|
+
*/
|
|
7
|
+
export declare const MB_TILE_MAX_WGSL = "// MB_TILE_SIZE \u2014 pipeline-overridable (authored motionBlur.tileSize, 16 default).\noverride MB_TILE_SIZE: i32 = 16;\n\n@group(0) @binding(1) var u_velocity_tex: texture_2d<f32>; // dilated velocity (.rg), render res\n\n@fragment\nfn fs_mb_tile_max(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {\n let tile = vec2<i32>(frag_coord.xy);\n let size = vec2<i32>(textureDimensions(u_velocity_tex));\n var best = vec2<f32>(0.0);\n var mag = 0.0;\n for (var y = 0; y < MB_TILE_SIZE; y = y + 1) {\n for (var x = 0; x < MB_TILE_SIZE; x = x + 1) {\n let p = tile * MB_TILE_SIZE + vec2<i32>(x, y);\n if (p.x >= size.x || p.y >= size.y) { continue; }\n let v = textureLoad(u_velocity_tex, p, 0).rg;\n let m = dot(v, v);\n if (m > mag) { mag = m; best = v; }\n }\n }\n return vec4<f32>(best, 0.0, 1.0);\n}\n";
|
|
8
|
+
export declare const MB_NEIGHBOR_WGSL = "@group(0) @binding(1) var u_tile_max_tex: texture_2d<f32>;\n\n@fragment\nfn fs_mb_neighbor(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {\n let tile = vec2<i32>(frag_coord.xy);\n let size = vec2<i32>(textureDimensions(u_tile_max_tex));\n var best = vec2<f32>(0.0);\n var mag = 0.0;\n for (var y = -1; y <= 1; y = y + 1) {\n for (var x = -1; x <= 1; x = x + 1) {\n let v = textureLoad(u_tile_max_tex, clamp(tile + vec2<i32>(x, y), vec2<i32>(0), size - vec2<i32>(1)), 0).rg;\n let m = dot(v, v);\n if (m > mag) { mag = m; best = v; }\n }\n }\n return vec4<f32>(best, 0.0, 1.0);\n}\n";
|
|
9
|
+
export declare const MB_RECONSTRUCT_WGSL = "struct MbReconstructParams {\n shutter: f32, // authored shutter \u00B7 frameTime scale\n max_blur_px: f32,\n samples: i32, // 8 | 12 | 16\n tile_size: i32,\n frame_index: i32,\n _pad: vec3<f32>,\n};\n\n@group(0) @binding(0) var<uniform> u_params: MbReconstructParams;\n@group(0) @binding(1) var u_color_tex: texture_2d<f32>;\n@group(0) @binding(2) var u_velocity_tex: texture_2d<f32>; // dilated velocity (.rg)\n@group(0) @binding(3) var u_neighbor_tex: texture_2d<f32>; // 3x3 tile max\n@group(0) @binding(4) var u_linear_depth_tex: texture_2d<f32>; // .r = viewZ metres\n\nfn mb_ign(pixel: vec2<f32>, frame_index: i32) -> f32 {\n // Interleaved gradient noise \u2014 per-pixel tap phase.\n return fract(52.9829189 * fract(dot(pixel, vec2<f32>(0.06711056, 0.00583715)) + f32(frame_index) * 0.618034));\n}\n\n@fragment\nfn fs_mb_reconstruct(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {\n let pixel = vec2<i32>(frag_coord.xy);\n let size = vec2<i32>(textureDimensions(u_color_tex));\n let uv = (vec2<f32>(pixel) + vec2<f32>(0.5)) / vec2<f32>(size);\n let src = textureLoad(u_color_tex, pixel, 0).rgb;\n let z_self = textureLoad(u_linear_depth_tex, pixel, 0).r;\n\n // Shutter\u00B7frame-time scale and pixel clamp happen once, on the tile vector.\n var tile_v = textureLoad(u_neighbor_tex, pixel / u_params.tile_size, 0).rg * u_params.shutter;\n let max_len = u_params.max_blur_px / f32(size.y);\n if (length(tile_v) > max_len) { tile_v = tile_v * (max_len / length(tile_v)); }\n\n let jitter = mb_ign(vec2<f32>(pixel), u_params.frame_index);\n var sum = src;\n var wsum = 1.0;\n for (var i = 0; i < 16; i = i + 1) {\n if (i >= u_params.samples) { break; }\n let t = (f32(i) + jitter) / f32(u_params.samples - 1) - 0.5;\n let offset = tile_v * t;\n let tap_px = clamp(vec2<i32>(floor((uv + offset) * vec2<f32>(size))), vec2<i32>(0), size - vec2<i32>(1));\n let c = textureLoad(u_color_tex, tap_px, 0).rgb;\n let z_tap = textureLoad(u_linear_depth_tex, tap_px, 0).r;\n // Soft depth compare (0.05 m): taps on a different surface don't smear.\n let depth_w = clamp(1.0 - abs(z_tap - z_self) / 0.05, 0.0, 1.0);\n // Coverage weight: a tap counts while the tile vector reaches it.\n let reach = length(tile_v) * abs(t);\n let w = depth_w * clamp(1.0 + length(tile_v) * 0.5 - reach, 0.0, 1.0);\n sum = sum + c * w;\n wsum = wsum + w;\n }\n return vec4<f32>(sum / wsum, 1.0);\n}\n";
|
|
10
|
+
//# sourceMappingURL=motionBlur.wgsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"motionBlur.wgsl.d.ts","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/motionBlur.wgsl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,gBAAgB,i2BAsB5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,4nBAiB5B,CAAC;AAEF,eAAO,MAAM,mBAAmB,g8EAqD/B,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.8 Phase 7 — S7 motion blur WGSL twins, McGuire 2012 tile
|
|
3
|
+
* reconstruction: per-tile max velocity → 3×3 tile-neighborhood max →
|
|
4
|
+
* per-pixel taps along the neighbor-max direction with a soft depth
|
|
5
|
+
* compare (0.05 m) and IGN jitter. All inputs texelFetch-only.
|
|
6
|
+
*/
|
|
7
|
+
export const MB_TILE_MAX_WGSL = /* wgsl */ `// MB_TILE_SIZE — pipeline-overridable (authored motionBlur.tileSize, 16 default).
|
|
8
|
+
override MB_TILE_SIZE: i32 = 16;
|
|
9
|
+
|
|
10
|
+
@group(0) @binding(1) var u_velocity_tex: texture_2d<f32>; // dilated velocity (.rg), render res
|
|
11
|
+
|
|
12
|
+
@fragment
|
|
13
|
+
fn fs_mb_tile_max(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {
|
|
14
|
+
let tile = vec2<i32>(frag_coord.xy);
|
|
15
|
+
let size = vec2<i32>(textureDimensions(u_velocity_tex));
|
|
16
|
+
var best = vec2<f32>(0.0);
|
|
17
|
+
var mag = 0.0;
|
|
18
|
+
for (var y = 0; y < MB_TILE_SIZE; y = y + 1) {
|
|
19
|
+
for (var x = 0; x < MB_TILE_SIZE; x = x + 1) {
|
|
20
|
+
let p = tile * MB_TILE_SIZE + vec2<i32>(x, y);
|
|
21
|
+
if (p.x >= size.x || p.y >= size.y) { continue; }
|
|
22
|
+
let v = textureLoad(u_velocity_tex, p, 0).rg;
|
|
23
|
+
let m = dot(v, v);
|
|
24
|
+
if (m > mag) { mag = m; best = v; }
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return vec4<f32>(best, 0.0, 1.0);
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
export const MB_NEIGHBOR_WGSL = /* wgsl */ `@group(0) @binding(1) var u_tile_max_tex: texture_2d<f32>;
|
|
31
|
+
|
|
32
|
+
@fragment
|
|
33
|
+
fn fs_mb_neighbor(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {
|
|
34
|
+
let tile = vec2<i32>(frag_coord.xy);
|
|
35
|
+
let size = vec2<i32>(textureDimensions(u_tile_max_tex));
|
|
36
|
+
var best = vec2<f32>(0.0);
|
|
37
|
+
var mag = 0.0;
|
|
38
|
+
for (var y = -1; y <= 1; y = y + 1) {
|
|
39
|
+
for (var x = -1; x <= 1; x = x + 1) {
|
|
40
|
+
let v = textureLoad(u_tile_max_tex, clamp(tile + vec2<i32>(x, y), vec2<i32>(0), size - vec2<i32>(1)), 0).rg;
|
|
41
|
+
let m = dot(v, v);
|
|
42
|
+
if (m > mag) { mag = m; best = v; }
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return vec4<f32>(best, 0.0, 1.0);
|
|
46
|
+
}
|
|
47
|
+
`;
|
|
48
|
+
export const MB_RECONSTRUCT_WGSL = /* wgsl */ `struct MbReconstructParams {
|
|
49
|
+
shutter: f32, // authored shutter · frameTime scale
|
|
50
|
+
max_blur_px: f32,
|
|
51
|
+
samples: i32, // 8 | 12 | 16
|
|
52
|
+
tile_size: i32,
|
|
53
|
+
frame_index: i32,
|
|
54
|
+
_pad: vec3<f32>,
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
@group(0) @binding(0) var<uniform> u_params: MbReconstructParams;
|
|
58
|
+
@group(0) @binding(1) var u_color_tex: texture_2d<f32>;
|
|
59
|
+
@group(0) @binding(2) var u_velocity_tex: texture_2d<f32>; // dilated velocity (.rg)
|
|
60
|
+
@group(0) @binding(3) var u_neighbor_tex: texture_2d<f32>; // 3x3 tile max
|
|
61
|
+
@group(0) @binding(4) var u_linear_depth_tex: texture_2d<f32>; // .r = viewZ metres
|
|
62
|
+
|
|
63
|
+
fn mb_ign(pixel: vec2<f32>, frame_index: i32) -> f32 {
|
|
64
|
+
// Interleaved gradient noise — per-pixel tap phase.
|
|
65
|
+
return fract(52.9829189 * fract(dot(pixel, vec2<f32>(0.06711056, 0.00583715)) + f32(frame_index) * 0.618034));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@fragment
|
|
69
|
+
fn fs_mb_reconstruct(@builtin(position) frag_coord: vec4<f32>) -> @location(0) vec4<f32> {
|
|
70
|
+
let pixel = vec2<i32>(frag_coord.xy);
|
|
71
|
+
let size = vec2<i32>(textureDimensions(u_color_tex));
|
|
72
|
+
let uv = (vec2<f32>(pixel) + vec2<f32>(0.5)) / vec2<f32>(size);
|
|
73
|
+
let src = textureLoad(u_color_tex, pixel, 0).rgb;
|
|
74
|
+
let z_self = textureLoad(u_linear_depth_tex, pixel, 0).r;
|
|
75
|
+
|
|
76
|
+
// Shutter·frame-time scale and pixel clamp happen once, on the tile vector.
|
|
77
|
+
var tile_v = textureLoad(u_neighbor_tex, pixel / u_params.tile_size, 0).rg * u_params.shutter;
|
|
78
|
+
let max_len = u_params.max_blur_px / f32(size.y);
|
|
79
|
+
if (length(tile_v) > max_len) { tile_v = tile_v * (max_len / length(tile_v)); }
|
|
80
|
+
|
|
81
|
+
let jitter = mb_ign(vec2<f32>(pixel), u_params.frame_index);
|
|
82
|
+
var sum = src;
|
|
83
|
+
var wsum = 1.0;
|
|
84
|
+
for (var i = 0; i < 16; i = i + 1) {
|
|
85
|
+
if (i >= u_params.samples) { break; }
|
|
86
|
+
let t = (f32(i) + jitter) / f32(u_params.samples - 1) - 0.5;
|
|
87
|
+
let offset = tile_v * t;
|
|
88
|
+
let tap_px = clamp(vec2<i32>(floor((uv + offset) * vec2<f32>(size))), vec2<i32>(0), size - vec2<i32>(1));
|
|
89
|
+
let c = textureLoad(u_color_tex, tap_px, 0).rgb;
|
|
90
|
+
let z_tap = textureLoad(u_linear_depth_tex, tap_px, 0).r;
|
|
91
|
+
// Soft depth compare (0.05 m): taps on a different surface don't smear.
|
|
92
|
+
let depth_w = clamp(1.0 - abs(z_tap - z_self) / 0.05, 0.0, 1.0);
|
|
93
|
+
// Coverage weight: a tap counts while the tile vector reaches it.
|
|
94
|
+
let reach = length(tile_v) * abs(t);
|
|
95
|
+
let w = depth_w * clamp(1.0 + length(tile_v) * 0.5 - reach, 0.0, 1.0);
|
|
96
|
+
sum = sum + c * w;
|
|
97
|
+
wsum = wsum + w;
|
|
98
|
+
}
|
|
99
|
+
return vec4<f32>(sum / wsum, 1.0);
|
|
100
|
+
}
|
|
101
|
+
`;
|
|
102
|
+
//# sourceMappingURL=motionBlur.wgsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"motionBlur.wgsl.js","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/motionBlur.wgsl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;CAsB1C,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;CAiB1C,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD7C,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PRD-03 §8.14 — SMAA 1x ("medium"): three passes ported verbatim from three
|
|
3
|
+
* r185 `examples/jsm/shaders/SMAAShader.js` (MIT; WebGL port of SMAA v2.8 by
|
|
4
|
+
* the three.js authors, algorithm by Jorge Jimenez et al.).
|
|
5
|
+
*
|
|
6
|
+
* Conventions matching the rest of `post/shaders/`: `#version 300 es`,
|
|
7
|
+
* `in vec2 v_uv`, `out vec4 outColor`. three's vertex shaders only computed
|
|
8
|
+
* the `vOffset`/`vPixcoord` varyings — they are pure functions of `v_uv` and
|
|
9
|
+
* the texel-size uniform, so this port computes them in the fragment
|
|
10
|
+
* preamble (`SMAAEdgeDetectionVS` → `smaaOffsets*` below), byte-identical
|
|
11
|
+
* math. `texture2D(x, uv, 0.0)` → `texture(x, uv)` (LOD 0 = lod-0 chain
|
|
12
|
+
* rules do not apply to full-screen post targets; the v2 targets carry a
|
|
13
|
+
* single mip).
|
|
14
|
+
*
|
|
15
|
+
* `u_resolution` is the texel size `vec2(1/w, 1/h)` (three names it
|
|
16
|
+
* `resolution` and feeds `Vector2(1/w, 1/h)` — same value, pipeline name).
|
|
17
|
+
* AreaTex/SearchTex arrive from the `post/smaa/` lazy chunk.
|
|
18
|
+
*/
|
|
19
|
+
/** Pass 1 — `SMAAColorEdgeDetectionPS` (colour edges, threshold 0.1). */
|
|
20
|
+
export declare const SMAA_EDGES_GLSL = "#version 300 es\nprecision highp float;\n#define SMAA_THRESHOLD 0.1\nuniform sampler2D u_color;\nuniform vec2 u_resolution;\nin vec2 v_uv;\nout vec4 outColor;\n\nvec4 SMAAColorEdgeDetectionPS( vec2 texcoord, vec4 offset[3], sampler2D colorTex ) {\n\tvec2 threshold = vec2( SMAA_THRESHOLD, SMAA_THRESHOLD );\n\n\t// Calculate color deltas:\n\tvec4 delta;\n\tvec3 C = texture( colorTex, texcoord ).rgb;\n\n\tvec3 Cleft = texture( colorTex, offset[0].xy ).rgb;\n\tvec3 t = abs( C - Cleft );\n\tdelta.x = max( max( t.r, t.g ), t.b );\n\n\tvec3 Ctop = texture( colorTex, offset[0].zw ).rgb;\n\tt = abs( C - Ctop );\n\tdelta.y = max( max( t.r, t.g ), t.b );\n\n\t// We do the usual threshold:\n\tvec2 edges = step( threshold, delta.xy );\n\n\t// Then discard if there is no edge:\n\tif ( dot( edges, vec2( 1.0, 1.0 ) ) == 0.0 )\n\t\tdiscard;\n\n\t// Calculate right and bottom deltas:\n\tvec3 Cright = texture( colorTex, offset[1].xy ).rgb;\n\tt = abs( C - Cright );\n\tdelta.z = max( max( t.r, t.g ), t.b );\n\n\tvec3 Cbottom = texture( colorTex, offset[1].zw ).rgb;\n\tt = abs( C - Cbottom );\n\tdelta.w = max( max( t.r, t.g ), t.b );\n\n\t// Calculate the maximum delta in the direct neighborhood:\n\tfloat maxDelta = max( max( max( delta.x, delta.y ), delta.z ), delta.w );\n\n\t// Calculate left-left and top-top deltas:\n\tvec3 Cleftleft = texture( colorTex, offset[2].xy ).rgb;\n\tt = abs( C - Cleftleft );\n\tdelta.z = max( max( t.r, t.g ), t.b );\n\n\tvec3 Ctoptop = texture( colorTex, offset[2].zw ).rgb;\n\tt = abs( C - Ctoptop );\n\tdelta.w = max( max( t.r, t.g ), t.b );\n\n\t// Calculate the final maximum delta:\n\tmaxDelta = max( max( maxDelta, delta.z ), delta.w );\n\n\t// Local contrast adaptation in action:\n\tedges.xy *= step( 0.5 * maxDelta, delta.xy );\n\n\treturn vec4( edges, 0.0, 0.0 );\n}\n\nvoid main() {\n\t// three's SMAAEdgeDetectionVS offsets, computed fragment-side (identical\n\t// values \u2014 the offsets are a pure function of texcoord + resolution).\n\tvec4 vOffset0 = v_uv.xyxy + u_resolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );\n\tvec4 vOffset1 = v_uv.xyxy + u_resolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );\n\tvec4 vOffset2 = v_uv.xyxy + u_resolution.xyxy * vec4( -2.0, 0.0, 0.0, 2.0 );\n\tvec4 vOffset[3] = vec4[3]( vOffset0, vOffset1, vOffset2 );\n\toutColor = SMAAColorEdgeDetectionPS( v_uv, vOffset, u_color );\n}\n";
|
|
21
|
+
/**
|
|
22
|
+
* Pass 2 — `SMAABlendingWeightCalculationPS` (SMAA_MAX_SEARCH_STEPS 8,
|
|
23
|
+
* AreaTex 160×560 RG, SearchTex 66×33 R, no diagonal search).
|
|
24
|
+
*/
|
|
25
|
+
export declare const SMAA_WEIGHTS_GLSL = "#version 300 es\nprecision highp float;\n#define SMAA_MAX_SEARCH_STEPS 8\n#define SMAA_AREATEX_MAX_DISTANCE 16\n#define SMAA_AREATEX_PIXEL_SIZE ( 1.0 / vec2( 160.0, 560.0 ) )\n#define SMAA_AREATEX_SUBTEX_SIZE ( 1.0 / 7.0 )\n#define SMAASampleLevelZeroOffset( tex, coord, offset ) texture( tex, coord + vec2( offset ) * u_resolution )\n\nuniform sampler2D u_edges; // the pass-1 edges surface (three tDiffuse)\nuniform sampler2D u_area;\nuniform sampler2D u_search;\nuniform vec2 u_resolution;\nin vec2 v_uv;\nout vec4 outColor;\n\nfloat SMAASearchLength( sampler2D searchTex, vec2 e, float bias, float scale ) {\n\t// Not required if searchTex accesses are set to point:\n\t// float2 SEARCH_TEX_PIXEL_SIZE = 1.0 / float2(66.0, 33.0);\n\t// e = float2(bias, 0.0) + 0.5 * SEARCH_TEX_PIXEL_SIZE +\n\t// e * float2(scale, 1.0) * float2(64.0, 32.0) * SEARCH_TEX_PIXEL_SIZE;\n\te.r = bias + e.r * scale;\n\treturn 255.0 * texture( searchTex, e ).r;\n}\n\nfloat SMAASearchXLeft( sampler2D edgesTex, sampler2D searchTex, vec2 texcoord, float end ) {\n\t/**\n\t\t* @PSEUDO_GATHER4\n\t\t* This texcoord has been offset by (-0.25, -0.125) in the vertex shader to\n\t\t* sample between edge, thus fetching four edges in a row.\n\t\t* Sampling with different offsets in each direction allows to disambiguate\n\t\t* which edges are active from the four fetched ones.\n\t\t*/\n\tvec2 e = vec2( 0.0, 1.0 );\n\n\tfor ( int i = 0; i < SMAA_MAX_SEARCH_STEPS; i ++ ) { // WebGL port note: Changed while to for\n\t\te = texture( edgesTex, texcoord ).rg;\n\t\ttexcoord -= vec2( 2.0, 0.0 ) * u_resolution;\n\t\tif ( ! ( texcoord.x > end && e.g > 0.8281 && e.r == 0.0 ) ) break;\n\t}\n\n\t// We correct the previous (-0.25, -0.125) offset we applied:\n\ttexcoord.x += 0.25 * u_resolution.x;\n\n\t// The searches are bias by 1, so adjust the coords accordingly:\n\ttexcoord.x += u_resolution.x;\n\n\t// Disambiguate the length added by the last step:\n\ttexcoord.x += 2.0 * u_resolution.x; // Undo last step\n\ttexcoord.x -= u_resolution.x * SMAASearchLength(searchTex, e, 0.0, 0.5);\n\n\treturn texcoord.x;\n}\n\nfloat SMAASearchXRight( sampler2D edgesTex, sampler2D searchTex, vec2 texcoord, float end ) {\n\tvec2 e = vec2( 0.0, 1.0 );\n\n\tfor ( int i = 0; i < SMAA_MAX_SEARCH_STEPS; i ++ ) {\n\t\te = texture( edgesTex, texcoord ).rg;\n\t\ttexcoord += vec2( 2.0, 0.0 ) * u_resolution;\n\t\tif ( ! ( texcoord.x < end && e.g > 0.8281 && e.r == 0.0 ) ) break;\n\t}\n\n\ttexcoord.x -= 0.25 * u_resolution.x;\n\ttexcoord.x -= u_resolution.x;\n\ttexcoord.x -= 2.0 * u_resolution.x;\n\ttexcoord.x += u_resolution.x * SMAASearchLength( searchTex, e, 0.5, 0.5 );\n\n\treturn texcoord.x;\n}\n\nfloat SMAASearchYUp( sampler2D edgesTex, sampler2D searchTex, vec2 texcoord, float end ) {\n\tvec2 e = vec2( 1.0, 0.0 );\n\n\tfor ( int i = 0; i < SMAA_MAX_SEARCH_STEPS; i ++ ) {\n\t\te = texture( edgesTex, texcoord ).rg;\n\t\ttexcoord += vec2( 0.0, 2.0 ) * u_resolution; // WebGL port note: Changed sign\n\t\tif ( ! ( texcoord.y > end && e.r > 0.8281 && e.g == 0.0 ) ) break;\n\t}\n\n\ttexcoord.y -= 0.25 * u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y -= u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y -= 2.0 * u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y += u_resolution.y * SMAASearchLength( searchTex, e.gr, 0.0, 0.5 ); // WebGL port note: Changed sign\n\n\treturn texcoord.y;\n}\n\nfloat SMAASearchYDown( sampler2D edgesTex, sampler2D searchTex, vec2 texcoord, float end ) {\n\tvec2 e = vec2( 1.0, 0.0 );\n\n\tfor ( int i = 0; i < SMAA_MAX_SEARCH_STEPS; i ++ ) {\n\t\te = texture( edgesTex, texcoord ).rg;\n\t\ttexcoord -= vec2( 0.0, 2.0 ) * u_resolution; // WebGL port note: Changed sign\n\t\tif ( ! ( texcoord.y < end && e.r > 0.8281 && e.g == 0.0 ) ) break;\n\t}\n\n\ttexcoord.y += 0.25 * u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y += u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y += 2.0 * u_resolution.y; // WebGL port note: Changed sign\n\ttexcoord.y -= u_resolution.y * SMAASearchLength( searchTex, e.gr, 0.5, 0.5 ); // WebGL port note: Changed sign\n\n\treturn texcoord.y;\n}\n\nvec2 SMAAArea( sampler2D areaTex, vec2 dist, float e1, float e2, float offset ) {\n\t// Rounding prevents precision errors of bilinear filtering:\n\tvec2 texcoord = float( SMAA_AREATEX_MAX_DISTANCE ) * round( 4.0 * vec2( e1, e2 ) ) + dist;\n\n\t// We do a scale and bias for mapping to texel space:\n\ttexcoord = SMAA_AREATEX_PIXEL_SIZE * texcoord + ( 0.5 * SMAA_AREATEX_PIXEL_SIZE );\n\n\t// Move to proper place, according to the subpixel offset:\n\ttexcoord.y += SMAA_AREATEX_SUBTEX_SIZE * offset;\n\n\treturn texture( areaTex, texcoord ).rg;\n}\n\nvec4 SMAABlendingWeightCalculationPS( vec2 texcoord, vec2 pixcoord, vec4 offset[ 3 ], sampler2D edgesTex, sampler2D areaTex, sampler2D searchTex, ivec4 subsampleIndices ) {\n\tvec4 weights = vec4( 0.0, 0.0, 0.0, 0.0 );\n\n\tvec2 e = texture( edgesTex, texcoord ).rg;\n\n\tif ( e.g > 0.0 ) { // Edge at north\n\t\tvec2 d;\n\n\t\t// Find the distance to the left:\n\t\tvec2 coords;\n\t\tcoords.x = SMAASearchXLeft( edgesTex, searchTex, offset[ 0 ].xy, offset[ 2 ].x );\n\t\tcoords.y = offset[ 1 ].y; // offset[1].y = texcoord.y - 0.25 * resolution.y (@CROSSING_OFFSET)\n\t\td.x = coords.x;\n\n\t\t// Now fetch the left crossing edges, two at a time using bilinear\n\t\t// filtering. Sampling at -0.25 (see @CROSSING_OFFSET) enables to\n\t\t// discern what value each edge has:\n\t\tfloat e1 = texture( edgesTex, coords ).r;\n\n\t\t// Find the distance to the right:\n\t\tcoords.x = SMAASearchXRight( edgesTex, searchTex, offset[ 0 ].zw, offset[ 2 ].y );\n\t\td.y = coords.x;\n\n\t\t// We want the distances to be in pixel units (doing this here allow to\n\t\t// better interleave arithmetic and memory accesses):\n\t\td = d / u_resolution.x - pixcoord.x;\n\n\t\t// SMAAArea below needs a sqrt, as the areas texture is compressed\n\t\t// quadratically:\n\t\tvec2 sqrt_d = sqrt( abs( d ) );\n\n\t\t// Fetch the right crossing edges:\n\t\tcoords.y -= 1.0 * u_resolution.y; // WebGL port note: Added\n\t\tfloat e2 = SMAASampleLevelZeroOffset( edgesTex, coords, ivec2( 1, 0 ) ).r;\n\n\t\t// Ok, we know how this pattern looks like, now it is time for getting\n\t\t// the actual area:\n\t\tweights.rg = SMAAArea( areaTex, sqrt_d, e1, e2, float( subsampleIndices.y ) );\n\t}\n\n\tif ( e.r > 0.0 ) { // Edge at west\n\t\tvec2 d;\n\n\t\t// Find the distance to the top:\n\t\tvec2 coords;\n\n\t\tcoords.y = SMAASearchYUp( edgesTex, searchTex, offset[ 1 ].xy, offset[ 2 ].z );\n\t\tcoords.x = offset[ 0 ].x; // offset[1].x = texcoord.x - 0.25 * resolution.x;\n\t\td.x = coords.y;\n\n\t\t// Fetch the top crossing edges:\n\t\tfloat e1 = texture( edgesTex, coords ).g;\n\n\t\t// Find the distance to the bottom:\n\t\tcoords.y = SMAASearchYDown( edgesTex, searchTex, offset[ 1 ].zw, offset[ 2 ].w );\n\t\td.y = coords.y;\n\n\t\t// We want the distances to be in pixel units:\n\t\td = d / u_resolution.y - pixcoord.y;\n\n\t\t// SMAAArea below needs a sqrt, as the areas texture is compressed\n\t\t// quadratically:\n\t\tvec2 sqrt_d = sqrt( abs( d ) );\n\n\t\t// Fetch the bottom crossing edges:\n\t\tcoords.y -= 1.0 * u_resolution.y; // WebGL port note: Added\n\t\tfloat e2 = SMAASampleLevelZeroOffset( edgesTex, coords, ivec2( 0, 1 ) ).g;\n\n\t\t// Get the area for this direction:\n\t\tweights.ba = SMAAArea( areaTex, sqrt_d, e1, e2, float( subsampleIndices.x ) );\n\t}\n\n\treturn weights;\n}\n\nvoid main() {\n\t// three's SMAABlendingWeightCalculationVS varyings, computed fragment-side.\n\tvec2 vPixcoord = v_uv / u_resolution;\n\tvec4 vOffset0 = v_uv.xyxy + u_resolution.xyxy * vec4( -0.25, 0.125, 1.25, 0.125 );\n\tvec4 vOffset1 = v_uv.xyxy + u_resolution.xyxy * vec4( -0.125, 0.25, -0.125, -1.25 );\n\tvec4 vOffset2 = vec4( vOffset0.xz, vOffset1.yw ) + vec4( -2.0, 2.0, -2.0, 2.0 ) * u_resolution.xxyy * float( SMAA_MAX_SEARCH_STEPS );\n\tvec4 vOffset[3] = vec4[3]( vOffset0, vOffset1, vOffset2 );\n\toutColor = SMAABlendingWeightCalculationPS( v_uv, vPixcoord, vOffset, u_edges, u_area, u_search, ivec4( 0 ) );\n}\n";
|
|
26
|
+
/** Pass 3 — `SMAANeighborhoodBlendingPS` (`u_weights` = three `tDiffuse`, `u_color` = three `tColor`). */
|
|
27
|
+
export declare const SMAA_BLEND_GLSL = "#version 300 es\nprecision highp float;\nuniform sampler2D u_weights; // three tDiffuse \u2014 the blend-weights surface\nuniform sampler2D u_color; // three tColor \u2014 the colour surface\nuniform vec2 u_resolution;\nin vec2 v_uv;\nout vec4 outColor;\n\nvec4 SMAANeighborhoodBlendingPS( vec2 texcoord, vec4 offset[ 2 ], sampler2D colorTex, sampler2D blendTex ) {\n\t// Fetch the blending weights for current pixel:\n\tvec4 a;\n\ta.xz = texture( blendTex, texcoord ).xz;\n\ta.y = texture( blendTex, offset[ 1 ].zw ).g;\n\ta.w = texture( blendTex, offset[ 1 ].xy ).a;\n\n\t// Is there any blending weight with a value greater than 0.0?\n\tif ( dot(a, vec4( 1.0, 1.0, 1.0, 1.0 )) < 1e-5 ) {\n\t\treturn texture( colorTex, texcoord );\n\t} else {\n\t\t// Up to 4 lines can be crossing a pixel (one through each edge). We\n\t\t// favor blending by choosing the line with the maximum weight for each\n\t\t// direction:\n\t\tvec2 offset;\n\t\toffset.x = a.a > a.b ? a.a : -a.b; // left vs. right\n\t\toffset.y = a.g > a.r ? -a.g : a.r; // top vs. bottom // WebGL port note: Changed signs\n\n\t\t// Then we go in the direction that has the maximum weight:\n\t\tif ( abs( offset.x ) > abs( offset.y )) { // horizontal vs. vertical\n\t\t\toffset.y = 0.0;\n\t\t} else {\n\t\t\toffset.x = 0.0;\n\t\t}\n\n\t\t// Fetch the opposite color and lerp by hand:\n\t\tvec4 C = texture( colorTex, texcoord );\n\t\ttexcoord += sign( offset ) * u_resolution;\n\t\tvec4 Cop = texture( colorTex, texcoord );\n\t\tfloat s = abs( offset.x ) > abs( offset.y ) ? abs( offset.x ) : abs( offset.y );\n\n\t\t// WebGL port note: Added gamma correction\n\t\tC.xyz = pow(C.xyz, vec3(2.2));\n\t\tCop.xyz = pow(Cop.xyz, vec3(2.2));\n\t\tvec4 mixed = mix(C, Cop, s);\n\t\tmixed.xyz = pow(mixed.xyz, vec3(1.0 / 2.2));\n\n\t\treturn mixed;\n\t}\n}\n\nvoid main() {\n\t// three's SMAANeighborhoodBlendingVS varyings, computed fragment-side.\n\tvec4 vOffset0 = v_uv.xyxy + u_resolution.xyxy * vec4( -1.0, 0.0, 0.0, 1.0 );\n\tvec4 vOffset1 = v_uv.xyxy + u_resolution.xyxy * vec4( 1.0, 0.0, 0.0, -1.0 );\n\tvec4 vOffset[2] = vec4[2]( vOffset0, vOffset1 );\n\toutColor = SMAANeighborhoodBlendingPS( v_uv, vOffset, u_color, u_weights );\n}\n";
|
|
28
|
+
//# sourceMappingURL=smaa.glsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smaa.glsl.d.ts","sourceRoot":"","sources":["../../../../../../packages/rendering/src/post/shaders/smaa.glsl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,yEAAyE;AACzE,eAAO,MAAM,eAAe,8zEAqE3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,k7PAyM7B,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,eAAe,8pEAwD3B,CAAC"}
|