glRenderMode
Inhaltsverzeichnis
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
Links
DGL-Tutorial selection