Lightmap example. (#3043)
This commit is contained in:
parent
a48bb6e1ed
commit
abcbd9817e
7 changed files with 218 additions and 0 deletions
20
examples/shaders/resources/shaders/glsl330/lightmap.fs
Normal file
20
examples/shaders/resources/shaders/glsl330/lightmap.fs
Normal file
|
@ -0,0 +1,20 @@
|
|||
#version 330
|
||||
// Input vertex attributes (from vertex shader)
|
||||
in vec2 fragTexCoord;
|
||||
in vec2 fragTexCoord2;
|
||||
in vec3 fragPosition;
|
||||
in vec4 fragColor;
|
||||
|
||||
// Input uniform values
|
||||
uniform sampler2D texture0;
|
||||
uniform sampler2D texture1;
|
||||
|
||||
// Output fragment color
|
||||
out vec4 finalColor;
|
||||
|
||||
void main() {
|
||||
// Texel color fetching from texture sampler
|
||||
vec4 texelColor = texture( texture0, fragTexCoord );
|
||||
vec4 texelColor2 = texture( texture1, fragTexCoord2 );
|
||||
finalColor = texelColor * texelColor2;
|
||||
}
|
27
examples/shaders/resources/shaders/glsl330/lightmap.vs
Normal file
27
examples/shaders/resources/shaders/glsl330/lightmap.vs
Normal file
|
@ -0,0 +1,27 @@
|
|||
#version 330
|
||||
// Input vertex attributes
|
||||
in vec3 vertexPosition;
|
||||
in vec2 vertexTexCoord;
|
||||
in vec2 vertexTexCoord2;
|
||||
in vec4 vertexColor;
|
||||
|
||||
// Input uniform values
|
||||
uniform mat4 mvp;
|
||||
uniform mat4 matModel;
|
||||
|
||||
// Output vertex attributes (to fragment shader)
|
||||
out vec3 fragPosition;
|
||||
out vec2 fragTexCoord;
|
||||
out vec2 fragTexCoord2;
|
||||
out vec4 fragColor;
|
||||
|
||||
void main() {
|
||||
// Send vertex attributes to fragment shader
|
||||
fragPosition = vec3( matModel * vec4( vertexPosition, 1.0 ) );
|
||||
fragTexCoord = vertexTexCoord;
|
||||
fragTexCoord2 = vertexTexCoord2;
|
||||
fragColor = vertexColor;
|
||||
|
||||
// Calculate final vertex position
|
||||
gl_Position = mvp * vec4( vertexPosition, 1.0 );
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue