std140 implementation

This commit is contained in:
ZY4N
2025-03-27 19:47:32 +01:00
parent 70893c083b
commit 6f60cc11c8
45 changed files with 789 additions and 234 deletions

View File

@@ -7,19 +7,45 @@
//------------[ Uniforms ]------------//
#ifdef TEXTURE
layout (location = 3) uniform sampler2D tex;
layout (binding = 0) uniform sampler2D tex;
#endif
#ifdef LIGHTING
layout (location = 5) uniform vec3 view_pos;
layout (location = 6) uniform vec3 point_light_direction;
layout (location = 7) uniform vec3 point_light_color;
layout (location = 8) uniform vec3 ambient_light_color;
layout (location = 9) uniform vec3 ambient_filter;
layout (location = 10) uniform vec3 diffuse_filter;
layout (location = 11) uniform vec3 specular_filter;
layout (location = 12) uniform float shininess;
// layout (location = 5) uniform vec3 view_pos;
// layout (location = 6) uniform vec3 point_light_direction;
// layout (location = 7) uniform vec3 point_light_color;
// layout (location = 8) uniform vec3 ambient_light_color;
// layout (location = 9) uniform vec3 ambient_filter;
// layout (location = 10) uniform vec3 diffuse_filter;
// layout (location = 11) uniform vec3 specular_filter;
// layout (location = 12) uniform float shininess;
#endif
layout (std140, binding = 0) uniform Material
{
uniform vec3 ambient_filter;
uniform vec3 diffuse_filter;
uniform vec3 specular_filter;
uniform float shininess;
uniform float alpha;
};
layout (std140, binding = 1) uniform Lighting
{
layout (location = 1) uniform mat4 model_matrix;
layout (location = 5) uniform vec3 view_pos;
layout (location = 6) uniform vec3 point_light_direction;
layout (location = 7) uniform vec3 point_light_color;
layout (location = 8) uniform vec3 ambient_light_color;
};
uniform sampler2D ambient_color_texture;
uniform sampler2D diffuse_color_texture;
uniform sampler2D specular_color_texture;
uniform sampler2D shininess_texture;
uniform sampler2D alpha_texture;
uniform sampler2D bump_texture;
//------------[ Inputs ]------------//
layout (location = 0) in vec4 frag_color;

View File

@@ -13,9 +13,11 @@
//------------[ Uniforms ]------------//
layout (location = 0) uniform mat4 mvp_matrix;
#ifdef LIGHTING
layout (location = 1) uniform mat4 model_matrix;
//layout (location = 1) uniform mat4 model_matrix;
#endif
// Can be replaced by material ambient filter, right?!?
#ifdef U_RGBA
layout (location = 4) uniform vec4 color;
#endif

View File

@@ -16,15 +16,20 @@ layout (location = 0) uniform mat4 mvp_matrix;
#ifdef LIGHTING
layout (location = 1) uniform mat4 model_matrix;
#endif
layout (location = 2) uniform float point_size;
#ifdef U_RGBA
layout (location = 4) uniform vec4 color;
#endif
#ifdef LIGHTING
layout (location = 5) uniform vec3 view_pos;
layout (location = 6) uniform vec3 point_light_direction;
layout (location = 7) uniform vec3 point_light_color;
layout (location = 8) uniform vec3 ambient_light_color;
layout (location = 9) uniform vec3 ambient_filter;
layout (location = 10) uniform vec3 diffuse_filter;
layout (location = 11) uniform vec3 specular_filter;

View File

@@ -14,13 +14,17 @@
//------------[ Uniforms ]------------//
layout (location = 0) uniform mat4 mvp_matrix;
layout (location = 1) uniform float point_size;
#ifdef U_RGBA
layout (location = 2) uniform vec4 color;
#endif
#ifdef LIGHTING
layout (location = 3) uniform mat4 model_matrix;
layout (location = 4) uniform vec3 camera_position;
#endif
#ifdef RAINBOW
layout (location = 5) uniform float rainbow_offset_y;
layout (location = 6) uniform float rainbow_scale_y;