glRenderMode

Aus DGL Wiki
Version vom 26. Juli 2004, 12:42 Uhr von Flash (Diskussion | Beiträge) (Version Hochgeladen)

Wechseln zu: Navigation, Suche

glRenderMode


glRenderMode


glRenderMode - Bestimmt den Rasterisierungsmodus (rasterization mode).


Delphi-Spezifikation


function glRenderMode(mode : GLenum) : GLint;


Parameter


mode Gibt den Rasterisierungsmodus an. Drei Werte werden akzeptiert:
GL_RENDER, GL_SELECT und GL_FEEDBACK.

Standartwert ist GL_RENDER.


Beschreibung


Der Funktion glRenderMode wird eine Variable, mode, übergeben. Diese kann einen der folgenden Werte annehmen:

GL_RENDER
Rendermodus. Primitive werden rasterisiert, daraus werden Pixelfragmente gemacht welche in den Framebuffer geschrieben werden.
Dieser Modus ist der normale "Zeichenmodus" und und gleichzeitig der Standard.

GL_SELECT
Selektions Modus. Es werden keine Pixelfragmente produziert und es werden auch keine Änderungen am Framebuffer durchgeführt.
Anstelle dessen wird ein record mit den Namen der Primitive, die gezeichnet worden wären, wenn der Rendermodus GL_RENDER gewesen wäre, in einem Selection Buffer zurück geliefert. Dieser muss bereits existieren bevor der Selektions Modus aktiviert wird. (siehe glSelectBuffer)

GL_SELECT
Feedback Modus. Es werden keine Pixelfragmente produziert und es werden auch keine Änderungen am Framebuffer durchgeführt.
Anstelle dessen werden die Koordinaten und Attribute der Vertexe, die gezeichnet worden wären, wenn der Rendermodus GL_RENDER gewesen wäre, in einem Feedback Buffer zurück geliefert. Dieser muss bereits existieren bevor der Feedback Modus aktiviert wird. (siehe glFeedbackBuffer)

Der Rückgabewert der glRenderMode-Funktion ist abhängig von Rendermodus zum Zeitpunkt des Aufrufs der Funktion, nicht vom Übergabeparameter mode.
Die Werte die in den verschiedenen Modi zurückgeliefert werden sind:

GL_RENDER
Null

GL_SELECT
Die Anzahl der getroffenen Objekte die in den Selectionbuffer geschrieben wurden.

GL_FEEDBACK
Die Anzahl der Werte (nicht Vertexe) die in den Feedback Buffer geschrieben wurden.


Hinweise


Wenn Sie mehr Informationen über Selektions- und Feedbackoperationen haben wollen, finden Sie diese bei glSelectBuffer und glFeedbackBuffer.

Wenn ein Fehler ausgelöst wird, liefert glRenderMode unabhängig vom Rendermodus Null ("0") zurück.


Fehlermeldungen


GL_INVALID_ENUM wird generiert wenn mode ein ungültiger Wert übergeben wird.

GL_INVALID_OPERATION wird generiert wenn glSelectBuffer aufgerufen wird, solange der Rendermodus GL_SELECT ist, oder wenn glRenderMode mit dem Argument GL_SELECT aufgerufen wird bevor nicht glSelectBuffer mindestens einmal aufgerufen wurde.

GL_INVALID_OPERATION wird generiert wenn glFeedbackBuffer aufgerufen wird, solange der Rendermodus GL_FEEDBACK ist, oder wenn glRenderMode mit dem Argument GL_FEEDBACK aufgerufen wird bevor nicht glFeedbackBuffer mindestens einmal aufgerufen wurde.

GL_INVALID_OPERATION wird generiert wenn glRenderMode in einem glBegin-glEnd Block aufgerufen wird.


Zugehörige Wertrückgaben


glGet mit Token GL_RENDER_MODE


Siehe auch


glFeedbackBuffer, glInitNames, glLoadName, glPassThrough, glPushName, glSelectBuffer