Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

BurningWave

Alter Hase

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

11

05.09.2010, 19:31

Du wirst wohl die X und die Z Koordinate mit dem Sinus bzw. Cosinus verschieben müssen. Der Punkt muss ja immer auf einem Kreis um die Kameraposition herum liegen. Die Y-Koordinate bestimmt nur, wie hoch du schaust.

12

06.09.2010, 17:07

Kannst du bitte mal n beispiel machen? Ich hab das nähmlich immer noch nicht ganz verstanden.
Metal ist keine Musik sondern eine Religion.

BurningWave

Alter Hase

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

13

06.09.2010, 17:53

Ich kann die richtige Formel auch nicht auswendig, aber vielleicht hilft dir das:

http://www.uni-protokolle.de/foren/viewt/177139,0.html

14

06.09.2010, 17:56

C-/C++-Quelltext

1
2
3
4
D3DXVECTOR3 at; 
at.z = cos(degree / 180 * D3DX_PI); // degree ist der Winkel in Grad, um den um die x-Achse gedreht werden soll 
at.y = sin(degree / 180 * D3DX_PI); 
// jetzt noch die Kameraposition dazuaddieren


Mit diesem Code dürfte eine Rotation um die x-Achse schonmal funktionieren. Wenn du beliebig um alle Achsen drehen möchtest, kannst natürlich auch einen Vektor mit einer Rotationsmatrix transformieren, dürfte noch einfacher sein.

Wikipedia zeigts auch: http://upload.wikimedia.org/wikipedia/co…tskreis_Ani.gif

15

06.09.2010, 22:37

Nach dem Bild her bräuchte ich doch die Kamera nur auf einer Achse zu bewegen und die kamera immer auf den selben Punkt schauen lassen?
Metal ist keine Musik sondern eine Religion.

BurningWave

Alter Hase

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

16

06.09.2010, 22:43

Nein, stell es dir so vor: Du hast einen Kreis mit einem Mittelpunkt M. M ist die Kameraposition und vAt liegt irgendwo auf dem Kreis.

Die 2. Variante ist, dass M der Mittelpunkt einer Kugel ist, auf der sich vAt befindet. Das hat den Vorteil, dass du das Sichtfeld auch nach oben und unten bewegen kannst, ist aber komplizierter zu berechnen, vielleicht kann dir irgendjemand von den Mathe-Experten hier im Forum helfen, wir hatten in der Schule leider solche Formeln noch nicht.

17

06.09.2010, 22:53

und wenn ich jetzt vAt auf dem Kreis bewege dreht sich auch die Kamera weil sie immer auf vAt schaut? Und um 1 nach rechts auf dem Kreis zu kommen müsste ich z.B vAt.x + 1 und vAt.y - 1(im zwei dimensionalen)
Metal ist keine Musik sondern eine Religion.

Käsekönig

1x Contest-Sieger

  • Private Nachricht senden

18

06.09.2010, 23:05

Im Prinzip brauchst du nicht alles drehen!
Du musst einzig und allein den LookAt Vektor der Kamera ändern. Alles andere wird dann ja durch die Kameramatrix erledigt.

Nehmen wir an, die Kamera ist auf der Position (0|0), der LookAt Vektor ist (0|20) und nun möchten wir die Kamera drehen. Dazu brauchen wir den Abstand zwischen Kamera und dem Punkt, wo die Kamera hinschaut, der ist 20. Dann sagen wir, wir möchten die Kamera auf 30° schwenken (also 60° im Uhrzeigersinn drehen).
Sinus- und Cosinuswerte ausrechnen - sin(30°) = 0,5 und cos(30°) = 0,8660

Die multiplizierst du mit deiner Länge und schon hast du den neuen LookAt Vektor. In unserem Falle wär das also (17,32|10). Also den x-Wert mit dem cosinus des Winkels multiplizieren und den y-Wert mit dem Sinuswert des Winkels.

Ich hoff, ich konnte dir damit helfen. ;)

idontknow

unregistriert

19

06.09.2010, 23:05

wenn du vAt im Kreis drehst dreht sich deine Kamera.

@Rest: nein!

Welche Klasse bist du? Welche Schule? (nur mal so aus neugierde!)
Ist total simpler Sin/Cos

20

06.09.2010, 23:18

bis jetzt 7 nächstes schuljahr 8. Um deine Neugier zu befriedigen Sinus und Cosinus sagt mir nur aus David's Buch was.
Metal ist keine Musik sondern eine Religion.

Werbeanzeige