X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fmaterials%2Funlitmaterial.cpp;h=d5d99c01f2196a67ca6204ef8d7f9b22a34bebb4;hb=ae45c0397e2cb8f0a01f2f31d01c95ff3870271e;hp=9aded2522972250cc76b1efcc3b0a745916b4461;hpb=842c817bb679a5a0abc05e8149e2e6e0ae1a0412;p=libs%2Fgl.git diff --git a/source/materials/unlitmaterial.cpp b/source/materials/unlitmaterial.cpp index 9aded252..d5d99c01 100644 --- a/source/materials/unlitmaterial.cpp +++ b/source/materials/unlitmaterial.cpp @@ -5,11 +5,17 @@ using namespace std; namespace Msp { namespace GL { +const Tag UnlitMaterial::texture_tags[] = +{ + Tag("color_tex"), + Tag() +}; + UnlitMaterial::UnlitMaterial(): texture(0), vertex_color(false) { - set_tint(Color(1.0f)); + set_color(Color(1.0f)); } void UnlitMaterial::fill_program_info(string &module_name, map &spec_values) const @@ -19,9 +25,12 @@ void UnlitMaterial::fill_program_info(string &module_name, map &spe spec_values["use_vertex_color"] = vertex_color; } -void UnlitMaterial::attach_textures_to(Texturing &texturing, ProgramData &tex_shdata) const +const Texture *UnlitMaterial::get_texture(Tag tag) const { - attach_texture_to(texture, texturing, tex_shdata, "texture"); + if(tag==texture_tags[0]) + return texture; + else + return 0; } void UnlitMaterial::set_texture(const Texture *tex) @@ -29,10 +38,10 @@ void UnlitMaterial::set_texture(const Texture *tex) texture = tex; } -void UnlitMaterial::set_tint(const Color &t) +void UnlitMaterial::set_color(const Color &c) { - tint = t; - shdata.uniform("tint", tint); + color = c; + shdata.uniform("unlit_material.color", color); } void UnlitMaterial::set_vertex_color(bool vc) @@ -43,12 +52,6 @@ void UnlitMaterial::set_vertex_color(bool vc) DataFile::Loader::ActionMap UnlitMaterial::Loader::shared_actions; -UnlitMaterial::Loader::Loader(UnlitMaterial &m): - DerivedObjectLoader >(m) -{ - set_actions(shared_actions); -} - UnlitMaterial::Loader::Loader(UnlitMaterial &m, Collection &c): DerivedObjectLoader >(m, c) { @@ -59,7 +62,7 @@ void UnlitMaterial::Loader::init_actions() { Material::PropertyLoader::init_actions(); add("texture", &Loader::property_texture, &UnlitMaterial::set_texture); - add_property("tint", &UnlitMaterial::set_tint, 0, true); + add_property("color", &UnlitMaterial::set_color, 0, true); add("vertex_color", &UnlitMaterial::vertex_color); }