RotateCamera: wie richtig benutzen?

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
FosJonas
Beiträge: 121
Registriert: 12.11.2008 19:31

RotateCamera: wie richtig benutzen?

Beitrag von FosJonas »

Guten tag,

Bin mal wieder auf ein Problem gestoßen: der Befehl RotateCamera macht irgendwie nicht was ich will, wen ich diesen Code eingebe (nur der wichtige Teil):

Code: Alles auswählen

CameraLocate(#Cam,(Bob_Pos(0)*2),(Bob_Pos(1)*2),(Bob_Pos(2)*2+2))
RotateCamera(#Cam,90,0,0,#PB_Relative)
If KeyboardPushed(#PB_Key_A)
    RotateCamera(#Cam,CameraX(#cam),CameraY(#cam),CameraZ(#cam),#PB_Absolute)

  EndIf
Bewegt sich die Kamera sobald ich A drücke, was sie ja gar nicht sollte. Wobei dies nur einmal auftritt, danach stimmen die Werte.
Genauso wenn ich

Code: Alles auswählen

RotateCamera(#Cam,0,1,1,#PB_Relative)
nutze, bewegt sich die Kamera überhaupt nicht da sich die y und z Bewegung gegenseitig ausgleichen, dies tritt aber nur auf wen ich davor die X der Kamera auf 90 drehe, ansonsten kommen aber auch sehr komische Bewegungen dabei raus.

Ich Verstehe nicht wirklich wie der Befehl funktioniert und auch nach zahlreichen Suchen nichts gefunden was mich weiter bringt.
Wäre nett wenn mir jemand helfen könnte.

Ich bedanke mich schonmal im Vorraus.
Purebasic 5.10 | Kubuntu 12.04 (64 bit) | Opera 12.01 | Nvidia GT 9800
Xubuntu 12.04 (64 bit) | Intel HD Graphis (Onboard)
Benutzeravatar
gnasen
Beiträge: 578
Registriert: 01.08.2007 14:28
Computerausstattung: PB 4.60

Re: RotateCamera: wie richtig benutzen?

Beitrag von gnasen »

Bitte den ganzen Code für die Kamera (Lauffähig!), sonst ist es schwer, dir zu helfen.
pb 4.51
Benutzeravatar
FosJonas
Beiträge: 121
Registriert: 12.11.2008 19:31

Re: RotateCamera: wie richtig benutzen?

Beitrag von FosJonas »

Habe den Fehler nun gefunden: Ich bin aus irgendeinem seltsamen Grund davon ausgegangen das Z die höhe und Y die Tiefe ist, nachdem ich das korrigiert habe funktioniert es.
Mir ist trotzdem noch Schleierhaft warum wen ich Z und Y vertausche, bei RotateCamera Y + Z genau die selbe Rotation erzeugen.
Purebasic 5.10 | Kubuntu 12.04 (64 bit) | Opera 12.01 | Nvidia GT 9800
Xubuntu 12.04 (64 bit) | Intel HD Graphis (Onboard)
Antworten