0
我正在使用glutSolidSphere渲染很多領域。有行邊界處,這是不正確的顏色呈現:球體邊緣的文物 - 錯誤的照明?
如果我沒有記錯,我沒有這個問題,AMD顯卡,它是NVIDIA的一個新問題。
相關OpenGL設置(不知道我得到了所有的人,他們是通過代碼散)分別是:
// set 2 lights, both having specular, ambient and diffuse components.
// and then:
glDisable(GL_CULL_FACE);
glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER,1);
glLightModeli(GL_LIGHT_MODEL_TWO_SIDE,1);
glColorMaterial(GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE);
glEnable(GL_COLOR_MATERIAL);
glEnable(GL_BLEND);
glEnable(GL_LINE_SMOOTH);
glEnable(GL_POLYGON_SMOOTH);
glShadeModel(GL_SMOOTH);
glEnable(GL_RESCALE_NORMAL);
當GL_POLYGON_SMOOTH關閉時很好,謝謝。我沒有設置任何混合模式,這是一個問題嗎?渲染之前,球體並未排序。什麼是FSAA? (對不起,我在OpenGL中不太流利) – eudoxos
混合模式: glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); FSAA是全場反鋸齒。您可以設置opengl以使用處理抗鋸齒的多采樣緩衝區。這避免了消除鋸齒邊緣的順序依賴混合的問題。 – Pete
http://www.opengl.org/wiki/Multisampling – Pete