GRK-Projekt/grafika_projekt/shaders/bubble.frag

30 lines
795 B
GLSL
Raw Normal View History

2022-01-02 01:26:44 +01:00
#version 430 compatibility
2021-12-30 12:14:47 +01:00
2022-01-02 00:03:53 +01:00
2022-01-02 01:26:44 +01:00
in vec3 fragPos;
in vec3 interpNormal;
2022-01-02 02:22:53 +01:00
in float v_fresnel;
2022-01-02 00:03:53 +01:00
uniform vec3 cameraPos;
2022-01-02 02:22:53 +01:00
in vec3 incident;
uniform samplerCube bubble;
2022-01-02 01:26:44 +01:00
layout (binding = 0) uniform samplerCube tex_map;
2021-12-30 12:14:47 +01:00
void main()
2022-01-01 12:35:51 +01:00
{
2022-01-02 02:22:53 +01:00
float ratio = 1.33 / 1.00;
vec3 I = normalize(fragPos - cameraPos);
2022-01-02 17:29:41 +01:00
vec3 Refract = refract(I, normalize(interpNormal), ratio);
vec3 R = reflect(I, normalize(interpNormal));
vec3 flip = reflect(normalize(-fragPos), normalize(interpNormal));
2022-01-02 02:22:53 +01:00
2022-01-02 17:29:41 +01:00
vec4 flipColor = texture( tex_map, flip );
vec4 refractionColor = texture( tex_map, Refract );
vec4 reflectionColor = texture( tex_map, R );
2022-01-02 02:22:53 +01:00
2022-01-02 17:29:41 +01:00
//vec4 color = vec4(mix(flipColor,reflectionColor,0).rgb,1.0);
gl_FragColor = vec4(mix( flipColor,refractionColor,0).rgb,1.0);
2021-12-30 12:14:47 +01:00
}