Bläddra i källkod

Merge pull request #2837 from bghgary/bug-fixes

Bug fixes with normals
sebavan 8 år sedan
förälder
incheckning
cf8d6b4c2b

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 2563 - 2563
dist/preview release/customConfigurations/minimalGLTFViewer/babylon.d.ts


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 49 - 49
dist/preview release/customConfigurations/minimalGLTFViewer/babylon.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 1958 - 1958
dist/preview release/customConfigurations/minimalGLTFViewer/babylon.max.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 2563 - 2563
dist/preview release/customConfigurations/minimalGLTFViewer/babylon.module.d.ts


+ 1 - 1
src/Materials/PBR/babylon.pbrBaseMaterial.ts

@@ -1264,7 +1264,7 @@
                 scene.ambientColor.multiplyToRef(this._ambientColor, this._globalAmbientColor);
 
                 var eyePosition = scene._mirroredCameraPosition ? scene._mirroredCameraPosition : scene.activeCamera.globalPosition;
-                var invertNormal = (scene.useRightHandedSystem === (scene._mirroredCameraPosition !== undefined));
+                var invertNormal = (scene.useRightHandedSystem === (scene._mirroredCameraPosition != null));
                 effect.setFloat4("vEyePosition",
                     eyePosition.x,
                     eyePosition.y,

+ 1 - 2
src/Shaders/pbr.fragment.fx

@@ -234,8 +234,7 @@ void main(void) {
 		faceNormal = gl_FrontFacing ? faceNormal : -faceNormal;
 	#endif
 
-	float comp = sign(dot(normalW, faceNormal));
-    normalW *= -comp;
+	normalW *= sign(dot(normalW, faceNormal));
 #endif
 
 #if defined(TWOSIDEDLIGHTING) && defined(NORMAL)