GL EXT framebuffer object: Unterschied zwischen den Versionen
Flash (Diskussion | Beiträge) () |
Flash (Diskussion | Beiträge) () |
||
Zeile 9: | Zeile 9: | ||
Diese Extension stellt ein Interface bereit um in Ziele zu rendern welche der GL nicht vom Fenstersystem bereitgestellt wurde. | Diese Extension stellt ein Interface bereit um in Ziele zu rendern welche der GL nicht vom Fenstersystem bereitgestellt wurde. | ||
− | Diese neuen Renderziele werden innerhalb dieser Extension als " | + | Diese neuen Renderziele werden innerhalb dieser Extension als "Framebufferbilder" bezeichnet. ''(Die englische Spezifikation spricht von "framebuffer-attachable images". Ich unterstellen den Lesern dieser Übersetzung ausreichend Intelligenz um mit dem neuen Begriff klar zu kommen. ;) )'' |
− | Diese Extension stellt einen Mechanismus zur Verfügung um diese neuen | + | Diese Extension stellt einen Mechanismus zur Verfügung um diese neuen Framebufferbilder an den [[Framebuffer]] zu binden. Dies ist möglich für die bisherigen logischen standard GL Puffertypen: color, depth, und stencil. |
− | {{Hinweis|Ein Binden eines | + | {{Hinweis|Ein Binden eines Framebufferbildes an den Accumationbuffer wird hier auf eine spätere Extension verschoben.}} |
+ | |||
+ | Wenn ein Framebufferbild an den Framebuffer gebunden wurde, dient es als Quelle für Readoperationen wie [[glReadPixels]] und als Ziel für Fragmentoperationen. | ||
+ | |||
+ | |||
+ | Durch die Einführung von Framebufferbildern als Renderziel wird nichtsichtbares Rendern (offscreen rendering) ermöglicht. | ||
+ | |||
+ | Weiterhin wird das Rendern in Texturen dahingehend vereinfacht, dass man das Texturbild als Framebufferbild binden kann, und so direkt in die Textur rendern kann. Dies geschieht indem man durch die Angabe von [[Mipmap]]-Level, [[Cubemap]]-Fläche (für Cubemap Texturen) und einem Z-Offset (nur bei 3D Texturen) ein bestimmtes Bild eines Texturobjekts wählt. | ||
+ | |||
+ | Die "Render To Texture Semantik" ist vergleichbar mit dem klassischen Rendern in den Framebuffer mit anschließendem Aufruf von [[glCopyTexSubImage]]. Vorteil der neuen Methode ist, dass man ads selbe Ergebnis erhält dabei aber auf das Kopieren der Daten verzichten kann. | ||
=== '''Verwendung''' === | === '''Verwendung''' === |
Version vom 7. Oktober 2005, 15:46 Uhr
Inhaltsverzeichnis
EXT_framebuffer_object
Die Orginalspezifikation finden Sie unter "Ressourcen" am Ende des Artikels. |
Abfragestring
GL_EXT_framebuffer_object
Beschreibung
Diese Extension stellt ein Interface bereit um in Ziele zu rendern welche der GL nicht vom Fenstersystem bereitgestellt wurde.
Diese neuen Renderziele werden innerhalb dieser Extension als "Framebufferbilder" bezeichnet. (Die englische Spezifikation spricht von "framebuffer-attachable images". Ich unterstellen den Lesern dieser Übersetzung ausreichend Intelligenz um mit dem neuen Begriff klar zu kommen. ;) )
Diese Extension stellt einen Mechanismus zur Verfügung um diese neuen Framebufferbilder an den Framebuffer zu binden. Dies ist möglich für die bisherigen logischen standard GL Puffertypen: color, depth, und stencil.
Ein Binden eines Framebufferbildes an den Accumationbuffer wird hier auf eine spätere Extension verschoben. |
Wenn ein Framebufferbild an den Framebuffer gebunden wurde, dient es als Quelle für Readoperationen wie glReadPixels und als Ziel für Fragmentoperationen.
Durch die Einführung von Framebufferbildern als Renderziel wird nichtsichtbares Rendern (offscreen rendering) ermöglicht.
Weiterhin wird das Rendern in Texturen dahingehend vereinfacht, dass man das Texturbild als Framebufferbild binden kann, und so direkt in die Textur rendern kann. Dies geschieht indem man durch die Angabe von Mipmap-Level, Cubemap-Fläche (für Cubemap Texturen) und einem Z-Offset (nur bei 3D Texturen) ein bestimmtes Bild eines Texturobjekts wählt.
Die "Render To Texture Semantik" ist vergleichbar mit dem klassischen Rendern in den Framebuffer mit anschließendem Aufruf von glCopyTexSubImage. Vorteil der neuen Methode ist, dass man ads selbe Ergebnis erhält dabei aber auf das Kopieren der Daten verzichten kann.
Verwendung
Kombinierungsarten
Operanden
Weitere Sachen
Hinweise
Neue Funktionen
- glIsRenderbufferEXT
- glBindRenderbufferEXT
- glDeleteRenderbuffersEXT
- glGenRenderbuffersEXT
- glRenderbufferStorageEXT
- glGetRenderbufferParameterivEXT
- glIsFramebufferEXT
- glBindFramebufferEXT
- glDeleteFramebuffersEXT
- glGenFramebuffersEXT
- glCheckFramebufferStatusEXT
- glFramebufferTexture1DEXT
- glFramebufferTexture2DEXT
- glFramebufferTexture3DEXT
- glFramebufferRenderbufferEXT
- glGetFramebufferAttachmentParameterivEXT
- glGenerateMipmapEXT
Neue Tokens
Neue Parameterwerte
Neue States
Abhängigkeiten
Interne Links auf Extensions von denen die hier beschriebene abhängt
Ressourcen
http://www.opengl.org/documentation/extensions/EXT_framebuffer_object.txt