假设我的显示函数不是使用 opengl 函数而是逐像素绘制多边形,而是使用 drawpixel 函数。
我叫
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, global_ambient);
glShadeModel(GL_SMOOTH);
glEnable(GL_LIGHTING);
其中 global_ambient 是 0.0, 0.0, 0.0, 1.0 并且我定义了 Material 参数,即永远不会调用 glmaterial。全局环境照明是否仍然有效,因为我将无法看到多边形?或者我需要定义 Material 参数。
最佳答案
Lets say my display function draws polygons pixel by pixel not using opengl functions, but a drawpixel function.
如果这是真的,那么光照状态就完全无关紧要了。固定功能的 OpenGL 光照是per-vertex。您没有发送顶点;您正在发送像素数据。
关于c++ - 全局环境照明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13450088/