git-svn-id: svn://db.shs.com.ru/libs@42 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2015-11-16 18:20:13 +00:00
parent c27e345c51
commit ddcd5c716a
18 changed files with 389 additions and 158 deletions

View File

@@ -43,12 +43,25 @@ bool GLTextureManager::loadTextures() {
void GLTextureManager::deleteTextures() {
QList<GLuint> texs = tex_ids.values();
qDebug() << "[TextureManager] Delete" << texs.size() << "textures";
if (!texs.isEmpty()) glDeleteTextures(texs.size(), &texs[0]);
tex_ids.clear();
for (int i = 0; i < 2; ++i) {
QList<GLuint> texs = tex_ids[i].values();
qDebug() << "[TextureManager] Delete" << texs.size() << "textures";
if (!texs.isEmpty()) glDeleteTextures(texs.size(), &texs[0]);
tex_ids[i].clear();
}
qDebug() << "[TextureManager] Delete" << anim_ids.size() << "animations";
for (int i = 0; i < anim_ids.size(); ++i)
glDeleteTextures(anim_ids[i].second.bitmaps.size(), anim_ids[i].second.bitmaps.data());
anim_ids.clear();
}
void GLTextureManager::deleteTexture(const QString & name) {
for (int i = 0; i < 2; ++i) {
if (tex_ids[i].contains(name)) {
GLuint id = tex_ids[i][name];
glDeleteTextures(1, &id);
tex_ids[i].remove(name);
}
}
}