Ich arbeite derzeit an der Druckschleife meiner Software, die 3D-Obj-Datei liest. Ich habe meine Obj-Datei in der Variablen tie
gelesen. Diese Variable enthält eine OpenGL-Liste. Mein Ziel ist es, mit Hilfe der Tastatur in der Lage zu sein, das gelesene Objekt zu bewegen. Das Lesen der Tastatur ist korrekt implementiert (ich kann durch die Protokolle sehen).Unerwartete gluLookAt Verhalten mit einem Punkt auf OpenGL zeichnen
Ausgabe
Wenn ich den folgenden Code Schleife zu kompilieren, die gluLookAt
exucute richtig und ich bin in der Lage, indem der Wert der Parameter um meine Aufgabe zu bewegen.
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) ;
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
light();
gluPerspective (60.0, 250/(float)250, 0.1, 500.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(eyeX,eyeY,eyeZ,eyeX+directionX,eyeY+directionY,eyeZ+directionZ,upX,upY,upZ);
glPushMatrix();
glRotated(45,0,0,1);
glTranslated(0,0,50);
glBindTexture(GL_TEXTURE_2D,texture1);
//glCallList(xwing); //ICI
glEnd();
glPopMatrix();
glColor3d(1,1,1);
glDisable(GL_LIGHTING);
glBindTexture(GL_TEXTURE_2D,texture2);
GLUquadric* params = gluNewQuadric();
gluQuadricDrawStyle(params,GLU_FILL);
gluQuadricTexture(params,GL_TRUE);
gluSphere(params,100,20,20);
gluDeleteQuadric(params);
glEnable(GL_LIGHTING);
glBindTexture(GL_TEXTURE_2D,texture1);
glCallList(tie); //ICI
glPointSize(5.0);
glBegin(GL_POINTS);
glColor3f(1.0f,0.0f,0.0f);
glVertex3f(-1.0f,0.0f,0.0f);
glEnd();
SwapBuffers(hDC);
//} //else
Sleep(1);
Aber wenn ich diese 4 Zeilen Kommentar:
glBegin(GL_POINTS);
glColor3f(1.0f,0.0f,0.0f);
glVertex3f(-1.0f,0.0f,0.0f);
glEnd();
Mein Objekt mehr bewegt sich nicht. Als ob gluLookAt
nicht ausgeführt werden konnte. Haben Sie eine Idee, warum das passiert? Habe ich etwas in meinem Code vergessen?
Vielen Dank. Tatsächlich benutzte ich in meiner Listenerstellungsfunktion zuerst 'glEndList' und dann' glEnd'. Also 'glEnd' war kein Anruf in meiner Schleife. Danke –
@GuillaumeMILAN Gern geschehen. – Rabbid76