From abde81c527843c47af1d35a2bb19e212898dc81c Mon Sep 17 00:00:00 2001 From: Lendemor Date: Wed, 16 Mar 2016 16:06:53 +0100 Subject: [PATCH] to debug : unknown segfault --- .gitignore | 3 ++- src/main.cpp | 10 ++++++---- src/tools/loader.cpp | 18 ++++++++++-------- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 2ce6cc3..a5294f0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ build* -*.user \ No newline at end of file +*.user +data/* diff --git a/src/main.cpp b/src/main.cpp index 9eb1c9e..553a57f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,9 +7,10 @@ #include "tools/graph.h" #include "tools/pathfinder.h" +#include "tools/loader.h" int main(){ - CameraNode camera; + /* CameraNode camera; RESOURCE_ADD(&camera, SceneNode, "camera"); Scene scene("testScene"); @@ -19,9 +20,9 @@ int main(){ //engine.getRenderer()->setCamera(&camera); engine.createWindow("test"); engine.setScene("testScene"); - engine.start(); + engine.start();*/ - GraphNode n1 = GraphNode(); + /* GraphNode n1 = GraphNode(); n1.setValue(1); GraphNode n2 = GraphNode(); n2.setValue(2); @@ -43,5 +44,6 @@ int main(){ std::cout << "Path Size: " << path.size() << std::endl; for(GraphNode* gn: path){ std::cout << gn->getValue() << std::endl; - } + }*/ + std::vector meshes = Loader::loadMesh("/data/Qt_workspace/sparrowengine/data/boulder.obj"); } diff --git a/src/tools/loader.cpp b/src/tools/loader.cpp index fe3d85d..e121354 100644 --- a/src/tools/loader.cpp +++ b/src/tools/loader.cpp @@ -7,9 +7,10 @@ #include #include #include -//#include #include "../sparrowrenderer/src/texture.h" +#include + std::string* Loader::loadTextFile(const std::string &filename) { std::ifstream t(filename); @@ -48,16 +49,15 @@ Image* Loader::loadImage(const std::string &filename, bool hasAlpha) std::vector Loader::loadMesh(const std::string &filename){ std::vector meshes; - //MeshLoader* loader = new MeshLoader(wavefrontFilename); - //loader->textureLoader.setTexturePath(fileInfo.absolutePath()); + std::vector pos; std::vector norm; std::vector tex; -// char line[LINEBUFFER_LENGTH]; std::string line; Material* defaultMat = RESOURCE_GET(Material, "default"); + if(defaultMat == NULL) { defaultMat = new PhongMaterial(); @@ -150,8 +150,8 @@ std::vector Loader::loadMesh(const std::string &filename){ break; case 'm': // mtllib { - std::string mat_filename; - std::sscanf(line.c_str(),"m %s",mat_filename); + char* mat_filename; + std::sscanf(line.c_str(),"mtllib %s",mat_filename); loadMTL(mat_filename); break; } @@ -204,13 +204,15 @@ std::vector split(const std::string &line, char sep){ //load MTL bool Loader::loadMTL(const std::string &filename) { -// char line[1024]; std::string line; std::ifstream file(filename); + std::string foo = filename; + std::cout << foo; if(!file.is_open()) { - fprintf(stderr, "can't load %s.\n", filename.c_str()); + std::wcout << "filename" << std::endl; +// fprintf(stderr, "can't load %s.\n", filename.c_str()); return false; }