diff --git a/3-mid/opengl/assets/shader/lit_colored_skinned.frag b/3-mid/opengl/assets/shader/lit_colored_skinned.frag deleted file mode 100644 index 422287b..0000000 --- a/3-mid/opengl/assets/shader/lit_colored_skinned.frag +++ /dev/null @@ -1,50 +0,0 @@ -// Include 'version.header'. -// Include 'lighting-frag.snippet' - - - -in vec3 frag_Site; -in vec3 frag_Normal; -in vec4 frag_Color; - -uniform mat4 model_Transform; -uniform mat3 inverse_model_Rotation; -uniform vec3 camera_Site; - -out vec4 final_Color; - - - -void -main() -{ - vec3 surface_Site = vec3 ( model_Transform - * vec4 (frag_Site, 1)); - vec4 surface_Color = frag_Color; - - vec3 Surface_to_Camera = normalize (camera_Site - surface_Site); - vec3 Normal = normalize ( frag_Normal - * inverse_model_Rotation); - - // Combine color from all the lights. - // - vec3 linear_Color = vec3 (0); - - for (int i = 0; i < light_Count; ++i) - { - linear_Color += apply_Light (Lights [i], - surface_Color.rgb, - Normal, - surface_Site, - Surface_to_Camera); - } - - vec3 Gamma = vec3 (1.0 / 2.2); - - final_Color = vec4 (pow (linear_Color, // Final color (after gamma correction). - Gamma), - surface_Color.a); - - final_Color = min (final_Color, // Prevent light saturation. - surface_Color); -} \ No newline at end of file diff --git a/3-mid/opengl/source/lean/geometry/opengl-geometry-lit_colored_skinned.adb b/3-mid/opengl/source/lean/geometry/opengl-geometry-lit_colored_skinned.adb index 15af306..4c73483 100644 --- a/3-mid/opengl/source/lean/geometry/opengl-geometry-lit_colored_skinned.adb +++ b/3-mid/opengl/source/lean/geometry/opengl-geometry-lit_colored_skinned.adb @@ -112,7 +112,7 @@ is vertex_Shader .define (Shader.Vertex, "assets/opengl/shader/lit_colored_skinned.vert"); fragment_Shader.define (Shader.Fragment, (asset_Names' (1 => to_Asset ("assets/opengl/shader/version.header"), 2 => to_Asset ("assets/opengl/shader/lighting-frag.snippet"), - 3 => to_Asset ("assets/opengl/shader/lit_colored_skinned.frag")))); + 3 => to_Asset ("assets/opengl/shader/lit_colored.frag")))); the_Program.define ( vertex_Shader'Access, fragment_Shader'Access); the_Program.enable;