Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mo Mai 27, 2024 17:40

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: FreeCamera und LookAt falsch herum
BeitragVerfasst: Do Jul 26, 2012 20:53 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Hallo,

ich habe gerade mal testweise eine einfache Free-And-Look Camera implementiert, die "eigentlich" grundlegend funktioniert aber die Ansicht verkehrt herum ist. Sprich ich sehe meine Models von hinten und wenn ich mich nach Links oder Rechts bewege (strafe), bewege ich mich in die umgekehrte Richtung! Nach vorne bewegen geht, oben und unten stimmt auch.

Wenn ich mir meine Rotations-Achsen anschaue, dann stimmen diese auch, sprich:

right = 1.0, 0.0, 0.0
up = 0.0, 1.0, 0.0
backward = 0.0, 0.0, 1.0

wären die directions wenn nichts gedreht wurde.

Ich seh grad echt das Problem nicht, für mich sieht das alles richtig aus und irgendwelche sachen zu negieren, wirkt irgendwie falsch... ich weiss auch nicht.

Mir ist das auch erst aufgefallen, nachdem ich mein Rechteck (CCW) nicht gesehen habe, obwohl ich von der Kamera es eigentlich sehen müsste.

Source und Binary siehe anlage. (Zum bauen braucht man glm und freeglut.)

Wäre dankbar für tips, ist bestimmt was simples wo ich grad nicht draufkomme.

Danke :)


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 26, 2012 21:31 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Wer braucht schon lookAt, wenn man translate haben kann...

Code:
  1.  
  2.     camModelview = glm::translate(rot, vec3(-camPos.x, -camPos.y, -camPos.z));
  3.  


Nun gehts, habs mit lookat nicht hinbekommen, aber das translate mit rotations matrix multipliziert erfüllt ebenso die eigentliche aufgabe.

Thread kann geschlossen werden!
Viel spass mit der Camera - Code kann frei verwendet werden.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Apr 10, 2013 07:57 
Offline
DGL Member

Registriert: Do Mär 21, 2013 14:57
Beiträge: 51
Programmiersprache: C#,C++
Dein backward - vector zeigt mit der letzten (z-) Koordinate in die positive Richtung, was bewirkt, dass du dich auf der Rückseite des Körpers befindest.
Normaler weiße ist die negative Z-Achse zur dir hin ausgerichtet bzw. bildlich gesprochen vom Bildschirm ausgehend in Richtung deines Arbeitsplatzes.

_________________
_______________________________________
Lets move over mountains and through valleys:
GL.Map2(,,,,,,,,,)
GL.MapGrid2(,,,,,,,,,)
GL.EvalMesh2(,,,,,,,,,)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 26 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]