Pong Ballphysik
-
Hi Leute!
Ich habe ein kleines Problem bei dem ihr mir bestimmt helfen könnt. Und zwar: Ich möchte mir ein Pong programmieren, was ja kein Problem ist, doch nach einer Weile bin ich draufgekommen das ich ne Mathematische Null bin die die Formel für den Ball nicht zustande bekommt. Ich möchte anhand von 2 Werten: 1 Punkt und 1 Winkel die nächsten X positionen der Flugbahn berechnen. Ich hoffe das war jetzt verständlich Ausgedrückt.
mfg Bauarbeiterjoe
-
vx = cos α * v
P(x + vx, y)
-
Kannste mir die Formel etwas näher beschreibenich versteh nicht was da was ist (a,v). Am Schluss sollte das irgendwie so aussehen:
P(t)=...
P = Punkt
t = Zeit
-
das a ist logischerweise dein winkel
v ist die geschwindigkeit deines balles
zeitabhängig kannst dus so machen
P(t) = (x + vx * t, y)
-
Da brauchst du doch nur einen Wert im Bewegungsvektor umdrehen.
Wenn der Ball mit (-2, 1) gegen den linken Schläger fliegt, dann fliegt er mit (2, 1) wieder weg.
-
@Cappo: Wiso Geschwindigkeit ich habe nur einen Punkt und einen Winkel.
@Machs Einfach: Beim Aufprall wird der Winkel negativiert. das is mir klar ich brauch nur ne Formel die die Flugbahn errechnet.
-
Nur Punkt und Winkel macht keine Bewegung. Implizit bringst Du da sicher eine Geschwindigkeit mit rein, zB indem Du sagst, 'pro Zeitschritt drei Felder in Richtung des Winkels weiterrücken' oder so. Ob diese Konvention sinnvoll ist, dazu müßtest Du sie uns hier erst mal verraten.
Der Vorschlag von MachsEinfach bezieht sich darauf, nicht den Winkel zu speichern, sondern die Bewegungsrichtung anders unterzubringen, nämlich in den Variablen X und Y: Pro Zeitschritt gehe X Felder nach rechts und Y Felder nach oben. Der Ball fliegt so lange nach dieser Spielregel weiter, bis er gegen die Wand/Schläger knallt, dann passiert irgendwas, im einfachsten Fall X -> -X und Y -> Y.
Was hast Du denn für Vorkenntnisse? Winkel in Steigungen umrechnen und so einen Kram sollte in der 10. Klasse durchgenommen worden sein.