2

假设我的显示函数不使用 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 并且我定义了材料参数,即永远不会调用 glmaterial。全局环境照明是否仍然有效,因为我将无法看到多边形?或者我需要定义材料参数。

4

1 回答 1

1

假设我的显示函数不使用 opengl 函数,而是使用 drawpixel 函数逐像素绘制多边形。

如果这是真的,那么照明状态就完全无关紧要了。固定功能的 OpenGL 光照是per-vertex。您没有发送顶点;您正在发送像素数据。

于 2012-11-19T18:47:40.487 回答