[Anfänger] DirectX Backbuffer löschen

slaveZero

Grünschnabel
hallo
ich bin totaler directX Anfänger
ich habe mir dazu ein buch gekauft aber in diesem buch wird nicht alles genau erklärt
Wenn Direct3D initialisiert worden ist dan kann man die Szene zeichnen
Es steht das zu beginn jeder szene der Backbuffer gelöscht wird
Es wird die Methode Clear aufgerufen
jetzt verstehe ich nicht warum der backbuffer gelöscht wird
Da steht wenn der backbuffer gelöscht wurde kann damit begonnen werden die Szene darzustellen.
Und weiter unten steht: "Wenn die Szene komplett ist, wird die Methode Present() aufgerufen, die dafür sorgt, dass der Backbuffer angezeigt wird"
Ich glaub ich hab das mit dem Backbuffer noch nicht so ganz kapiert
warum wird er gelöscht und dan wieder angezeigt
kann mir das vielleicht einer erklären?
Wenn es geht bräuchte ich schnell ne antwort :(
 
Hallo,

du hast normalerweise einen primarybuffer sowie einen backbuffer. In dem Backbuffer wird die jeweilige Szene bzw. Bild, welches du am Bildschirm darstellen willst vorgezeichnet. Wenn du alles fertig hast schmeisst du oder die Api einfach den Inhalt des Backbuffers in den Primarybuffer. Dadurch vermeidest du flackern und ruckeln, da das Bild bereits im Speicher vorgezeichnet wurde und jetzt nur noch in den Vordergrund geschoben wurde. Du musst den Backbuffer natürlich immer löschen, da du sonst in dem nächsten Bild noch Reste vom Vorgänger hast.

Ein paar gute Tutorials zur Grafikprogrammierung findest du unter

http://www.flipcode.de/Tutorials.php.

Grüße
R
 
Zurück