Skip to content
Snippets Groups Projects
Commit 60cc7bb5 authored by Anakin's avatar Anakin
Browse files

fixed messed up textures of the cluster

parent 9abd2852
Branches
Tags
No related merge requests found
...@@ -131,6 +131,8 @@ void Object::analyseMsh2Chunks(std::list<ChunkHeader*>& chunkList) ...@@ -131,6 +131,8 @@ void Object::analyseMsh2Chunks(std::list<ChunkHeader*>& chunkList)
std::list<ChunkHeader*> tempMatdChunks; std::list<ChunkHeader*> tempMatdChunks;
loadChunks(tempMatdChunks, (*it)->position, (*it)->size); loadChunks(tempMatdChunks, (*it)->position, (*it)->size);
vTextures.push_back("");
// analyse MATD subchunks // analyse MATD subchunks
analyseMatdChunks(tempMatdChunks); analyseMatdChunks(tempMatdChunks);
...@@ -193,7 +195,7 @@ void Object::analyseMatdChunks(std::list<ChunkHeader*>& chunkList) ...@@ -193,7 +195,7 @@ void Object::analyseMatdChunks(std::list<ChunkHeader*>& chunkList)
char* buffer = new char[(*it)->size + 1]; char* buffer = new char[(*it)->size + 1];
*buffer = { 0 }; *buffer = { 0 };
fsMesh.read(buffer, (*it)->size); fsMesh.read(buffer, (*it)->size);
vTextures.push_back(buffer); vTextures.back() = buffer;
delete buffer; delete buffer;
continue; continue;
} }
...@@ -389,6 +391,8 @@ void Object::analyseSegmChunks(Modl * dataDestination, std::list<ChunkHeader*>& ...@@ -389,6 +391,8 @@ void Object::analyseSegmChunks(Modl * dataDestination, std::list<ChunkHeader*>&
/*if (!strcmp("NRML", (*it)->name)) /*if (!strcmp("NRML", (*it)->name))
{ {
fsMesh.seekg((*it)->position); fsMesh.seekg((*it)->position);
std::uint32_t tempSize;
fsMesh.read(reinterpret_cast<char*>(&tempSize), sizeof(tempSize));
// List of normals // List of normals
// long int - 4 - number of normal vectores stored in this list // long int - 4 - number of normal vectores stored in this list
// float[3][] - 12 each - UVW vector for each vertex // float[3][] - 12 each - UVW vector for each vertex
......
...@@ -324,7 +324,7 @@ void OpenGLController::updateScene() ...@@ -324,7 +324,7 @@ void OpenGLController::updateScene()
{ {
// give texture to the shader // give texture to the shader
std::uint32_t tempTexIndex = segIt->textureIndex >= vTextures.size() ? vTextures.size() - 1 : segIt->textureIndex; std::uint32_t tempTexIndex = segIt->textureIndex >= vTextures.size() ? vTextures.size() - 1 : segIt->textureIndex;
glTexImage2D( glTexImage2D(
GL_TEXTURE_2D, GL_TEXTURE_2D,
0, 0,
......
...@@ -17,7 +17,7 @@ int main(int argc, char** argv) ...@@ -17,7 +17,7 @@ int main(int argc, char** argv)
else else
scene = OpenGLController::getInstance(); scene = OpenGLController::getInstance();
scene->loadMsh("..\\Release\\Msh\\cluster.msh"); scene->loadMsh("..\\Release\\Msh\\quadPoly.msh");
do { do {
scene->updateScene(); scene->updateScene();
......
File added
File added
File added
File added
File added
File added
File added
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment