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

Fragment Shader

El Fragment Shader implementa los metodos programables de proposito general para operar los fragmentos salidos de la etapa de rasterizacion. Los tipos de entrada que maneja son:

Variables de diversidad (varying). Las salidas del vertex shader que son generadas por la unidad de rasterización por cada fragmento usando la interpolacion.

Uniformes (uniform). Datos constantes usados por los fragment shaders.

Muestreos (samplers). Un tipo especifico de uniformes que representa la texturas por el fragment shader.

Programa de Shader. Es el código fuente o ejecutable que describe las operaciones que sera ejecutado por sobre el fragmento,

El fragment shader puede ya que descarte el fragmento o genere un color referenciado como gl_FragColor. El color, la profundidad y locacion de coordenadas en pantalla (Xw, Yw) generada por la rasterización convierte las entradas para la etapa de operaciones por fragmento del pipeline de OpenGL ES 2.0.

Entradas y salidas del Fragment ShaderEl siguiente ejemplo de Fragment Shader puede ser acoplado con el Vertex Shader del ejemplo anterior para el dibujado de un triángulo de un sombreado Gouraud.

Un pequeño ejemplo de un Fragment Shader

precision medium float;

varying vec4 v_color;  //Entrada del color del vertice desde el Vertex Shader

void main(void)
{
   gl_FragColor = v_color;  //Aqui se le pasa el valor del color a cada vertice
}
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 )

Google+ photo

Estás comentando usando tu cuenta de Google+. 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 )

Conectando a %s