AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi DelphiX: Teilweise neuzeichnen
Thema durchsuchen
Ansicht
Themen-Optionen

DelphiX: Teilweise neuzeichnen

Offene Frage von "Florian H"
Ein Thema von Florian H · begonnen am 22. Nov 2003 · letzter Beitrag vom 22. Nov 2003
Antwort Antwort
Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#1

DelphiX: Teilweise neuzeichnen

  Alt 22. Nov 2003, 18:52
Hi,

ich muss bei einem Spiel, welches ich gerade mache in DelphiX einen großen Teil (ca. 75%) des Bildes fast nie neu zeichnen.
Diese 75% bestehen zudem auch noch aus sehr vielen kleinen Quadraten, also überdurchschnittlich viel Aufwand für den Rechner...

Die 25% die dauernd neu gezeichnet werden sollen sind eigentlich der harmlose Teil.
Trotzdem zeichne ich bisher alles bei jedem Frame neu --> Framerate zu niedrig

Wie kann ich es jetzt anstellen, dass ich das optimiert bekomme?
Kann ich sowas wie 2 Ebenen machen?, wovon nur die 2. immer verändert wird, die 1 nur einmal gezeichnet werden muss??

Oder bringt es was wenn ich die 75% auf ein TImage oder so zeichne und das dann immer direkt an DelphiX übergebe, sodass nur 1 mal die kleinen Sachen gezeichnet werden und dann jedesmal halt alles zusammen?


Viele Grüße
Florian H
Florian Heft
  Mit Zitat antworten Zitat
Langohr

Registriert seit: 30. Sep 2003
4 Beiträge
 
#2

Re: DelphiX: Teilweise neuzeichnen

  Alt 22. Nov 2003, 19:29
Ich habe zwar nicht viel Ahnung von DelphiX, aber weshalb nimmst du nur eine DXDraw- Oberfläche.

Nimm mehrere, dann hast du auch eine bessere Kontrolle.
  Mit Zitat antworten Zitat
Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#3

Re: DelphiX: Teilweise neuzeichnen

  Alt 22. Nov 2003, 19:57
geht denn das?
das wusste ich noch gar nicht *ausprobier*

[edit]wie soll das gehen?
Wenn ich einfach ein neues erstlle und drüberlege, seh ich nur das, was auf dem 2. gezeichnet wird (logisch irgendwie...)
Florian Heft
  Mit Zitat antworten Zitat
Benutzerbild von Seniman
Seniman

Registriert seit: 15. Sep 2003
Ort: Münster
98 Beiträge
 
#4

Re: DelphiX: Teilweise neuzeichnen

  Alt 22. Nov 2003, 21:57
Hallo,

ich weiß auch nicht genau, wie es mit DelphiX funktioniert, aber die Idee dabei ist folgende:
Zeichne den Teil, der sich seltener ändert auf die hintere (unsichtbare) DxDraw-Fläche. Es gibt dann bestimmt einen Befehl, mit dem man das Bild von der einen DxDraw-Fläche in die andere kopieren kann.
In dem Timer lässt du dann einfach von der hinteren in die vordere Grafikoberfläche kopieren und malst dann die restlichen Grafiken (also die, die sich laufend ändern) darüber. Die hintere Grafikoberfläche lässt du nur neu zeichnen, wenn sie sich verändert. Dafür brauchst du dann vermutlich mehrere SpriteEngines.
Ich hoffe ich habe die Idee einigermaßen klar ausgedrückt.

Grüße
Seniman
  Mit Zitat antworten Zitat
Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#5

Re: DelphiX: Teilweise neuzeichnen

  Alt 22. Nov 2003, 22:14
Ja, kapiert habe ich es.
Nur die Umsetzung hapert

Ich hab schon geguckt, ob es sowas gibt, aber meine Kenntnisse sind diesbzgl. nicht so gut, zumal es ja keine allzugute Dokumentation dazu gibt...

Ich arbeite übrigens ohne Spriteengine, zeichne mit "dxImageList1.draw"... direkt auf die Fläche.
Florian Heft
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:58 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