also ich habe schon mal gepostet das ich probleme mit den Tutorials habe. Das problem schien behoben dachte ich aber das problem ist immer noch da.
1. In den Tutorials wird nicht erklärt wie ich OpenGL initalisiere auser für Api was für mich schwer nach zu vollziehen ist.
2. Wenn ich dann mal OpenGL initalisiert habe mit den Templates und dort dann ein Beispiel aus dem Tutorial einfüge z.B. Das erste Beispiel um einen Quadrat zu zeichnen funktioniert das auch nicht,
Wodran kann es liegen? wenn ich Beispiele aus anderen Programme übernehme zum Zeichnen von Dreicken funktioniert das aber die aus den Tutorials nicht. Mir ist um erlich zu sein die lust vergangen weil nichts geht, Benutze ich vieleicht die falsche Version?
Kann mir jemmand helfen und sagen wieso das nicht geht?
danke
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Zu allererst verweise ich dich mal auf unser Foren-FAQ, in dem einige häufige Probleme beschrieben und gelöst werden.
Wenn das dann auch nicht weiterhilft, wäre es hilfreich wenn du dein Problem mal etwas konkretisieren könntest, also auch sagen würdest was denn genau nicht geht, und welche Fehlermeldungen dein Programm/der Compiler ausspuckt.
OK ich schaue nach.
Es kommt keine Fehlermeldung. Der Zeichnet das dreick einfach nicht was ich aus dem zweiten Tutorial "Entdeckung einer neuen Welt" eingefügt habe.
Die form ist schwar und sonst nichts. Aber wenn ich ein Dreieck aus einem anderen Beispiel tutorial von einer anderen Seite nehme funktionierts.
also eigentlich weis ich wodran das liegt die koordinaten in dem delphigl.com tutorial sind falsch hier ein Beispiel:
delphi.com Tutorial
Code:
glBegin(GL_TRIANGLES);
glColor3f(1,0,0);
glVertex3f(-1.0,-1.0, 0.0);
glColor3f(0,1,0);
glVertex3f( 0.0, 1.0, 0.0);
glColor3f(0,0,1);
glVertex3f( 1.0,-1.0, 0.0);
glEnd();
Und hier das was Funktioniert
Code:
glBegin(GL_TRIANGLES);
//Vorne
glColor3f(1.0, 0.0, 0.0);
glVertex3f(-1.0, -1.0, 1.0);
glColor3f(0.0, 0.0, 1.0);
glVertex3f(1.0, -1.0, 1.0);
glColor3f(1.0, 1.0, 0.0);
glVertex3f(0.0, 1.0, 0.0);
glEnd();
so dadran liegts aber ist das nur ein Fehler vom Autor oder geht das nicht weil ich eine falsche version habe?
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Beide Codes sind korrekt.Der einzige Unterschied liegt halt ganz einfach nur darin dass das Dreieck aus unserem Tutorial leicht andere Koordinaten besitzt, und auf der Z-Achse an Position 0 liegt (Die Z-Achse ist bei der Identitätsmatrix die Achse, die "in den Bildschirm hinein" zeigt.
Das ist also deshalb nicht sichtbar, weil es die Near-Plane des Viewfrustums verletzt, und du musst deine Szene erst mit glTranslatef(0,0,-1) (natürlich muss der Befehl vor dem Zeichnen des Dreiecks kommen) leicht verschieben damit es sichtbar wird.
P.S. : Falls du des Englischen mächtig bist, empfehl ich dir das RedBook (siehe Downloadsektion), das quasi ne Anleitung zu OpenGL ist und wirklich alle Grundlagen abdeckt.Das solltest du dir evtl. vor dem Durcharbeiten unserer Tutorials mal durchlesen, da es auch viel zur Funktion von OpenGL sagt.
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.