|
@@ -15626,7 +15626,7 @@ THREE.ShaderLib = {
|
|
|
"void main() {",
|
|
|
|
|
|
"vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );",
|
|
|
- "vNormal = normalMatrix * normal;",
|
|
|
+ "vNormal = normalize( normalMatrix * normal );",
|
|
|
|
|
|
"gl_Position = projectionMatrix * mvPosition;",
|
|
|
|
|
@@ -15900,7 +15900,7 @@ THREE.ShaderLib = {
|
|
|
THREE.ShaderChunk[ "skinnormal_vertex" ],
|
|
|
THREE.ShaderChunk[ "defaultnormal_vertex" ],
|
|
|
|
|
|
- "vNormal = transformedNormal;",
|
|
|
+ "vNormal = normalize( transformedNormal );",
|
|
|
|
|
|
THREE.ShaderChunk[ "morphtarget_vertex" ],
|
|
|
THREE.ShaderChunk[ "skinning_vertex" ],
|
|
@@ -25754,19 +25754,19 @@ THREE.ShaderUtils = {
|
|
|
|
|
|
"#ifdef USE_SKINNING",
|
|
|
|
|
|
- "vNormal = normalMatrix * skinnedNormal.xyz;",
|
|
|
+ "vNormal = normalize( normalMatrix * skinnedNormal.xyz );",
|
|
|
|
|
|
"vec4 skinnedTangent = skinMatrix * vec4( tangent.xyz, 0.0 );",
|
|
|
- "vTangent = normalMatrix * skinnedTangent.xyz;",
|
|
|
+ "vTangent = normalize( normalMatrix * skinnedTangent.xyz );",
|
|
|
|
|
|
"#else",
|
|
|
|
|
|
- "vNormal = normalMatrix * normal;",
|
|
|
- "vTangent = normalMatrix * tangent.xyz;",
|
|
|
+ "vNormal = normalize( normalMatrix * normal );",
|
|
|
+ "vTangent = normalize( normalMatrix * tangent.xyz );",
|
|
|
|
|
|
"#endif",
|
|
|
|
|
|
- "vBinormal = cross( vNormal, vTangent ) * tangent.w;",
|
|
|
+ "vBinormal = normalize( cross( vNormal, vTangent ) * tangent.w );",
|
|
|
|
|
|
"vUv = uv * uRepeat + uOffset;",
|
|
|
|