2
0
Эх сурвалжийг харах

Update PBRLighting.glsllib

Added spec-gloss vars
Ryan McDonough 1 жил өмнө
parent
commit
dfa150ff2e

+ 3 - 21
jme3-core/src/main/resources/Common/ShaderLib/PBRLighting.glsllib

@@ -30,35 +30,17 @@ uniform vec4 g_AmbientLightColor;
     uniform float m_SpecularAAKappa;
 #endif
 
-vec3 calculatePBRLighting(in vec4 albedo, in float Metallic, in float Roughness, in vec3 lightMapColor, in vec3 ao, in float indoorSunLightExposure, in vec3 normal, in vec3 norm, in vec3 viewDir){
+vec3 calculatePBRLighting(in vec4 albedo, in float Metallic, in float Roughness, in vec4 specularColor, in float glossiness, in vec3 lightMapColor, in vec3 ao, in float indoorSunLightExposure, in vec3 normal, in vec3 norm, in vec3 viewDir){
     vec3 finalLightingValue;
     
     #ifdef SPECGLOSSPIPELINE
-
-        #ifdef USE_PACKED_SG
-            vec4 specularColor = texture2D(m_SpecularGlossinessMap, newTexCoord);
-            float glossiness = specularColor.a * m_Glossiness;
-            specularColor *= m_Specular;
-        #else
-            #ifdef SPECULARMAP
-                vec4 specularColor = texture2D(m_SpecularMap, newTexCoord);
-            #else
-                vec4 specularColor = vec4(1.0);
-            #endif
-            #ifdef GLOSSINESSMAP
-                float glossiness = texture2D(m_GlossinessMap, newTexCoord).r * m_Glossiness;
-            #else
-                float glossiness = m_Glossiness;
-            #endif
-            specularColor *= m_Specular;
-        #endif
         vec4 diffuseColor = albedo;// * (1.0 - max(max(specularColor.r, specularColor.g), specularColor.b));
         Roughness = 1.0 - glossiness;
         vec3 fZero = specularColor.xyz;
     #else
         float specular = 0.5;
         float nonMetalSpec = 0.08 * specular;
-        vec4 specularColor = (nonMetalSpec - nonMetalSpec * Metallic) + albedo * Metallic;
+        specularColor = (nonMetalSpec - nonMetalSpec * Metallic) + albedo * Metallic;
         vec4 diffuseColor = albedo - albedo * Metallic;
         vec3 fZero = vec3(specular);
     #endif
@@ -199,4 +181,4 @@ vec3 calculatePBRLighting(in vec4 albedo, in float Metallic, in float Roughness,
     #endif
     
     return finalLightingValue;
-}
+}