diff --git a/GVRf/Framework/framework/src/main/java/org/gearvrf/GVRShader.java b/GVRf/Framework/framework/src/main/java/org/gearvrf/GVRShader.java index 0ad903735..0b7255df8 100644 --- a/GVRf/Framework/framework/src/main/java/org/gearvrf/GVRShader.java +++ b/GVRf/Framework/framework/src/main/java/org/gearvrf/GVRShader.java @@ -55,7 +55,7 @@ */ public class GVRShader { - protected boolean mWriteShadersToDisk = false; + protected boolean mWriteShadersToDisk = true; protected GLSLESVersion mGLSLVersion = GLSLESVersion.V100; protected boolean mHasVariants = false; protected boolean mUsesLights = false; diff --git a/GVRf/Framework/framework/src/main/java/org/gearvrf/shaders/GVRPBRShader.java b/GVRf/Framework/framework/src/main/java/org/gearvrf/shaders/GVRPBRShader.java index b3a322721..d9f0eb390 100644 --- a/GVRf/Framework/framework/src/main/java/org/gearvrf/shaders/GVRPBRShader.java +++ b/GVRf/Framework/framework/src/main/java/org/gearvrf/shaders/GVRPBRShader.java @@ -44,7 +44,7 @@ public class GVRPBRShader extends GVRShaderTemplate public GVRPBRShader(GVRContext gvrcontext) { super("float4 diffuse_color; float4 specular_color; float4 emissive_color; float metallic; float roughness; float specular_exponent; float lightmapStrength; float normalScale; float glossinessFactor", - "sampler2D diffuseTexture; sampler2D metallicRoughnessTexture; sampler2D specularTexture; sampler2D lightmapTexture; sampler2D diffuseTexture1; sampler2D normalTexture; sampler2D emissiveTexture; sampler2D brdfLUTTexture; samplerCube diffuseEnvTex; samplerCube specularEnvTexture", + "sampler2D diffuseTexture; sampler2D metallicRoughnessTexture; sampler2D specularTexture; sampler2D lightmapTexture; sampler2D normalTexture; sampler2D emissiveTexture; sampler2D brdfLUTTexture; samplerCube diffuseEnvTex; samplerCube specularEnvTexture", "float3 a_position float2 a_texcoord float2 a_texcoord1 float2 a_texcoord2 float2 a_texcoord3 float3 a_normal float4 a_bone_weights int4 a_bone_indices float4 a_tangent float4 a_bitangent", GLSLESVersion.VULKAN); diff --git a/GVRf/Framework/framework/src/main/res/raw/fragment_template.fsh b/GVRf/Framework/framework/src/main/res/raw/fragment_template.fsh index dc09e5c17..7f584e700 100644 --- a/GVRf/Framework/framework/src/main/res/raw/fragment_template.fsh +++ b/GVRf/Framework/framework/src/main/res/raw/fragment_template.fsh @@ -40,7 +40,9 @@ struct Radiance @FragmentSurface +#ifdef HAS_LIGHTSOURCES @FragmentAddLight +#endif @LIGHTSOURCES diff --git a/GVRf/Framework/framework/src/main/res/raw/fragment_template_multitex.fsh b/GVRf/Framework/framework/src/main/res/raw/fragment_template_multitex.fsh index 090cd851f..7fe1c09d7 100644 --- a/GVRf/Framework/framework/src/main/res/raw/fragment_template_multitex.fsh +++ b/GVRf/Framework/framework/src/main/res/raw/fragment_template_multitex.fsh @@ -38,7 +38,9 @@ float unpackFloatFromVec4i(const vec4 value) @FragmentSurface +#ifdef HAS_LIGHTSOURCES @FragmentAddLight +#endif @LIGHTSOURCES diff --git a/GVRf/Framework/framework/src/main/res/raw/pbr_addlight.fsh b/GVRf/Framework/framework/src/main/res/raw/pbr_addlight.fsh index 183353d6a..3e0b8acd1 100644 --- a/GVRf/Framework/framework/src/main/res/raw/pbr_addlight.fsh +++ b/GVRf/Framework/framework/src/main/res/raw/pbr_addlight.fsh @@ -115,14 +115,8 @@ vec4 AddLight(Surface s, Radiance r) // Obtain final intensity as reflectance (BRDF) scaled by the energy of the light (cosine law) vec3 color = NdotL * ((r.diffuse_intensity * kD) + (r.specular_intensity * kS)) + s.emission.xyz; - mat4 view_i; -#ifdef HAS_MULTIVIEW - view_i = u_view_i_[gl_ViewID_OVR]; -#else - view_i = u_view_i; -#endif - color += getIBLContribution(s.roughness, NdotV, (view_i * vec4(n, 1.0)).xyz, - (view_i * vec4(reflection, 1.0)).xyz, s.specular, s.diffuse.xyz); + color += getIBLContribution(s.roughness, NdotV, (u_view_i * vec4(n, 1.0)).xyz, + (u_view_i * vec4(reflection, 1.0)).xyz, s.specular, s.diffuse.xyz); #ifdef HAS_lightmapTexture float ao = texture(lightmapTexture, lightmap_coord).r;