From 5798fb0204f4798a3b42312da78be7669779d92f Mon Sep 17 00:00:00 2001 From: omniscient <17525998+omnisci3nce@users.noreply.github.com> Date: Sat, 9 Mar 2024 16:33:55 +1100 Subject: add shaders --- assets/shaders/blinn_phong.frag | 21 +++++++++++++++++++++ assets/shaders/blinn_phong.vert | 26 ++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 assets/shaders/blinn_phong.frag create mode 100644 assets/shaders/blinn_phong.vert (limited to 'assets') diff --git a/assets/shaders/blinn_phong.frag b/assets/shaders/blinn_phong.frag new file mode 100644 index 0000000..a284948 --- /dev/null +++ b/assets/shaders/blinn_phong.frag @@ -0,0 +1,21 @@ +#version 410 core +out vec4 FragColor; + +// A Blinn-Phong material with textures for diffuse and specular +// lighting maps and a numeric shininess factor. +struct Material { + sampler2D diffuse; + sampler2D specular; + float shininess; +}; + +in VS_OUT { + vec3 FragPos; + vec3 Normal; + vec2 TexCoords; + vec4 FragPosLightSpace; +} fs_in; + +void main() { + FragColor = vec4(1.0); +} \ No newline at end of file diff --git a/assets/shaders/blinn_phong.vert b/assets/shaders/blinn_phong.vert new file mode 100644 index 0000000..6028178 --- /dev/null +++ b/assets/shaders/blinn_phong.vert @@ -0,0 +1,26 @@ +#version 410 core +// Inputs +layout (location = 0) in vec3 inPos; +layout (location = 1) in vec3 inNormal; +layout (location = 2) in vec2 inTexCoords; + +uniform mat4 model; +uniform mat4 view; +uniform mat4 projection; +uniform mat4 lightSpaceMatrix; + +// Output +out VS_OUT { + vec3 FragPos; + vec3 Normal; + vec2 TexCoords; + vec4 FragPosLightSpace; +} vs_out; + +void main() { + vs_out.FragPos = vec3(model * vec4(inPos, 1.0)); + vs_out.Normal = inNormal; + vs_out.TexCoords = inTexCoords; + vs_out.FragPosLightSpace = lightSpaceMatrix * vec4(vs_out.FragPos, 1.0); + gl_Position = projection * view * model * vec4(inPos, 1.0); +} \ No newline at end of file -- cgit v1.2.3-70-g09d2