void init() { glClearColor(0.0, 0.0, 0.0, 1.0); glClearDepth(1.0); glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glEnable(GL_DEPTH_TEST); GLfloat light_position[] = { 1.0, 1.0, 1.0, 0.0 }; GLfloat light_specular[] = {1.0, 1.0, 0.0,1.0}; GLfloat light_diffuse[] = {0.50, 0.50, 0.5,1.0}; GLfloat mat_specular[] = { 0.8, 0.5, 0.5, 1.0 }; GLfloat mat_shininess[] = { 20.0 }; GLfloat mat_ambient[] = { 0.2, 0.4, 0.99, 1.0 }; GLfloat mat_diffuse[] = { 0.4, 0.4, 0.4, 1.0 }; glShadeModel (GL_SMOOTH); glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient); glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse); glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); glLightfv(GL_LIGHT0, GL_POSITION, light_position); glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular); glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse); cam = new Camera(90); cam->resetView(width, height); mesh = new Mesh(); OBJReader r = OBJReader("cow.obj", mesh); r.readObj(); }
int main (int argc, char** argv) { OBJReader reader; PointCloud cloud; Octree octree (10); reader.read (argv[1], cloud); std::cout << "size:" << cloud.size () << std::endl; octree.add (cloud); std::cout << "leafs:" << octree.getLeafCount () << std::endl; return 0; }
void OBJBaker::bakeOBJ() { // Read the OBJ file QFile objFile(_originalModelFilePath); if (!objFile.open(QIODevice::ReadOnly)) { handleError("Error opening " + _originalModelFilePath + " for reading"); return; } QByteArray objData = objFile.readAll(); bool combineParts = true; // set true so that OBJReader reads material info from material library OBJReader reader; auto geometry = reader.readOBJ(objData, QVariantHash(), combineParts, _modelURL); // Write OBJ Data as FBX tree nodes createFBXNodeTree(_rootNode, *geometry); checkIfTexturesFinished(); }
bool BaseJOTapp::load_obj_file(Cstr_ptr &file) { // read an .obj file ifstream obj_stream(**file); if (!obj_stream.is_open()) { cerr << "BaseJOTapp::load_obj_file: error: couldn't open .obj file" << endl; return 0; } OBJReader reader; if (!reader.read(obj_stream)) { cerr << "BaseJOTapp::load_obj_file: error: couldn't understand .obj file" << endl; return 0; } BMESHptr mesh = new_mesh(); reader.get_mesh(mesh); return create_mesh(mesh, file); }