From 669064e4a78a215b0e788d924a5b3593a8271315 Mon Sep 17 00:00:00 2001 From: Abdelrahman Date: Sun, 15 Sep 2024 04:55:40 +0100 Subject: [PATCH] Rename depth shader to shadow shader --- src/shader/depth_shader.h | 17 ----------------- src/shader/{depth_shader.c => shadow_shader.c} | 11 ++++++----- src/shader/shadow_shader.h | 17 +++++++++++++++++ 3 files changed, 23 insertions(+), 22 deletions(-) delete mode 100644 src/shader/depth_shader.h rename src/shader/{depth_shader.c => shadow_shader.c} (69%) create mode 100644 src/shader/shadow_shader.h diff --git a/src/shader/depth_shader.h b/src/shader/depth_shader.h deleted file mode 100644 index 13ac22c..0000000 --- a/src/shader/depth_shader.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef DEPTH_SHADER_H -#define DEPTH_SHADER_H - -#include "constants.h" -#include "shader.h" -#include "vec.h" - -typedef struct depth_shader DepthShader; -struct depth_shader { - #include "shader_base.inc" -}; - -VertexData depth_shader_vertex(void *shader, const VertexData *vert, u8 index, const Model *model); -FragmentResult depth_shader_fragment(void *shader, const V3f *barycentric, const V4f *colour, - const Model *model); - -#endif // !DEPTH_SHADER_H diff --git a/src/shader/depth_shader.c b/src/shader/shadow_shader.c similarity index 69% rename from src/shader/depth_shader.c rename to src/shader/shadow_shader.c index 907cef7..7914aa7 100644 --- a/src/shader/depth_shader.c +++ b/src/shader/shadow_shader.c @@ -1,22 +1,23 @@ -#include "depth_shader.h" +#include "shadow_shader.h" #include "constants.h" #include "shader.h" #include "utils.h" -VertexData depth_shader_vertex(void *shader, const VertexData *vert, u8 index, const Model *model) { - DepthShader *shdr = (DepthShader *)shader; +VertexData shadow_shader_vertex(void *shader, const VertexData *vert, u8 index, const Model *model) { + ShadowShader *shdr = (ShadowShader *)shader; V4f vh = V3_to_V4(vert->position); vh.y = 0.0 - vh.y; vh = mat4x4_mul_vec4(shdr->final, vh); + shdr->vertices[index].position = project_vec4(vh); return shdr->vertices[index]; } -FragmentResult depth_shader_fragment(void *shader, const V3f *barycentric, const V4f *colour, +FragmentResult shadow_shader_fragment(void *shader, const V3f *barycentric, const V4f *colour, const Model *model) { - DepthShader *shdr = (DepthShader *)shader; + ShadowShader *shdr = (ShadowShader *)shader; M3x3f pos_mat = {.rows = {shdr->vertices[0].position, shdr->vertices[1].position, shdr->vertices[2].position}}; pos_mat = mat3x3_transpose(pos_mat); diff --git a/src/shader/shadow_shader.h b/src/shader/shadow_shader.h new file mode 100644 index 0000000..f3a43f5 --- /dev/null +++ b/src/shader/shadow_shader.h @@ -0,0 +1,17 @@ +#ifndef SHADOW_SHADER_H +#define SHADOW_SHADER_H + +#include "constants.h" +#include "shader.h" +#include "vec.h" + +typedef struct shadow_shader ShadowShader; +struct shadow_shader { + #include "shader_base.inc" +}; + +VertexData shadow_shader_vertex(void *shader, const VertexData *vert, u8 index, const Model *model); +FragmentResult shadow_shader_fragment(void *shader, const V3f *barycentric, const V4f *colour, + const Model *model); + +#endif // !SHADOW_SHADER_H