Einzelnen Beitrag anzeigen

Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#2

AW: TGPGraphic mit Zwischenbuffer aktualisiert sich nicht

  Alt 6. Jan 2015, 08:41
So habe es jetzt so gelößt, dass ich 2 TGPGraphics erzeuge. das erste Benutzt eine TGPBitmap als Backbuffer, das zweite wird vom Fensterhandle erzeugt.
Nachteil:
Es ist um einiges langsamer. Zeichenfläche 470*255, Animation 60Fps

Alte methode:
Jedesmal neues GDIP-Objekt erstellen, in eine normale TBitmap und diese per TCanvas zeichnen benötigte von einem Dualcore@2.66GHZ ~3% (1.5% fürs Zeichnen des Backbuffers und 1.5% für das Zeichnen aufs Fenster)

Neue Methode:
Einmalig die GDIP-Objekte erstellen, erst in den Backbuffer zeichnen und dann per DrawImage in das GDIP-Object des Fensters zeichnen ~7%(1.5% fürs zeichnen des Backbuffers, der rest fürs Zeichnen ins Fenster)

Das wirkt doch irgendwie arg langsam, für das reine zeichnen eines Bildes aufs Fenster und skaliert entsprechend schlecht mit wachsender größe der Zeichenfläche.
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat