]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/unlitmaterial.cpp
Use specialization constants in the builtin material shaders
[libs/gl.git] / source / materials / unlitmaterial.cpp
index 5eddd66997416438643003dd5efdc872a25ebbec..9aded2522972250cc76b1efcc3b0a745916b4461 100644 (file)
@@ -12,14 +12,11 @@ UnlitMaterial::UnlitMaterial():
        set_tint(Color(1.0f));
 }
 
-string UnlitMaterial::create_program_source() const
+void UnlitMaterial::fill_program_info(string &module_name, map<string, int> &spec_values) const
 {
-       string source = "import unlit;\n";
-       if(texture)
-               source += "const bool use_texture = true;\n";
-       if(vertex_color)
-               source += "const bool use_vertex_color = true;\n";
-       return source;
+       module_name = "unlit.glsl";
+       spec_values["use_texture"] = (texture!=0);
+       spec_values["use_vertex_color"] = vertex_color;
 }
 
 void UnlitMaterial::attach_textures_to(Texturing &texturing, ProgramData &tex_shdata) const