Werte der Kamera/des Viewfrustums ermitteln
Übersicht

![]() |
SkabusBetreff: Werte der Kamera/des Viewfrustums ermitteln |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
Kann mir jemand sagen wie ich in BlitzMax an die Werte der Kamera und der Projektion komme? Ich benötige: Field of View(FOV) ratio(Seitenverhältnis) Punkt auf den die Kamera aktuell schaut(glLookAt) Ich finde zumindest nirgends einen Eintrag/Befehl/Funktion die mir diese Werte geben... Ich brauch das um eine eigene Funktion zum Frustum Culling zu schreiben... Danke für eure Hilfe^^ MfG Ska |
||
"In einer so verrückten Welt, kann man um in ihr zu überleben nur eines tun, nämlich eben jenes werden: Ein Verrückter!" -Selbstzitat
aktuelles Projekt: Aves Certim - Der Galgen ist nicht weit! Ein SNES-RPG mit Handels- und Wirtschaftselemente. Infos?Hier: http://www.blitzforum.de/worklogs/234/ Besucht meine Seite: www.seelenfriedhof.de.vu |
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann indirekt daran kommen.
Als erstes braucht man die aktuelle Projektionsmatrix: http://wiki.delphigl.com/index...ION_MATRIX (ein Array mit 16 Einträgen an den Pointer-Parameter angeben) Auf dieser Seite steht, wie dort welche Werte gesetzt sind: http://wiki.delphigl.com/index.php/gluPerspective Wichtig sind hier die Werte (1,1) und (2,2). (mathematische Indizes: ab 1) (Das Speicherformat der Matrizen wird hier erklärt: http://wiki.delphigl.com/index...schreibung) Für den "Field of View" muss man diese Gleichung lösen: Code: [AUSKLAPPEN] (2,2) = cotangens(fovy/2)
=> 1/(2,2)=tan(fovy/2) => fovy=atan(1/(2,2))*2 Das Seitenverhältnis solltest du selbst herausfinden können. ![]() Eine Sache aber noch: Es gibt in OpenGL keine Kamera! Daher kann sie auch nicht in irgendeine Richtung schauen. Falls dir einfach nur die Funktion für Backface Culling fehlt: http://wiki.delphigl.com/index.php/glCullFace ("glEnable GL_CULL_FACE" nicht vergessen!) mfG mpmxyz Edit zum Edit: Hast du gemerkt, dass man bei glGet noch den Typ an den Funktionsnamen hängen muss? |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
- Zuletzt bearbeitet von mpmxyz am Di, Jul 06, 2010 15:53, insgesamt einmal bearbeitet
![]() |
Skabus |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ach ja, das kommt davon wenn man das nach dem Aufstehen macht XD
Klar,das Aspect rartio sollte eigtl. nur Höhe/Breite des Viewports sein? Naja ich arbeite ja mit miniB3D, da wurde eine eigene Kameraklasse geschrieben... Werd mal sehen, ob ich das noch gelöst krieg^^ Für alles andere bedanke ich mich sehr =) MfG Ska Edit: Ja und es ist peinlich das ich ständig so dumme fragen stelle^^" |
||
"In einer so verrückten Welt, kann man um in ihr zu überleben nur eines tun, nämlich eben jenes werden: Ein Verrückter!" -Selbstzitat
aktuelles Projekt: Aves Certim - Der Galgen ist nicht weit! Ein SNES-RPG mit Handels- und Wirtschaftselemente. Infos?Hier: http://www.blitzforum.de/worklogs/234/ Besucht meine Seite: www.seelenfriedhof.de.vu |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group