X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=src%2Fmaterial.cc;h=6b10534581ef6f31661f72f67bda66f0172bd61a;hp=f893175dc579a4387a496b7b273414770a78ae21;hb=21f74bf587d9b7a76bc1ee83db02cb8c243dc567;hpb=84f1549d8146ac54574256ae0243747199e51151 diff --git a/src/material.cc b/src/material.cc index f893175..6b10534 100644 --- a/src/material.cc +++ b/src/material.cc @@ -34,13 +34,29 @@ void Material::setup() const void Material::add_texture(Texture *tex, int type) { - textures.push_back(tex); + if(std::find(textures.begin(), textures.end(), tex) == textures.end()) { + textures.push_back(tex); + } if(type != MTL_TEX_UNKNOWN) { stdtex[type] = tex; } } +void Material::remove_texture(Texture *tex) +{ + std::vector::iterator it = std::find(textures.begin(), textures.end(), tex); + if(it != textures.end()) { + textures.erase(it); + } + + for(int i=0; i