diff --git a/src/renderers/webgl/WebGLBackground.js b/src/renderers/webgl/WebGLBackground.js index 03dd387e54db12..491cfe23805c2e 100644 --- a/src/renderers/webgl/WebGLBackground.js +++ b/src/renderers/webgl/WebGLBackground.js @@ -111,10 +111,7 @@ function WebGLBackground( renderer, cubemaps, cubeuvmaps, state, objects, alpha, _e1.copy( scene.backgroundRotation ); - // accommodate left-handed frame - _e1.x *= - 1; _e1.y *= - 1; _e1.z *= - 1; - - if ( background.isCubeTexture && background.isRenderTargetTexture === false ) { + if ( ( background.isCubeTexture && background.isRenderTargetTexture === true ) || background.mapping === CubeUVReflectionMapping ) { // environment maps which are not cube render targets or PMREMs follow a different convention _e1.y *= - 1; diff --git a/src/renderers/webgl/WebGLMaterials.js b/src/renderers/webgl/WebGLMaterials.js index 4c9973f3ec16b1..26a9ac7077182a 100644 --- a/src/renderers/webgl/WebGLMaterials.js +++ b/src/renderers/webgl/WebGLMaterials.js @@ -1,4 +1,4 @@ -import { BackSide } from '../../constants.js'; +import { BackSide, CubeUVReflectionMapping } from '../../constants.js'; import { getUnlitUniformColorSpace } from '../shaders/UniformsUtils.js'; import { Euler } from '../../math/Euler.js'; import { Matrix4 } from '../../math/Matrix4.js'; @@ -225,10 +225,7 @@ function WebGLMaterials( renderer, properties ) { _e1.copy( envMapRotation ); - // accommodate left-handed frame - _e1.x *= - 1; _e1.y *= - 1; _e1.z *= - 1; - - if ( envMap.isCubeTexture && envMap.isRenderTargetTexture === false ) { + if ( ( envMap.isCubeTexture && envMap.isRenderTargetTexture === true ) || envMap.mapping === CubeUVReflectionMapping ) { // environment maps which are not cube render targets or PMREMs follow a different convention _e1.y *= - 1;