Thema: Delphi 2d game:ping-pong

Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#25

Re: 2d game:ping-pong

  Alt 9. Apr 2005, 12:43
Zitat von mangaka:
lasst und mal die probleme hintereinander lösen, damit ich auch nocht mit komme..
erstma also die achsen. wie erstellt man die, und wie kann mit die derzeitige position eines objekt auslesen?
die 2 schläger- wie erstellt man die? die bewegungen kriege ich wohl auch nocht hin aber zu sicherheit, wäre es nett wenn ihr auch dazu was schreibt.
Die Achsen musst du nicht "erstellen", das Grafikobjekt, das du benutzst ( stimmt das wirklich so?), hat schon ein eigenes Koordinatensystem. Die Koordinaten des Spielers/Balls speicherst du als Feld in deiner Klasse, entweder als getrennte x- und y-Integer oder gleich als TPoint:
Delphi-Quellcode:
type
  TBall = class
  private
    FPosition: TPoint;
    FSpeed: TPoint; //TPoint als Vektor, der in jedem Frame zur Position addiert wird
    [...]
Deine Klassen haben dann noch eine "Draw" (von mir aus auch "Zeichnen") Methode, der ein Bitmap übergeben wird, auf das sie sich dann zeichnen. Dann noch eine weitere Klasse, die Engine, sie verwaltet die anderen Objekte und das Bitmap. Über einen TTimer oder QueryPerformanceCounter wird die Methode "Advance" der Engine aufgerufen, diese ruft dann die "Advance"-Methoden der anderen Objekte auf. Beim OnPaint des Formulars wird eine Methode der Engine aufgerufen, die das Bitmap auf die Canvas der Form kopiert.

So stelle ich mir das vor .

[edit] Ich sollte keinen Beitrag vor dem Mittagessen anfangen und danach abschließen .
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat