Computergrafik

OpenGL Fogging

OpenGL State | | GL PolygonMode

Q Nebel?

Nebel ist ein physikalischer Effekt, verursacht durch die Einstreuung von Sonnenlicht auf dem Sichtstrahl in Richtung des Auges.

Fog wo Fog w

Fogging = lineare Interpolation

  • der aktuellen Fragmentfarbe
  • mit der Nebelfarbe
  • in Abhängigkeit von der Augenentfernung.

Mögliche OpenGL Nebel Modi:

  • GL_LINEAR
  • GL_EXP
  • GL_EXP2.
aus OpenGL Redbook

Beispiel mit OpenGL:

GLfloat color[4] = {r,g,b,a};

glFogfv (GL_FOG_COLOR, color);

glFogi  (GL_FOG_MODE, GL_LINEAR);
glFogf  (GL_FOG_START, 1); // fuer GL_LINEAR
glFogf  (GL_FOG_END,   20);

glFogf  (GL_FOG_DENSITY, 0.25); // fuer GL_EXP / GL_EXP2

glEnable(GL_FOG);

Exponentieller Fog mit LGL:

lglFog(density, color);

Live Demo: Fogging & Depth-Cueing (T#11a & T#11b)

OpenGL State | | GL PolygonMode

Options: