Seleccionando Buffers de Color Para Lectura y Escritura
-
Upload
alejandro-gomez -
Category
Documents
-
view
2 -
download
1
description
Transcript of Seleccionando Buffers de Color Para Lectura y Escritura
Selecting Color Buffers for Writing and Reading
El resultado de la operacin dibujo o lectura pueden ir o provenir de alguno de los siguientes buffers de color: Frontal Fondo Frontal-Izquierdo Fondo-Izquierdo Frontal-Derecho Fondo-Derecho Cualquiera de los buffers auxiliaresSe seleccionan glDrawBuffer() para seleccionar los buffers que se escribirn y glReadBuffer() para seleccionar el buffer como fuente paa glReadPixels(), glCopyPixels(), glCopyTexImage*() y glCopyTexSubImage*().
Si se esta usando buffer doble, se dibujara simplemente en la parte del fondo del buffer e intercambiar los buffers cundo se finaliza el dibujado.
Selecciona los buffers de color activados para escribir o limpiar. Deshabilita los buffers activados por llamadas previas de este mtodo. Ms de un buffer puede ser activado al mismo tiempo. El valor del modo puede ser uno de los siguientes:GL_FRONTGL_FRONT_LEFTGL_AUXi
GL_BACKGL_FRONT_RIGHTGL_FRONT_AND_BACK
GL_LEFTGL_BACK_LEFTGL_NONE
GL_RIGHTGL_BACK_RIGHTGL_COLOR_ATTACHMENTi
Los argumentos que omiten LEFT o RIGHT se refieren a ambos buffers; similar a esto, los argumentos que omiten FRONT y BACK se refieren a ambos.
Para el contexto del buffer simple por default es GL_FRONT y para buffer doble es GL_BACK.
Selecciona el color de buffer activado como la fuente para la lectura de pixeles, por consecuencia llama a glReadPixels(), glCopyPixels(), glCopyTexImage*(), and glCopyTexSubImage*(). Deshabilita buffers activados previamente por llamadas de glReadBuffer(). EL valor del modo puede ser alguna de las siguientes:
GL_FRONTGL_FRONT_LEFT
GL_BACKGL_FRONT_RIGHT
GL_LEFTGL_BACK_LEFT
GL_RIGHTGL_BACK_RIGHT
GL_AUXiGL_COLOR_ATTACHMENTi
Masking Buffers
Antes de que OpenGL escriba informacin en el color habilitado, profundidad o buffers de plantilla, una operacin de enmascaramiento es aplicado a la informacin, como se especifica con uno de los siguientes comandos:void glIndexMask (GLuint mask);
void glColorMask (GLboolean red, GLboolean green,
GLboolean blue, GLboolean alpha);
void glIndexMaski(GLuint buf, GLboolean red, GLboolean
green, GLboolean blue, GLboolean alpha);
void glDepthMask (GLboolean flag);
void glStencilMask (GLuint mask);
void glStencilMaskSeparate(GLenum face,GLuint mask);
glIndexMask() Solo aplica al modo de color ndice. Si mask se establece en 1 el bit correspondiente se escribe, si es 0 no se escribe. glColorMask() Afecta el dibujado en el modo RGBA glDepthMask() Se activa el buffer de profundidad. glStencilMask() Es utilizado por los datos de plantilla.Los valores por default para todas las mscaras GLboolean es GL_TRUE.El valor por default para las dos mascaras GLuint es 1.void glDrawBuffer(Glenum mode);void glDrawBuffers(Glsizei n, const Glenum *buffers);
void glReadBuffer(Glenum mode);