mirror of
https://github.com/raysan5/raylib.git
synced 2025-12-25 10:22:33 -05:00
* add example for deferred rendering/shading * adapt convention --------- Co-authored-by: 27justin <me@justin.cx>
23 lines
728 B
GLSL
23 lines
728 B
GLSL
#version 330 core
|
|
layout (location = 0) out vec3 gPosition;
|
|
layout (location = 1) out vec3 gNormal;
|
|
layout (location = 2) out vec4 gAlbedoSpec;
|
|
|
|
in vec3 fragPosition;
|
|
in vec2 fragTexCoord;
|
|
in vec3 fragNormal;
|
|
|
|
uniform sampler2D diffuseTexture;
|
|
uniform sampler2D specularTexture;
|
|
|
|
void main() {
|
|
// store the fragment position vector in the first gbuffer texture
|
|
gPosition = fragPosition;
|
|
// also store the per-fragment normals into the gbuffer
|
|
gNormal = normalize(fragNormal);
|
|
// and the diffuse per-fragment color
|
|
gAlbedoSpec.rgb = texture(diffuseTexture, fragTexCoord).rgb;
|
|
// store specular intensity in gAlbedoSpec's alpha component
|
|
gAlbedoSpec.a = texture(specularTexture, fragTexCoord).r;
|
|
}
|