0

我正在尝试查询我的系统支持多少灯,以测试 glGet* 函数。

据我了解,8 是最小值,由于需要计算时间,我不应该真的使用大量灯光。看到这个线程

到目前为止,我已经尝试过:

GLint maxlights;
glGetIntergerv(GL_MAX_LIGHTS, &maxlights);
std::cout << "MAX_LIGHTS=" << (int)maxlights << std::endl;

输出:

MAX_LIGHTS=0

谁能解释为什么会这样?由于我绘制了一个球体,使用照明(来自 OpenGL 红皮书,版本 2.1,第 194 页)我知道灯光已启用并且工作正常。

4

1 回答 1

2

您可能没有正确初始化您的 OpenGL 上下文,请参见此处

顺便说一句 ,您不应再使用 Hardware TnL 功能,因为它已过时。

于 2013-07-14T19:28:25.540 回答