AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi DoubleBuffered -> CPU überlastet!?
Thema durchsuchen
Ansicht
Themen-Optionen

DoubleBuffered -> CPU überlastet!?

Ein Thema von maximi · begonnen am 7. Mär 2004 · letzter Beitrag vom 8. Mär 2004
Antwort Antwort
Seite 2 von 2     12   
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#11

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 15:15
das hab ich jetzt noch nicht ausprobiert. Deinen Vorschlag kann man doch vergleichen mit einem Backpuffer!? Beansprucht das nicht so die CPU?
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#12

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 15:25
Zitat von maximi:
das hab ich jetzt noch nicht ausprobiert. Deinen Vorschlag kann man doch vergleichen mit einem Backpuffer!? Beansprucht das nicht so die CPU?
Jo das Prinzip ist das gleiche nur es ist schneller.
z.B.: BitBlt ist schneller als canvas.draw
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#13

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 15:57
Wahrscheinlich labber ich jetzt irgendein mist, aber kann ich das jetzt immer noch mit den mehreren Images machen?!

Max
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#14

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 16:15
Nein natürlich nicht.
TImage haben bei spielen nichts zu suchen.

TImages kannst du noch als einfachen speicher für Bilder benutzen.
z.B.:
Das bild für Einheit ein ist in Image1. Image1 ist aber auf visible false.
Jetzt zeichnest du das bild so:
backpuffer.canvas.draw(x,y,Image1.picture.bitmap); nach dem alle zeichen operationen durchgeführt wurden zeichnest du das fertige Bild dann auf das formular:
BitBlt(canvas.handle, 0, 0, backpuffer.Width, backpuffer.Height, backpuffer.Canvas.Handle, 0, 0, srccopy);//Backpuffer aufs Formular
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#15

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 16:22
ok verstanden, werde ich glecih mal testen!!
  Mit Zitat antworten Zitat
Jörn

Registriert seit: 5. Sep 2003
Ort: Helmstedt
312 Beiträge
 
#16

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 16:38
Naja du solltest lieber TBitmap's als Speicher für die Bilder verwenden weil du dann Speicher sparst.

MfG
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#17

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 16:56
noch eine letzte frage: wie kann ich denn das von Canvas gezeichnete Bild wieder löschen?
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#18

Re: DoubleBuffered -> CPU überlastet!?

  Alt 8. Mär 2004, 18:20
So, jetzt habe ich diesen Code:
Delphi-Quellcode:
procedure TForm1.zeichnen;
var i:integer;
begin

  backpuffer.Canvas.Rectangle(0,0,800,600);
  for i := 0 to max do
  begin
    if(wand[i] <> nil) then
    begin
      backpuffer.canvas.draw(wand[i].Left,wand[i].Top,Image_wand[i].picture.bitmap);
    end;
    if(wario[i] <> nil) then
    begin
      backpuffer.canvas.draw(wario[i].Left,wario[i].Top,Image_wario[i].picture.bitmap);
    end;
  end;

BitBlt(canvas.handle, 0, 0, backpuffer.Width, backpuffer.Height, backpuffer.Canvas.Handle, 0, 0, srccopy);//Backpuffer aufs Formular
end;
und dazu ein Screenshot, wenn ich mich nach rechts bewege! Die grauen Stellen auf dem Bild sind die Gegner!

Kann mir jemand helfen??
Danke! Max
Miniaturansicht angehängter Grafiken
wario_bild.jpg  
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz