Je le code suivant dans mon application OpenGL (fonction comme InitGL, exécute au début de l'application):comportement de brouillard incorrect dans 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 est une constante avec une valeur de 1.
Le problème est, im obtenir cette image: http://prntscr.com/177y4 comme vous le voyez, le brouillard commence à partir de l'appareil photo et se dissout à une certaine distance de celui-ci. Ce n'est pas le comportement que vous attendez du brouillard, non? Quel est le problème avec mes paramètres, ou peut-être im faire quelque chose dans le mauvais ordre?
OMG, j'ai supposé que je suis un idiot, mais vous l'avez prouvé. Merci! :) – Anton
Ne vous inquiétez pas, des choses comme ça arrive, et plus vous regardez votre code, plus il est difficile de voir l'erreur! :) Btw, manuel GLFogf dit que GL_FOG_END par défaut à 1, donc le comportement est correct (brouillard entre 1 et 300). – nico