From 70a2c97eb16baaee012de3d80be92ba9d656fc52 Mon Sep 17 00:00:00 2001 From: Palash Bansal Date: Tue, 27 Jun 2023 16:11:45 +0530 Subject: [PATCH 1/2] Fix shader error in physical material anisotropy when normal map is not present. --- .../shaders/ShaderChunk/normal_fragment_begin.glsl.js | 10 +++++++++- .../shaders/ShaderChunk/uv_pars_fragment.glsl.js | 2 +- src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js b/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js index 736fb4f4ae036e..598bb53ff7f9eb 100644 --- a/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js +++ b/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js @@ -27,7 +27,15 @@ float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; #else - mat3 tbn = getTangentFrame( - vViewPosition, normal, vNormalMapUv ); + mat3 tbn = getTangentFrame( - vViewPosition, normal, + #if defined( USE_NORMALMAP ) + vNormalMapUv + #elif defined( USE_CLEARCOAT_NORMALMAP ) + vClearcoatNormalMapUv + #else + vUv + #endif + ); #endif diff --git a/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js b/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js index c50c10e119060e..135966696aa557 100644 --- a/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js +++ b/src/renderers/shaders/ShaderChunk/uv_pars_fragment.glsl.js @@ -1,5 +1,5 @@ export default /* glsl */` -#ifdef USE_UV +#if defined( USE_UV ) || defined( USE_ANISOTROPY ) varying vec2 vUv; diff --git a/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js b/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js index b865b6b384303f..791916aab0c727 100644 --- a/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js +++ b/src/renderers/shaders/ShaderChunk/uv_vertex.glsl.js @@ -1,5 +1,5 @@ export default /* glsl */` -#ifdef USE_UV +#if defined( USE_UV ) || defined( USE_ANISOTROPY ) vUv = vec3( uv, 1 ).xy; From 0186bb01ab2f1ca9f744b964413075b61d9d1d44 Mon Sep 17 00:00:00 2001 From: Palash Bansal Date: Tue, 27 Jun 2023 16:24:53 +0530 Subject: [PATCH 2/2] Check for USE_ANISOTROPY in uv_pars_vertex.glsl.js --- src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js b/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js index acbfc6e048d30f..6cb9cf4676c705 100644 --- a/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js +++ b/src/renderers/shaders/ShaderChunk/uv_pars_vertex.glsl.js @@ -1,5 +1,5 @@ export default /* glsl */` -#ifdef USE_UV +#if defined( USE_UV ) || defined( USE_ANISOTROPY ) varying vec2 vUv;