X, Y und Z Geschwindigkeit mit winkeln(sin/cos) ausrechnen?
Übersicht

![]() |
Xaymarehemals "Cgamer"Betreff: X, Y und Z Geschwindigkeit mit winkeln(sin/cos) ausrechnen? |
![]() Antworten mit Zitat ![]() |
---|---|---|
kann mir wer erklären wie das direkt geht? ich weiß blitz hat ja moveentity usw, aber ich möchte das gernen selbst ausrechnen damit es auch in anderen sprachen funktioniert. bisher habe ich nur 2 winkel in X/Y/Z geschwindigkeit umrechenen können(Pitch, Yaw), aber das war auch nicht so perfekt. nun möchte ich 3 winkel(pitch, yaw, roll) haben. wie kann ich das nun angehen? | ||
Warbseite |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Uhm... Denkfehler meinerseits...
![]() Edit: Halt, stimmt doch: X = X + Radius * Cos( Pitch ) * Cos( Yaw ) Y = Y + Radius * Sin( Yaw ) Z = Z + Radius * Sin( Pitch ) * Cos( Yaw ) Zwei winkel genügen um einen Punkt auf einer Kugel mit dem Radius zu berechnen. Also Hast du eine Geschwindigkeit die du für Radius einsetzt und Verschiebst dein Entity in die Richtung die durch die Winkel gegeben ist - oder? |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Y = Y + Radius * Sin( Yaw )
ich verstehe diese zeile nicht:/ muss da nicht Pitch rein? edit: danke habs jetzt. musste nen bisschen invertieren macht aber nichts Code: [AUSKLAPPEN] Function GetMov(Pitch#, Yaw#, Radius#)
A$ = "x" + (Radius * Sin( Pitch ) * Sin( Yaw )) A$ = A$ + "y" + (Radius * -Sin( Pitch )) A$ = A$ + "z" + (Radius * Cos( Pitch ) * Cos( Yaw )) End Function |
||
Warbseite |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weiß, der ist von 2009 aber es ist mein Thread.
Ich versuchte nun die Roll Rotation von Blitz mit einzubauen nur habe ich nicht wirklich eine Ahnung wie. bisherige versuche endeten immer darin, dass 90° Pitch 90° Roll(ausgehend von 0,1,0) nicht 0,0,1 ist. BlitzBasic: [AUSKLAPPEN] Global Math_GetSpeedV#[3] Wie müsste die Rechnung richtig heißen? :/ Danke im vorraus |
||
Warbseite |
![]() |
faeX |
![]() Antworten mit Zitat ![]() |
---|---|---|
Für Blitz3D:
BlitzBasic: [AUSKLAPPEN] ; fPitch, fYaw, fRadius sind gegeben. Nur der Vollständigkeit wegen. |
||
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Weiß hier wirklich keiner wie die rechnung heißen muss?
@faeX:Ich redete von Roll. Und deine Funktion macht genau dasselbe wie die von Xeres gepostete. Nur in anderer form. |
||
Warbseite |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
In was oder wie willst du Roll einbauen?
Edit: Wohl besser gefragt: Wozu? 2 Winkel sind absolut ausreichend. Ob Pitch und Yaw oder Yaw & Roll usw. ist prinzipiell egal. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
nunja, bei richtungs angaben ist roll egal, richtig. Allerdings brauche ich die rechnung mit Roll um seitwärts rotation richtig zu berechnen(L<>R) | ||
Warbseite |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group