Bläddra i källkod

Update TangentUtils.glsllib

Ryan McDonough 7 månader sedan
förälder
incheckning
0e78a629c1
1 ändrade filer med 6 tillägg och 13 borttagningar
  1. 6 13
      jme3-core/src/main/resources/Common/ShaderLib/TangentUtils.glsllib

+ 6 - 13
jme3-core/src/main/resources/Common/ShaderLib/TangentUtils.glsllib

@@ -1,20 +1,13 @@
 #ifndef __TANGENT_UTILS_MODULE__
     #define __TANGENT_UTILS_MODULE__
 
-    //used for calculating tangents in-shader
-   
-
-    //primarily used for terrains, since jme terrains do not store pre-calculated tangents by default (thus the tbnMat cannot be used for PBR light calculation like it is in jme's stock PBR shader)
-    vec3 calculateTangentsAndApplyToNormals(in vec3 normalIn, in vec3 worldNorm){
-
+    //used for calculating tangents in-shader for axis-aligned quads/planes/terrains   
+    //primarily used for PBR terrains, since jme terrains do not store pre-calculated tangents by default (thus the tbnMat cannot be used for PBR light calculation like it is in jme's stock PBR shader)
+    vec3 calculateTangentsAndApplyToNormals(in vec3 normalIn, in vec3 worldNorm){        
         vec3 baseNorm = worldNorm.rgb + vec3(0, 0, 1);
-        returnNorm *= vec3(-1, -1, 1);
-        returnNorm = baseNorm.rgb*dot(baseNorm.rgb, returnNorm.rgb)/baseNorm.z - returnNorm.rgb;
-
-        returnNorm = normalize(returnNorm);
+        normalIn = baseNorm.rgb*dot(baseNorm.rgb, normalIn.rgb)/baseNorm.z - normalIn.rgb;
+        normalIn = normalize(normalIn);
 
-
-        return returnNorm;
+        return normalIn;
     }
-
 #endif