summaryrefslogtreecommitdiff
path: root/data/shaders/pbr-frag.glsl
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2021-10-08 20:44:28 -0400
committerDavid Thompson <dthompson2@worcester.edu>2021-10-08 20:44:28 -0400
commit53429f77e3fcfaa4fdc3d95b840b6728b4452f72 (patch)
treee5766772d1deac156871ce5ad119f8c3ab260243 /data/shaders/pbr-frag.glsl
parentc22eda980c51db210bbe73f500e9f3fc3052a5f3 (diff)
graphics: Fix compatibility issue with cube maps in phong/pbr shaders.
Diffstat (limited to 'data/shaders/pbr-frag.glsl')
-rw-r--r--data/shaders/pbr-frag.glsl5
1 files changed, 4 insertions, 1 deletions
diff --git a/data/shaders/pbr-frag.glsl b/data/shaders/pbr-frag.glsl
index a211096..0986840 100644
--- a/data/shaders/pbr-frag.glsl
+++ b/data/shaders/pbr-frag.glsl
@@ -66,6 +66,9 @@ const float GAMMA = 2.2;
vec4 texture(sampler2D tex, vec2 coord) {
return texture2D(tex, coord);
}
+vec4 texture(samplerCube tex, vec3 coord) {
+ return textureCube(tex, coord);
+}
#endif
float posDot(vec3 v1, vec3 v2) {
@@ -364,7 +367,7 @@ void main(void) {
//
// TODO: Use fancy PBR equations instead of these basic ones.
float fresnel = pow(1.0 - clamp(dot(viewDirection, normal), 0.0, 1.0), 5);
- vec3 ambientDiffuse = textureCube(skybox, normal).rgb;
+ vec3 ambientDiffuse = texture(skybox, normal).rgb;
vec3 ambientSpecular = textureLod(skybox, reflection, roughness * 7.0).rgb;
color += (ambientDiffuse * albedo + ambientSpecular * fresnel) * ambientOcclusion;
// Apply Reinhard tone mapping to convert our high dynamic range