CSC8502_Advanced_Graphics_For_Games / Shaders / reflectSphereFragment.glsl
reflectSphereFragment.glsl
Raw
#version 330 core

uniform sampler2D diffuseTex;
uniform samplerCube cubeTex;

uniform vec3 cameraPos;


in Vertex {
	vec4 colour;
	vec2 texCoord;
	vec3 normal;
	vec3 tangent;
	vec3 binormal;
	vec3 worldPos;
} IN;

out vec4 fragColour;

void main(void) {
	vec3 normal;
	normal = normalize(IN.normal);
	
	vec3 incident = normalize(IN.worldPos - cameraPos);
	vec4 reflection = texture(cubeTex, reflect(incident, normal));
	
	vec4 diffuse = vec4(1.0,0.0,0.0,1.0);

	diffuse = reflection;
		
	fragColour = reflection + (diffuse * 0.25f );
}