Computergrafik

Shader

Programmable Pipeline | | GLSL

Vertex Shader

Programmierbare Vertex Operationen

In = Position, Farbe, Normale, Texturkoordinaten Out = transformierte Position, Color, Texture Coordinates

Im einfachsten Fall wird die Eingangsposition unverändert übernommen. In der Praxis wird wenigstens die Modelview-Transformation und die perspektivische Projektion durchgeführt.

#version 120
void main()
{
   gl_Position = gl_Vertex;   // im Framework vertex_position
}

Fragment Shader

Programmierbare Fragment Operationen

In = Position, Farbe, Texturkoordinaten
Out = Fragmentfarbe

Der einfachste Shader liest das In-Register der interpolierten Fragment-Farbe und schreibt diese in das Out-Register der transformierten Farbe. Oder setzt einfach eine feste Farbe.

#version 120
void main()
{
   gl_FragColor = vec4 (1.0f, 0.0f, 0.0f, 1.0f);
}


Programmable Pipeline | | GLSL

Options: