Forum: Sonstige Fragen zu Delphi
Delphi
by TheAn00bis,
23. Jun 2006
Mein Code sieht jetzt so aus:
angle := (180/sizeX*(posX+sizeX/2-pBall.posX+sizeX/2));
v := sqrt(pBall.vX*pBall.vX+pBall.vY*pBall.vY);
pBall.vX := v*cos(angle*PI/180);
pBall.vY := v*sin(angle*PI/280);
Alle Variablen sind vom Typ extended. Bereits nach wenigen Kollisionen wird der Ball spürbar langsamer, auch wenn ich den Schläger nicht bewege und der Ball immer im Winkel von...
Forum: Sonstige Fragen zu Delphi
Delphi
by TheAn00bis,
23. Jun 2006
@H4ndy Danke, hätte bestimmt auch geklappt aber Khabarakhs weg ist wirklich einfacher! :D
@Khabarakh: Vielen Dank! Ist eigentlich wirklich offensichtlich, aber igendwie habe ich gar nicht an Trigometrie gedacht! Ich rechne das jetzt ganz einfach über v*cos(angle) bzw v*sin(angle) aus. :D
Edit: Achja, was das betrifft:
Die Bewegung des Paddles spielt auch eine Rolle, ich denke das...
Forum: Sonstige Fragen zu Delphi
Delphi
by TheAn00bis,
23. Jun 2006
Die Richtung, in welche der Ball fliegt ergibt sich ja nur aus dem Verhältnis der x-Geschwindigkeit(vX) zur y-Geschwindigkeit(vY), wie ein Richtungsvektor quasi.
Jetzt habe ich den Winkel, der angibt in welche Richtung der Ball fliegt. Aber wie muss ich vX und vY jetzt setzen? Die Geschwindigkeit v habe ich ja wie geschrieben aus den alten vX- und vY-Werten errechnet. Wenn der Winkel jetzt 180°...
Forum: Sonstige Fragen zu Delphi
Delphi
by TheAn00bis,
23. Jun 2006
Jep, funktioniert! Aber wie bekomme ich jetzt aus 180° vX=1, vY=0 bzw aus 90° vX=0, vY=1 bzw. aus 0° vX=-1 vY=0? Also die negativen Werte werde ich wohl über eine if-Abfrage regeln müssen, aber wie komme ich erstmal auf die Werte überhaupt.
Darin sehe ich keinen Vorteil. Aber wenn du mir einen nennst bin ich gerne bereit meine Meinung zu ändern.
Forum: Sonstige Fragen zu Delphi
Delphi
by TheAn00bis,
23. Jun 2006
Hey,
Ich habe hier ein schon fast mathematisches Problem, für welches ich momentan noch nicht einmal einen Lösungsansatz habe.
Es geht um Kollision in einem Spiel: Ein Ball trifft auf einen Schläger und soll abprallen. (siehe Anhang!) Der Winkel soll dabei von der Position des Auftreffens abhängig sein: Trifft der Ball in der Mitte des Schlägers auf, so wird er orthogonal zum Schläger...