Notas Rápidas – OpenGL ES. Introducción Parte 5

Operaciones por fragmento

Es la siguiente etapa despues del Fragment Shader. Un fragmento producido por la rasterización con las coordenadas de pantalla (Xw, Yw) que pueden solo modificar el pixel en la locación (Xw, Yw) en el framebuffer.Featured image

Las operaciones de esta etapa ejecuta  las siguientes funciones y pruebas por cada fragmento:

La prubea de propiedad de pixel – Esta prueba determina si el pixel en la locación (Xw, Yw) en el framebuffer es propiedad de OpenGL ES. Esta prueba permite a las ventanas del sistema controlar cuales pixeles del framebuffer le pertenecen al contexto actual de OpenGL ES.

La prueba de Tijeras – Esta determina si (Xw, Yw) cae dentro del rectángulo de la tijera definido como parte del estado de OpenGL ES. Si el fragmento está fuera de la region de la tijera, el fragmento es descartado.

Prueba del sténcil y profundidad – Determinan si el fragmento debe ser rechazado o no.

Mezclado – Combina el nuevo valor del color del fragmento genereado con el color de los valores almacenacenados en el framebuffer en la locación (Xw, Yw).

Difuminado – Puede ser usado para minimizar los artefactos que pueden ocurrir desde la precisión de uso limitado para almacenar valores de color en el framebuffer.

Al final de esta etapa, cada fragmento es rechazado o cada fragmento de color, profundidad y sténcil, es escrito el framebuffer en la locación (Xw, Yw). Estos son escritos dependiendo sobre que apropiada máscara de escritura que estan o no activas.

Las máscaras de escrituras permiten un mejor control sobre los valores de color, profundidad y sténcil. Un ejemplo seria escribir máscaras para que el buffer del color no pueda poner los valores rojos que se estan escribiendo en el framebuffer.

NOTA: La prueba Alpha y LogicOp ya no son parte de la etapa de operacion por fragmento. Estas funciones solo existen en OpenGL 2.0 y OpenGL ES 1.X.

La función de la prueba Alpha ya no es necesaria porque el Fragment Shader puede eliminar fragmentos. Por lo tanto, la prueba Alpha puede ser ejecutada en el Fragment Shader.

Ademas, LogicOp es removida ya que es muy infrecuente su uso por las aplicaciones y el grupo de trabajo de OpenGL ES no obtuvo las peticiones de los ISV (Vendedores independientes de software) para que esta característica fuera suportada en OpenGL ES 2.0.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s