Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi [DX] Sprite in Richtung wandern lassen, in die es guckt (https://www.delphipraxis.net/33514-%5Bdx%5D-sprite-richtung-wandern-lassen-die-es-guckt.html)

Die Muhkuh 8. Nov 2004 15:07


[DX] Sprite in Richtung wandern lassen, in die es guckt
 
Hi,

ich hab eine klasse TAuto. Abgeleitet von ImageSpriteEx. Per Alpha drehe ich das Auto. Wie kann ich nun das Auto nach vorne fahren lassen und zwar in die richtung in die es gerade steht?


*MFG*

Manu

Nonsense 8. Nov 2004 15:35

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Stichwort ist da Vektorrechnung. Meine Idee wäre da jetzt, 2 Vektoren zu erstellen, wobei der erste die Unterseite deines Autos darstellt und der andere orthogonal zu diesem liegt. Wenn du dein Auto jetzt drehst, drehst du gleichzeitig deine Vektoren und kannst dann die nächste Position berechnen.

Die Muhkuh 8. Nov 2004 15:40

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Och "nur"?

Sorry, kenn mich damit nicht aus. Kann ich das nicht irgendwie anders machen? Die Property Alpha ist in grad aufgeteilt. Vielleicht hilfts?

*MFG*

Manu :hi:

Nonsense 8. Nov 2004 15:41

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Hmm, mir fällt da spontan nichts Anderes ein. Vektorrechnung wäre da wohl am effektivsten.

Die Muhkuh 8. Nov 2004 15:42

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Hi,

hast du da mal ein kleines Beispiel? Bin nicht so der Mathe Profi und von Vektorrechnung hab ich nicht wirklich Ahnung.

*MFG*

Manu :hi:

Nonsense 8. Nov 2004 15:53

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Hmm, ich kenn mich mit DX nicht besonders aus, soll heißen, wenn ich dir das jetzt theoretisch erkläre, würde das nicht viel bringen. Bei OpenGL kann man Vektoren einfach mit glRotate drehen. Warte einfach noch, irgendwer wird sich im DP damit schon auskennen. :mrgreen:

Die Muhkuh 9. Nov 2004 17:28

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
*ganz vorsichtiges push* :angle2:

Ben1 9. Nov 2004 20:55

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Ich vermute mal du benutzt nur 2 Dimensionen, die Position deines Objektes liegt bei (x,y) und die Richtung wird durch den Winkel Alpha gegeben.
Dann ergibt sich die neue Position so:

x := x + cos(alpha);
y := y + sin(alpha);

Am besten noch mit der Geschwindigkeit multiplizieren, und immer dran denken das Alpha nicht als Grad sondern als Radient gegeben sein muß.

Die Muhkuh 10. Nov 2004 12:55

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Hi Ben,

jepp, ich benutz nur zwei Dimensionen. Ich werd deinen Code später mal ausprobieren, aber ich denke er wird funktionieren ;).

*MFG*

Manu :hi:

jim_raynor 10. Nov 2004 12:59

Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
 
Denk dran das cos und sin ein RAD-Angabe (0 ... 2Pi) brauchen und nicht normale Gradangaben (0..360°)

Zur Umrechnung kannst du die Funktion degtorad verwenden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz