Izrezivanje
traka
Za
ovaj primjer je napravljena jednostavna jednodimenzionalna
tekstura sa naizmjeničnim crnim i bijelim regijama. Kada se
crna regija preslika na objekt, zahvaćeni pikseli se odbacuju.

Slika
8: Rezultati programa za izrezivanje traka.
Program
za sjenčanje vrhova (GLSL):
varying
vec2 texCoord0; varying vec2 texCoord1;
uniform float
vrijeme; uniform float brzina0; uniform float
brzina1;
void main(void) { gl_Position
= gl_ModelViewProjectionMatrix
* vec4(gl_Vertex.xyz,
1.0); texCoord0 =
gl_MultiTexCoord0.xy; texCoord1 =
texCoord0; texCoord0.y += vrijeme *
brzina0; texCoord1.x += vrijeme *
brzina1; }
Program
za sjenčanje fragmenata (GLSL):
uniform
sampler2D tex0; uniform sampler2D tex1;
varying vec2
texCoord0; varying vec2 texCoord1;
void main(void)
{ vec4 uzorak = texture2D(tex0,
texCoord0);
if (uzorak.x ==
0.0) discard;
gl_FragColor
= texture2D(tex1, texCoord1); }
Ostale
primjene programirljivog grafičkog slopovlja
Novi
X poslužitelj prozora (UNIX/Linux) po imenu Xgl koristi OpenGL
za iscrtavanje prozora. Za sada menadžeri prozora (KDE,
GNOME, ...) ne mogu direktno koristiti Xgl, već moraju koristiti
kompozitni menadžer po imenu Compiz.

Slika
9: Programi RealPlayer i GIMP prelaze preko brida kocke
(dvije susjedne radne površine).
|