Fixed a crash in the collada 1.4 loader, also added better texture search.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1250 dfc29bdd-3216-0410-991c-e03cc46cb475master
parent
f978f537f9
commit
81e8956dd5
|
@ -487,8 +487,6 @@ void CColladaFileLoader::readLibrarySection(io::IXMLReaderUTF8* reader)
|
||||||
CScenePrefab p("");
|
CScenePrefab p("");
|
||||||
|
|
||||||
readNodeSection(reader, SceneManager->getRootSceneNode(), &p);
|
readNodeSection(reader, SceneManager->getRootSceneNode(), &p);
|
||||||
for (u32 i=0; i<p.Childs.size(); ++i)
|
|
||||||
Prefabs.push_back(p.Childs[i]);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
if (effectSectionName == reader->getNodeName())
|
if (effectSectionName == reader->getNodeName())
|
||||||
|
@ -2494,7 +2492,11 @@ video::ITexture* CColladaFileLoader::getTextureFromImage(core::stringc uri)
|
||||||
if (uri == Images[i].Id)
|
if (uri == Images[i].Id)
|
||||||
{
|
{
|
||||||
if (Images[i].Source.size() && Images[i].SourceIsFilename)
|
if (Images[i].Source.size() && Images[i].SourceIsFilename)
|
||||||
return driver->getTexture(Images[i].Source.c_str());
|
{
|
||||||
|
if (FileSystem->existFile(Images[i].Source.c_str()))
|
||||||
|
return driver->getTexture(Images[i].Source.c_str());
|
||||||
|
return driver->getTexture((FileSystem->getFileDir(CurrentlyLoadingMesh)+"/"+Images[i].Source).c_str());
|
||||||
|
}
|
||||||
else
|
else
|
||||||
if (Images[i].Source.size())
|
if (Images[i].Source.size())
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue