2
這是否以下技術:gl.h#定義爲燈
for(int light=GL_LIGHT0; light<=GL_LIGHT7; light++)
glEnable(light);
始終啓用GL_LIGHT0
通過GL_LIGHT7
完美?我想知道對於OpenGL燈光的#define
是否總是像在我的OpenGL頭文件中那樣遞增一個接一個。
這是否以下技術:gl.h#定義爲燈
for(int light=GL_LIGHT0; light<=GL_LIGHT7; light++)
glEnable(light);
始終啓用GL_LIGHT0
通過GL_LIGHT7
完美?我想知道對於OpenGL燈光的#define
是否總是像在我的OpenGL頭文件中那樣遞增一個接一個。
是的。 OpenGL規範明確指出,
GL_LIGHT<n> == GL_LIGHT0 + n
啊,你說得對。應該進一步挖掘。 –
只是出於好奇,這是什麼原因?啓用它們後,您將哪些參數設置爲燈光? –
@TimCooper從Blender導出的.obj文件中的一些材質屬性。這個問題產生的原因是因爲我啓用的燈的數量會根據文件中燈的數量而變化。我將以「light」這個單詞開始的每個材質作爲一個新光源處理,並且使用該材質的任何頂點被平均以獲得光的位置。攪拌機燈光數據並不實際輸出,這就是爲什麼我這樣做。 –