//**************************************************** // Simple init function //**************************************************** void initScene(){ glPolygonMode( GL_FRONT_AND_BACK, GL_LINE ); glEnable(GL_DEPTH_TEST); //glEnable(GL_LIGHTING); glLightfv(GL_LIGHT0, GL_AMBIENT, lights[0]); glLightfv(GL_LIGHT0, GL_DIFFUSE, lights[0]); glLightfv(GL_LIGHT0, GL_SPECULAR, lights[0]); GLfloat pos[] = {2000,2000,2000}; glLightfv(GL_LIGHT0, GL_POSITION, pos); glEnable(GL_LIGHT0); glShadeModel(GL_FLAT); object = glGenLists(1); for (int i = 0; i < appendages.size(); i++) { test.solveFK(appendages[i],0, 0.001, 0); } glNewList(object, GL_COMPILE); glLineWidth(1); glBegin(GL_LINES); glColor3f(1, 0, 0); glVertex3f(0,0,0); glVertex3f(100,0,0); glColor3f(0, 1, 0); glVertex3f(0,0,0); glVertex3f(0,100,0); glColor3f(0, 0, 1); glVertex3f(0,0,0); glVertex3f(0,0,100); glEnd(); glBegin(GL_LINE_STRIP); float t = 0.0f; while (t<16) { Eigen::Vector3d temp = coolShapes[shape](t); glVertex3f(temp[0], temp[1], temp[2]); t += 0.01f; } glEnd(); if (octopus) { glPushMatrix(); glScalef(1.0f,1.0f,1.5f); glutSolidSphere(1, 10, 10); glPopMatrix(); } glEndList(); glClearColor(0.0, 0.0, 0.0, 0.0); }