Commit 940d2e42 authored by cutealien's avatar cutealien

Fix a bug in new meshtextureloader - don't set old TEXTURE_PATHS always but...

Fix a bug in new meshtextureloader - don't set old TEXTURE_PATHS always but only if people still use those parameters or we overwrite the new way to set paths.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@4710 dfc29bdd-3216-0410-991c-e03cc46cb475
parent a969bed7
...@@ -1036,7 +1036,8 @@ void CB3DMeshFileLoader::loadTextures(SB3dMaterial& material) const ...@@ -1036,7 +1036,8 @@ void CB3DMeshFileLoader::loadTextures(SB3dMaterial& material) const
{ {
if ( getMeshTextureLoader() ) if ( getMeshTextureLoader() )
{ {
getMeshTextureLoader()->setTexturePath( SceneManager->getParameters()->getAttributeAsString(B3D_TEXTURE_PATH) ); if ( SceneManager->getParameters()->existsAttribute(B3D_TEXTURE_PATH) )
getMeshTextureLoader()->setTexturePath( SceneManager->getParameters()->getAttributeAsString(B3D_TEXTURE_PATH) );
} }
const bool previous32BitTextureFlag = SceneManager->getVideoDriver()->getTextureCreationFlag(video::ETCF_ALWAYS_32_BIT); const bool previous32BitTextureFlag = SceneManager->getVideoDriver()->getTextureCreationFlag(video::ETCF_ALWAYS_32_BIT);
......
...@@ -412,7 +412,10 @@ namespace scene ...@@ -412,7 +412,10 @@ namespace scene
scene::IMesh* CCSMLoader::createIrrlichtMesh(const CSMFile* csmFile, const io::path& lmprefix) scene::IMesh* CCSMLoader::createIrrlichtMesh(const CSMFile* csmFile, const io::path& lmprefix)
{ {
if ( getMeshTextureLoader() ) if ( getMeshTextureLoader() )
getMeshTextureLoader()->setTexturePath( SceneManager->getParameters()->getAttributeAsString(CSM_TEXTURE_PATH) ); {
if ( SceneManager->getParameters()->existsAttribute(CSM_TEXTURE_PATH) )
getMeshTextureLoader()->setTexturePath( SceneManager->getParameters()->getAttributeAsString(CSM_TEXTURE_PATH) );
}
scene::SMesh *pMesh = new scene::SMesh(); scene::SMesh *pMesh = new scene::SMesh();
video::IVideoDriver* driver = SceneManager->getVideoDriver(); video::IVideoDriver* driver = SceneManager->getVideoDriver();
......
...@@ -333,7 +333,10 @@ void CLMTSMeshFileLoader::loadTextures(SMesh* mesh) ...@@ -333,7 +333,10 @@ void CLMTSMeshFileLoader::loadTextures(SMesh* mesh)
id2id.reallocate(Header.TextureCount); id2id.reallocate(Header.TextureCount);
if ( getMeshTextureLoader() ) if ( getMeshTextureLoader() )
getMeshTextureLoader()->setTexturePath(Parameters->getAttributeAsString(LMTS_TEXTURE_PATH)); {
if ( Parameters->existsAttribute(LMTS_TEXTURE_PATH) )
getMeshTextureLoader()->setTexturePath(Parameters->getAttributeAsString(LMTS_TEXTURE_PATH));
}
core::stringc s; core::stringc s;
for (u32 t=0; t<Header.TextureCount; ++t) for (u32 t=0; t<Header.TextureCount; ++t)
......
...@@ -84,7 +84,8 @@ IAnimatedMesh* CMY3DMeshFileLoader::createMesh(io::IReadFile* file) ...@@ -84,7 +84,8 @@ IAnimatedMesh* CMY3DMeshFileLoader::createMesh(io::IReadFile* file)
if ( getMeshTextureLoader() ) if ( getMeshTextureLoader() )
{ {
getMeshTextureLoader()->setMeshFile(file); getMeshTextureLoader()->setMeshFile(file);
getMeshTextureLoader()->setTexturePath(SceneManager->getParameters()->getAttributeAsString(MY3D_TEXTURE_PATH)); if ( SceneManager->getParameters()->existsAttribute(MY3D_TEXTURE_PATH) )
getMeshTextureLoader()->setTexturePath(SceneManager->getParameters()->getAttributeAsString(MY3D_TEXTURE_PATH));
} }
MaterialEntry.clear(); MaterialEntry.clear();
......
...@@ -487,7 +487,8 @@ void COBJMeshFileLoader::readMTL(const c8* fileName, const io::path& relPath) ...@@ -487,7 +487,8 @@ void COBJMeshFileLoader::readMTL(const c8* fileName, const io::path& relPath)
if ( getMeshTextureLoader() ) if ( getMeshTextureLoader() )
{ {
getMeshTextureLoader()->setMaterialFile(mtlReader); getMeshTextureLoader()->setMaterialFile(mtlReader);
getMeshTextureLoader()->setTexturePath(SceneManager->getParameters()->getAttributeAsString(OBJ_TEXTURE_PATH)); if ( SceneManager->getParameters()->existsAttribute(OBJ_TEXTURE_PATH) )
getMeshTextureLoader()->setTexturePath(SceneManager->getParameters()->getAttributeAsString(OBJ_TEXTURE_PATH));
} }
const long filesize = mtlReader->getSize(); const long filesize = mtlReader->getSize();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment