32 lines
813 B
GLSL
32 lines
813 B
GLSL
#version 430 core
|
|
out vec4 FragColor;
|
|
|
|
in VS_OUT {
|
|
vec3 FragPos;
|
|
vec2 TexCoords;
|
|
vec3 TangentLightPos;
|
|
vec3 TangentViewPos;
|
|
vec3 TangentFragPos;
|
|
} fs_in;
|
|
|
|
uniform sampler2D diffuseMap;
|
|
uniform sampler2D normalMap;
|
|
uniform sampler2D depthMap;
|
|
|
|
uniform float height_scale;
|
|
|
|
vec2 ParallaxMapping(vec2 texCoords, vec3 viewDir);
|
|
|
|
void main()
|
|
{
|
|
// offset texture coordinates with Parallax Mapping
|
|
vec3 viewDir = normalize(fs_in.TangentViewPos - fs_in.TangentFragPos);
|
|
vec2 texCoords = ParallaxMapping(fs_in.TexCoords, viewDir);
|
|
|
|
// then sample textures with new texture coords
|
|
vec3 diffuse = texture(diffuseMap, texCoords);
|
|
vec3 normal = texture(normalMap, texCoords);
|
|
normal = normalize(normal * 2.0 - 1.0);
|
|
// proceed with lighting code
|
|
|
|
} |