diff options
Diffstat (limited to 'advanced_opengl/6.cubemaps/shaders/refraction.frag')
-rw-r--r-- | advanced_opengl/6.cubemaps/shaders/refraction.frag | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/advanced_opengl/6.cubemaps/shaders/refraction.frag b/advanced_opengl/6.cubemaps/shaders/refraction.frag new file mode 100644 index 0000000..fa01b2c --- /dev/null +++ b/advanced_opengl/6.cubemaps/shaders/refraction.frag @@ -0,0 +1,17 @@ +#version 330 core + +in vec3 pos; +in vec3 normal; + +out vec4 frag_color; + +uniform vec3 camera_pos; +uniform samplerCube skybox; + +void main(void) +{ + float ratio = 1.0/1.52; + vec3 i = pos-camera_pos; + vec3 r = refract(i, normalize(normal), ratio); + frag_color = texture(skybox, r); +} |