blob: 80a81863212e04219adda92a4169b68bd35c5530 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#include "texturemanager.h"
LGLTextureManager::LGLTextureManager() {
}
void LGLTextureManager::setup(QGLWidget *gl, const LYTLayout *layout) {
// TODO: code to cleanup previous stuff
//m_gl = gl;
m_layout = layout;
m_package = &layout->package();
QStringList textures = layout->generateTextureRefs();
foreach (const QString &texName, textures) {
qDebug() << texName;
QByteArray tplData = m_package->getTexture(texName);
QDataStream tplStream(tplData);
WiiTexPalette tpl(tplStream);
const QImage &image = tpl.textures.first().image;
image.save(QString("tpl/%2__%1.png").arg(texName).arg((int)tpl.textures.first().format));
// dirty, dirty hack, TODO: FIXME
GLuint tex = gl->bindTexture(image, GL_TEXTURE_2D);
m_textures.insert(texName, tex);
m_images.insert(texName, image);
}
}
|