trying to fix the crash
This commit is contained in:
parent
0bbc0da324
commit
1d5d20cfb8
|
@ -29,7 +29,7 @@ private:
|
||||||
QVector<DrawInformation> m_drawList;
|
QVector<DrawInformation> m_drawList;
|
||||||
BoundingBox m_boundings;
|
BoundingBox m_boundings;
|
||||||
|
|
||||||
void loadTexture(const char* filePath);
|
void loadTexture(const char* filePath, const char* fileName);
|
||||||
void clearData();
|
void clearData();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|
|
@ -98,7 +98,7 @@ void GeometryEngine::loadFile(const char* filePath)
|
||||||
emit sendMessage("loading textures..", 0);
|
emit sendMessage("loading textures..", 0);
|
||||||
// load the textures
|
// load the textures
|
||||||
for(auto& it : *textureNames)
|
for(auto& it : *textureNames)
|
||||||
loadTexture(std::string(path + it).c_str());
|
loadTexture(path.c_str(), it.c_str());
|
||||||
|
|
||||||
emit requestUpdate();
|
emit requestUpdate();
|
||||||
emit sendMessage("done..", 0);
|
emit sendMessage("done..", 0);
|
||||||
|
@ -109,11 +109,26 @@ void GeometryEngine::loadFile(const char* filePath)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void GeometryEngine::loadTexture(const char* filePath)
|
void GeometryEngine::loadTexture(const char* filePath, const char* fileName)
|
||||||
{
|
{
|
||||||
bool loadSuccess;
|
bool loadSuccess(false);
|
||||||
QImage img = loadTga(filePath, loadSuccess);
|
QImage img;
|
||||||
|
|
||||||
|
//if (!strcmp(fileName, ""))
|
||||||
|
//{
|
||||||
|
// img = QImage(1, 1, QImage::Format_RGB32);
|
||||||
|
// img.fill(Qt::red);
|
||||||
|
//}
|
||||||
|
//else
|
||||||
|
img = loadTga((std::string(filePath) + std::string(fileName)).c_str(), loadSuccess);
|
||||||
|
|
||||||
|
//TODO: emit if not successfull
|
||||||
|
if (!loadSuccess)
|
||||||
|
{
|
||||||
|
QString msg = "WARNING: texture not found or corrupted: ";
|
||||||
|
msg += QString(fileName);
|
||||||
|
emit sendMessage(msg, 1);
|
||||||
|
}
|
||||||
// Load image to OglTexture
|
// Load image to OglTexture
|
||||||
QOpenGLTexture* new_texture = new QOpenGLTexture(img.mirrored());
|
QOpenGLTexture* new_texture = new QOpenGLTexture(img.mirrored());
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,9 @@ Feel free to use my code the way you like. But remember i used some public libra
|
||||||
licence, too.
|
licence, too.
|
||||||
|
|
||||||
### To Do
|
### To Do
|
||||||
- tga with RLE cannot be opend
|
- loading 2 corrupted tga files => crash
|
||||||
|
- every mesh has empty tga => corrupted
|
||||||
|
- add default texture at the end
|
||||||
- optional display bones, shadow, collision,...
|
- optional display bones, shadow, collision,...
|
||||||
- integrate into a software:
|
- integrate into a software:
|
||||||
-> list all msh under a directory,
|
-> list all msh under a directory,
|
||||||
|
|
Loading…
Reference in New Issue