我正在为 openGL 程序设置照明。我希望能够轻松调整 C++ 中的光源数量,而无需触摸我的着色器
在我的 C++ 代码中:
#define NUM_LIGHTS 5
GLfloat lightposn [4 * NUM_LIGHTS];
在我的 glsl 代码中:
uniform vec4 lightposn[NUM_LIGHTS];
如何将此 NUM_LIGHTS 值传递给我的着色器?是否可以在着色器中使用 c++ 文件中定义的宏?还有另一种简单的方法可以在我的 c++ 代码和 glsl 代码中设置 NUM_LIGHTS 吗?