Ich habe den folgenden Code in meine OpenGL-Anwendung (Funktion wie InitGL, führt zu Beginn der Anwendung):Wrong Nebel Verhalten in OpenGL
GLfloat density = 0.5;
GLfloat fogColor[4] = {164/255.0,203/255.0,242/255.0, 1};
if(OPT_FOG_ENABLED){
glEnable (GL_FOG);
glFogi (GL_FOG_MODE, GL_LINEAR);
glFogfv (GL_FOG_COLOR, fogColor);
glFogf (GL_FOG_DENSITY, density);
glFogf(GL_FOG_START, 200);
glFogf(GL_FOG_START, 300);
}
OPT_FOG_ENABLED ist eine Konstante mit dem Wert von 1.
Das Problem ist, ich bekomme dieses Bild: http://prntscr.com/177y4 wie Sie sehen, beginnt Nebel von der Kamera und löst sich in einiger Entfernung von ihm auf. Das ist nicht das Verhalten, das man von Nebel erwartet, oder? Was ist falsch an meinen Parametern, oder kann ich etwas falsch machen?
OMG, ich nahm an, dass ich ein Idiot bin, aber Sie haben es bewiesen. Vielen Dank! :) – Anton
Mach dir keine Sorgen, so etwas passiert, und je mehr Sie Ihren Code betrachten, desto schwieriger ist es, den Fehler zu sehen! :) Btw, glFogf Handbuch sagt, dass GL_FOG_END standardmäßig auf 1, so ist das Verhalten korrekt (Nebel zwischen 1 und 300). – nico