]> git.tdb.fi Git - libs/gl.git/blobdiff - shaderlib/msp_interface.glsl
Redesign the material system
[libs/gl.git] / shaderlib / msp_interface.glsl
index 5f391bb5fa882ca39897509974aba622c2b587c2..6a8ee8d8f63713260ff05b98879b8e7f30644505 100644 (file)
@@ -5,12 +5,13 @@ struct LightSourceParameters
        vec4 specular;
 };
 
-struct MaterialParameters
+struct BasicMaterialParameters
 {
-       vec4 ambient;
        vec4 diffuse;
        vec4 specular;
+       vec4 emission;
        float shininess;
+       float reflectivity;
 };
 
 struct ClipPlane
@@ -26,10 +27,9 @@ uniform Transform
        mat4 projection_matrix;
 };
 
-uniform Material
+uniform BasicMaterial
 {
-       MaterialParameters material;
-       float reflectivity;
+       BasicMaterialParameters basic_material;
 };
 
 uniform Lighting
@@ -45,6 +45,9 @@ uniform Lighting
 };
 
 uniform sampler2D diffuse_map;
+uniform sampler2D specular_map;
+uniform sampler2D shininess_map;
+uniform sampler2D emission_map;
 uniform sampler2D normal_map;
 
 uniform sampler2DShadow shadow;