X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fmaterial.cc;h=6b10534581ef6f31661f72f67bda66f0172bd61a;hb=e6e1e5deb60ccbb4fa175066820d81ad1bf1cefa;hp=f893175dc579a4387a496b7b273414770a78ae21;hpb=d4d7f73284783d2a50d71014789d196bef7d0e0e;p=laserbrain_demo 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