Thema: Delphi Bitmap

Einzelnen Beitrag anzeigen

Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 

Re: Bitmap

  Alt 11. Dez 2008, 23:36
Für Spiele ist es ungünstig, mti Komponenten zu arbeiten. Guck dir lieber mal TCanvas und TBitmap an.
Mit TCanvas.Draw(...) kannst du Bitmaps auf eine Zeichenfläche zeichnen. So eine Zeichenfläche bietet z.b. jedes Formular an (TForm.Canvas), aber auch Bitmaps selber haben so eine Zeichenfläche (TBitmap.Canvas).
Am besten ist es, du zeichnest nicht direkt auf das Canvas des Fensters, sondern nutzt ein TBitmap im Speicher als Puffer. Du zeichnest also erst auf das Bitmap, und dann klatscht du das auf das Fenster. Das hat den Vorteil, dass es beim Zeichnen nicht flimmert. Dieses Flimmern entsteht nämlich dadurch, dass die Elemente nacheinander gezeichnet werden: Die Verzögerungen nimmt man als Flimmern wahr.

Stichworte zum Zeichnen auf TCanvas wären:
Hier im Forum suchenCanvas.Draw,
Hier im Forum suchenBitBlt,
meinetwegen noch Hier im Forum suchenStretchDraw... wobei man das besser vermeiden sollte, weil die Performance dadurch in den keller geht.

Wenn es noch mehr auf Geschwindigkeit ankommt, empfiehlt sich DirectX oder OpenGL, bzw. Engines, die diese nutzen (wie z.b. Hier im Forum suchenAndorra 2D). Für einfachere Spiele reichen die Bitmaps aber auch schon.
  Mit Zitat antworten Zitat