diff --git a/Demos/BspDemo/BspDemo.cpp b/Demos/BspDemo/BspDemo.cpp index 548d97e9e..a8fdb7494 100644 --- a/Demos/BspDemo/BspDemo.cpp +++ b/Demos/BspDemo/BspDemo.cpp @@ -181,6 +181,13 @@ void BspDemo::initPhysics(const char* bspfilename) file = fopen(bspfilename,"r"); } if (!file) + { + + //try again other path, cmake needs 4 levels deep back... + bspfilename = "../../../../BspDemo.bsp"; + file = fopen(bspfilename,"r"); + } + if (!file) { //try again other path, //sight... visual studio leaves the current working directory in the projectfiles folder diff --git a/Demos/CharacterDemo/CharacterDemo.cpp b/Demos/CharacterDemo/CharacterDemo.cpp index 97763f441..cddd22196 100644 --- a/Demos/CharacterDemo/CharacterDemo.cpp +++ b/Demos/CharacterDemo/CharacterDemo.cpp @@ -103,6 +103,12 @@ void CharacterDemo::initPhysics() FILE* file = fopen(bspfilename,"r"); if (!file) + { + //cmake generated visual studio projects need 4 levels back + bspfilename = "../../../../BspDemo.bsp"; + file = fopen(bspfilename,"r"); + } + if (!file) { //visual studio leaves the current working directory in the projectfiles folder bspfilename = "../../BspDemo.bsp"; diff --git a/Demos/ConvexDecompositionDemo/ConvexDecompositionDemo.cpp b/Demos/ConvexDecompositionDemo/ConvexDecompositionDemo.cpp index e6b66ea99..4faadd5d5 100644 --- a/Demos/ConvexDecompositionDemo/ConvexDecompositionDemo.cpp +++ b/Demos/ConvexDecompositionDemo/ConvexDecompositionDemo.cpp @@ -169,6 +169,11 @@ void ConvexDecompositionDemo::initPhysics(const char* filename) //when running this app from visual studio, the default starting folder is different, so make a second attempt... tcount = wo.loadObj("../../file.obj"); } + if (!tcount) + { + //cmake generated msvc files need 4 levels deep back... so make a 3rd attempt... + tcount = wo.loadObj("../../../../file.obj"); + } diff --git a/Demos/SerializeDemo/SerializeDemo.cpp b/Demos/SerializeDemo/SerializeDemo.cpp index f8a200148..f9e421718 100644 --- a/Demos/SerializeDemo/SerializeDemo.cpp +++ b/Demos/SerializeDemo/SerializeDemo.cpp @@ -260,9 +260,13 @@ void SerializeDemo::initPhysics() btBulletWorldImporter* fileLoader = new btBulletWorldImporter(m_dynamicsWorld); //fileLoader->setVerboseMode(true); - if (fileLoader->loadFile("testFile.bullet")) + if (!fileLoader->loadFile("testFile.bullet")) { - printf("loaded fine\n"); + //cmake generated msvc files need 4 levels deep back... so make a 3rd attempt... + if (fileLoader->loadFile("../../../../testFileOriginal.bullet")) + { + printf("loaded fine\n"); + } } diff --git a/testFileOriginal.bullet b/testFileOriginal.bullet new file mode 100644 index 000000000..b94637973 Binary files /dev/null and b/testFileOriginal.bullet differ