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
Anonymous
unregistriert
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
float x = 0.0f; float y = 7.0f; float z = 0.0f; float x2 = 0.0f;float y2 = 0.0f;float z2 = 0.0f; float angle = 50.0f / 57.29f; float angle2 = 60.0f / 57.29f; x2 = x * cosf(angle) - y * sinf(angle); y2 = x * sinf(angle) + y * cosf(angle); z2 = y2 * sinf(angle2) + z * cosf(angle2); y2 = y2 * cosf(angle2) - z * sinf(angle2); |
Quellcode |
|
1 2 3 4 5 |
float angle1 = asinf(z2/y); float angle2 = acosf(y2 / (y * cosf(angle1))); float w1 = angle1 * 57.29f; float w2 = angle2 * 57.29f; |
Zitat
Ich dachte, Du drehst zuerst um x und dann um z? Die Reihenfolge ist hier sehr wichtig.
Übrigens hattest Du auch nicht gesagt, wie rum Du drehst bzw. ob Du ein Rechts- oder Linkssystem hast. Dies wirkt sich in Vorzeichen aus. Indem Du Deine mit meinen Formeln vergleichst, siehst Du, welches Vorzeichen Du brauchst.
Werbeanzeige