From 94428d43c9648d7595aa6c605c58d80238766fe4 Mon Sep 17 00:00:00 2001 From: Nigel Date: Sun, 16 Oct 2022 20:44:48 +0200 Subject: [PATCH] refraction shading --- shader.fs | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/shader.fs b/shader.fs index 029dce1..05daf48 100644 --- a/shader.fs +++ b/shader.fs @@ -10,10 +10,31 @@ uniform samplerCube skybox; in vec2 TexCoords; uniform sampler2D texture_diffuse1; +const float air_ri = 1.00; +const float water_ri = 1.33; +const float Ice_ri = 1.309; +const float glass_ri = 1.52; +const float diamond_ri = 2.42; + void main() { + // Regular shading + // texture( texture_diffuse1, TexCoords) ; + + + // Reflective shading + /* vec3 I = normalize(Position - cameraPos); vec3 R = reflect(I, normalize(Normal)); - FragColor = vec4(texture(skybox,R).rgb, 1.0); // texture( texture_diffuse1, TexCoords) ; + FragColor = vec4(texture(skybox,R).rgb, 1.0); + */ + + + // Refractive shading + float ratio = air_ri/water_ri; + vec3 I = normalize(Position-cameraPos); + vec3 R = refract(I, normalize(Normal), ratio); + FragColor = vec4(texture(skybox, R).rgb, 1.0); + } \ No newline at end of file