auto-git:

[change] src/rendering/quantized-environment-blend-cache.ts
This commit is contained in:
2026-04-22 13:46:02 +02:00
parent 081add83cc
commit 3e48fbd608

View File

@@ -431,44 +431,46 @@ class RendererEnvironmentBlendTextureBuilder {
const previousToneMapping = this.renderer.toneMapping; const previousToneMapping = this.renderer.toneMapping;
const previousOutputColorSpace = this.renderer.outputColorSpace; const previousOutputColorSpace = this.renderer.outputColorSpace;
this.renderer.xr.enabled = false; try {
this.renderer.autoClear = true; this.renderer.xr.enabled = false;
this.renderer.toneMapping = NoToneMapping; this.renderer.autoClear = true;
this.renderer.outputColorSpace = LinearSRGBColorSpace; this.renderer.toneMapping = NoToneMapping;
this.blendMaterial.uniforms.uBaseTexture.value = baseTexture; this.renderer.outputColorSpace = LinearSRGBColorSpace;
this.blendMaterial.uniforms.uOverlayTexture.value = overlayTexture; this.blendMaterial.uniforms.uBaseTexture.value = baseTexture;
this.blendMaterial.uniforms.uBlendAmount.value = blendAmount; this.blendMaterial.uniforms.uOverlayTexture.value = overlayTexture;
this.blendMaterial.uniforms.uBaseTextureIsSrgb.value = isSrgbTexture( this.blendMaterial.uniforms.uBlendAmount.value = blendAmount;
baseTexture this.blendMaterial.uniforms.uBaseTextureIsSrgb.value = isSrgbTexture(
) baseTexture
? 1 )
: 0; ? 1
this.blendMaterial.uniforms.uOverlayTextureIsSrgb.value = isSrgbTexture( : 0;
overlayTexture this.blendMaterial.uniforms.uOverlayTextureIsSrgb.value = isSrgbTexture(
) overlayTexture
? 1 )
: 0; ? 1
: 0;
this.renderer.setRenderTarget(this.scratchTarget); this.renderer.setRenderTarget(this.scratchTarget);
this.renderer.clear(); this.renderer.clear();
this.renderer.render(this.blendScene, this.blendCamera); this.renderer.render(this.blendScene, this.blendCamera);
const pmremTarget = this.pmremGenerator.fromEquirectangular( const pmremTarget = this.pmremGenerator.fromEquirectangular(
this.scratchTarget.texture this.scratchTarget.texture
); );
this.renderer.setRenderTarget(previousRenderTarget); return {
this.renderer.autoClear = previousAutoClear; texture: pmremTarget.texture,
this.renderer.xr.enabled = previousXrEnabled; dispose: () => {
this.renderer.toneMapping = previousToneMapping; pmremTarget.dispose();
this.renderer.outputColorSpace = previousOutputColorSpace; }
};
return { } finally {
texture: pmremTarget.texture, this.renderer.setRenderTarget(previousRenderTarget);
dispose: () => { this.renderer.autoClear = previousAutoClear;
pmremTarget.dispose(); this.renderer.xr.enabled = previousXrEnabled;
} this.renderer.toneMapping = previousToneMapping;
}; this.renderer.outputColorSpace = previousOutputColorSpace;
}
} }
dispose() { dispose() {