ich will eine BSP - Map laden und rendern (momentan nur Polygons). Dafür hab ich auch bei Google und hier im Forum was gefunden. Leider ist der Thread schon 5 Jahre alt. Also ich habe alles so geladen wie in diesem Thread beschrieben: http://www.delphigl.com/forum/viewtopic.php?f=19&t=3876 (letzter Beitrag). Das Laden funktioniert auch fehlerfrei, aber es wird fehlerhaft gerendert. Laut dieser Seite http://w3studi.informatik.uni-stuttgart.de/~bischowg/OpenGL/OGLq3bsp.html (ganz unten) werden alle Faces mittels GL_TRIANGLE_FAN gerendert. Das mach ich auch, aber es sieht so aus, als wäre alles "durchlöchert". Mir geht es momentan nur darum, das die Polygons fehlerfrei gerendert werden.
Hier ein Bild das zeigt, was ich meine:
Dateianhang:
face.gif
Normalerweise sollte das ein Rechteck sein... Weiß jemand warum? Hat jemand damit schon Erfahrung gemacht?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Klingt nach einem Backfach-Culling Problem. Versuche mal testweise ein: glDisable(GL_CULL_FACE);
Wenn dann alles funktioniert liegt das Problem daran, dass deine Dreiecke nicht alle gleich herum orientiert sind. Also die Vertices eines Dreiecks müssen alle entweder im Uhrzeigersinn oder gegen den Uhrzeigersinn angeordnet sein. Wie herum ist abhängig vom verwendeten Koordinatensystem und der Einstellung glFrontFace.
// for(int i = 0; i < geometry3D->m_numFaces; i++) { // nur 1 face zeichnen glDrawArrays(GL_TRIANGLE_FAN, geometry3D->m_pFaces[5].startVertIndex, geometry3D->m_pFaces[5].numOfVerts); // }
Also wenn du dir die Vertices mal in eine Koordinatensystem malst stellst du fest, dass das so nicht funzen kann. Das lässt sich so weder mit GL_TRIANGLE_FAN noch mit GL_QUADS oder GL_TRIANGLE_STRIP rendern. Der letzte Vertex liegt auf der falschen Seite. Siehe auch die Abbildungen hier: http://wiki.delphigl.com/index.php/glBegin
Sehr komisch.... die Daten die ich aus der Datei les sehen eigentlich richtig aus... Hab das ganze mal mit GL_POINTS dargestellt. Da sieht man die 4 Punkte die auch an der richtigen Position sind.
Dateianhang:
points.gif
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Hm...hab die richtige Reihenfolge von dem Face jetzt gefunden und es funktioniert, aber nur bei diesen einen. Scheinbar hat jedes Face ne eigene Reihenfolge der Vertices :/....
Mitglieder in diesem Forum: 0 Mitglieder und 3 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.