Bevor ich meine Frage stelle möchte ich gerne etwas loswerden: Ich bin ein großer Fan dieser Seite. Glücklicherweise taucht sie bei google meistens direkt an der Spitze auf, wenn man nach einem OpenGL Befehl sucht. Ich bin zwar ein Java Entwickler aber die Befehle sind übertragbar genug. Ich bewundere die Vollständigkeit, die Korrektheit und den Stil der Steite. Großes Kompliment. Macht weiter so
So, nun aber zu meiner Frage:
Wie sicher jeder von Euch weiß, wird eine nicht-orthonormal gerenderte Scene perspektivisch verzerrt, stärker, je näher man an den Rand des Viewports kommt. Dieses Verhalten ist zwar in den meisten Fällne (wie EgoShootern korrekt) nicht aber bei meinem Space-Game, wo ich ein rotierendes Planetensystem habe.Wenn sich ein Planet dem Rand des Viewports nähert, wird er immer stärker zu einem Ellipsoiden verformt.
Gibt es ein Flag in OpenGL, welches das steuert? Ich habe auch schon vermutet, dass ich das direkt über die ModelView Matrix machen kann. Ich habe allerdings keine Ahnung, wie.
Ich wäre Euch über jede Hilfe dankbar
Marvin
PS: Wenn Ihr Lust habt, dann schaut doch mal bei Xith3D vorbei. Es ist das Projekt, an dem ich arbeite.[/url]
Eigentlich ist die perspektive immer normal... Das gehört dazu. Es kann aber sein, daß du übertireben perspektivisch zeichnest - in etwa so, als würdest mit einem starken weitwinkelobjektiv Fotos machen. Das ist auch ein etwas ungewohnter Blick. Das ganze hat man durch gluPerspective und glFrustum unter kontrolle. Du solltest mal probieren hier einfach stärker richtung "tele" zu gehen, d.h. den Öffnungswinkel zu verkleinern.
Die Verzerrung zur Ellipse gehört dazu. Wenn der Öffnungswinkel der Kamera mit dem entsprechenden Winkel beim Auge (Auge, Monitorober/unterkante) übereinstimmt, wird die Ellipse beim Beobachter wieder zu einem Kreis verformt. Der Effekt ist darauf zurückzuführen, dass der Abstand Monitor-Auge nicht konstant ist.
Die Ellipsenformt gibt bei einfachen Billboards(z.B. für Atmosphere) Probleme, was man durch passende Kippungen des Billboards aber ausgeleichen kann (ich poste Code bei interesse)
Vielen Dank für die Antworten. Das mit dem Blickwinkel war auch schon eine meiner zwei "Workarounds". Ein anderer, der mir allerdings nicht so wirklich gefällt, ist, den Viewport deutlich größer zu machen als den Bildschirm. Das hat natürlich so seine Grenzen und das frustumculling ist nicht mehr so gut.
Naja, sieht so aus, als müsste ich mit einer leichten Verzerrung leben auch wenn ich den Blickwinkel klein halte.
Mitglieder in diesem Forum: 0 Mitglieder und 8 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.