我一直在爲一個月的遊戲引擎工作,並且已經完成了基本的OpenGL工作。但是,我不能像我期望的那樣照亮工作。 (注意:這是我第一次認真使用OpenGL)開放GL照明問題
我想要的是接近逼真的照明模擬 - 其中面向燈光的表面比其他燈光更亮等等。基本燈光應該有一個位置和一個顏色。這是我認爲它可以實現:
float lightv[4]; // populated with (0.6, 0.6, 0.6, 1)
float positionv[4]; // populated with (0, 10, 0, 1)
int lightID = GL_LIGHT0;
int attenuationType = GL_LINEAR_ATTENUATION;
float attenuationValue = 1;
glLightf(lightID, attenuationType, attenuationValue);
glLightfv(lightID, GL_DIFFUSE, lightv);
glLightfv(lightID, GL_POSITION, positionv);
glEnable(lightID);
而不是做什麼,我希望它做的,它給了我照亮,彷彿有一個光相機在哪裏!每個表面都有相同的照明!
我在做什麼錯?
謝謝,我很感激。