[openGL] Frage bzgl Colorbuffers
-
Hi !
Ich habe bzgl. openGL ein paar Fragen. Bisher habe ich mich noch nicht 100% in die API eingearbeitet. Interessant ist für mich nur der Teil der 2D Beschleunigung, da ich mit 3D nichts vorhabe. Deshalb interessiere ich mich insbesondere für Colorbuffer. Ich habe hier das openGL Redbook vor mir liegen. In Kapitel 8 wird auf das Laden von Bilder (nicht Bitmaps) vom Hauptspeicher in einen Buffer beschrieben. Nun möchte ich allerdings, dass nicht jedesmal, wenn ein neues Frame gezeichnet wird, das Bild immer über den Datenbus an die Grafikkarte geschickt wird. Dazu bieten sich ja scheinbar mehrere Colorbuffer an, von denen man dann in den Front~ oder Backbuffer kopiert. Meine Fragen:
1. void glDrawBuffer(GLenum mode); wobei mode = GL_AUXi ist. Wieviele von den GL_AUXi gibt es denn (zB. 1000 für 1000 verschiedene Bilder) ? Ist das auf jedem System gleich bzw. wovon hängt das ab ?
2. Was bedeutet GL_NONE, bzw. ist das ein einziger bestimmter Buffer ?
3. Wo werden die Bilder abgespeichert? Im Speicher der Grafikkarte ?
4. Ist der Geschwindigkeitsgewinn hoch ?
5. Ist die Auflösung der Bilder unbedenklich ( bsplw. 1680x1050 RGBA Bild )Oder ist es sinnvoller die Grafiken in einer anderen Struktur abzuspeichern ?
thx Tom
-
es ist sinnvoll bilder als texturen abzulegen, dabei kann man glLists verwenden um die texturen auf der graka zu halten AFAIK.
rapso->greets();
-
Auf heutiger Hardware sollte alle "2D-Aktionen" nur mäßige Geschwindigkeit haben. Benutze lieber ein paar Tris zur Darstellung, wenn du ehh OGL hast.
Bye, TGGC (Wähle deine Helden)