This commit is contained in:
Abdelrahman Said 2024-09-15 04:57:28 +01:00
parent bf3a3ea02b
commit 4526c514e9
2 changed files with 11 additions and 11 deletions

View File

@ -1,6 +1,6 @@
#include "shaders.h"
#include "aliases.h"
#include "depth_shader.h"
#include "shadow_shader.h"
#include "main_shader.h"
#include "render.h"
#include "shader.h"
@ -12,9 +12,9 @@ ShaderID perspective_albedo = {0};
ShaderID orthographic_diffuse = {0};
ShaderID orthographic_albedo = {0};
internal DepthShader depth_shader = {0};
internal Shader perspective = {0};
internal Shader orthographic = {0};
internal ShadowShader depth_shader = {0};
internal Shader perspective = {0};
internal Shader orthographic = {0};
internal V3f g_ambient_light = {0.1f, 0.1f, 0.1f};
internal V3f g_eye = {0.2f, -0.1f, 0.5f};
@ -37,7 +37,7 @@ void load_shaders(M4x4f vp) {
depth_shader.light_dir = mat3x3_mul_vec3(depth_shader.proj_mv, g_light_dir);
normalise_v3(depth_shader.light_dir);
// Set up main shaders matrices
// Set up main shader matrices
M4x4f model_view = lookat(g_eye, g_target, g_up);
M4x4f orthographic_projection = get_projection_matrix(PROJECTION_TYPE_ORTHOGRAPHIC);
M4x4f perspective_projection = get_projection_matrix(PROJECTION_TYPE_PERSPECTIVE);
@ -48,10 +48,10 @@ void load_shaders(M4x4f vp) {
perspective.viewport = vp;
perspective.final = mat4x4_mul(perspective.viewport, perspective.proj_mv);
perspective.final_inv = mat4x4_inv(perspective.final);
perspective.shadow_matrix = mat4x4_mul(depth_shader.final, perspective.final_inv);
perspective.ambient = g_ambient_light;
perspective.light_dir = mat3x3_mul_vec3(perspective.proj_mv, g_light_dir);
normalise_v3(perspective.light_dir);
perspective.ambient = g_ambient_light;
perspective.shadow_matrix = mat4x4_mul(depth_shader.final, perspective.final_inv);
// Set up orthographic shader
orthographic.proj_mv = mat4x4_mul(orthographic_projection, model_view);
@ -65,9 +65,9 @@ void load_shaders(M4x4f vp) {
orthographic.ambient = g_ambient_light;
// Register shaders
depth = register_shader(&depth_shader, depth_shader_vertex, depth_shader_fragment);
perspective_diffuse = register_shader(&perspective, general_shader_vertex, diffuse_shader_fragment);
perspective_albedo = register_shader(&perspective, general_shader_vertex, albedo_shader_fragment);
depth = register_shader(&depth_shader, shadow_shader_vertex, shadow_shader_fragment);
perspective_diffuse = register_shader(&perspective, general_shader_vertex, diffuse_shader_fragment);
perspective_albedo = register_shader(&perspective, general_shader_vertex, albedo_shader_fragment);
orthographic_diffuse = register_shader(&orthographic, general_shader_vertex, diffuse_shader_fragment);
orthographic_albedo = register_shader(&orthographic, general_shader_vertex, albedo_shader_fragment);
}

View File

@ -3,11 +3,11 @@
#include "shader.h"
extern ShaderID depth;
extern ShaderID perspective_diffuse;
extern ShaderID perspective_albedo;
extern ShaderID orthographic_diffuse;
extern ShaderID orthographic_albedo;
extern ShaderID depth;
void load_shaders(M4x4f vp);