Мне нужно добавить правильное освещение к нерегулярному многоугольнику OpenGL, который я заполнил, используя TRIANGLE_FAN.Как добавить вершины в OpenGL C++ triangle_fan
glBegin(GL_TRIANGLE_FAN);
glNormal3f(0.0, 0.0, 1.0);
glVertex3f(0.0f, 0.0f,0.0f);
glVertex3f(b[0][0],b[0][1], 0);
glVertex3f(b[11][0], b[11][1], 0);
glVertex3f(b[7][0], b[7][1], 0);
glVertex3f(b[10][0], b[10][1], 0);
glVertex3f(b[6][0],b[6][1], 0);
glVertex3f(b[5][0],b[5][1], 0);
glVertex3f(b[4][0],b[4][1], 0);
glVertex3f(b[8][0],b[8][1], 0);
glVertex3f(b[3][0],b[3][1], 0);
glVertex3f(b[9][0],b[9][1], 0);
glVertex3f(b[2][0],b[2][1], 0);
glVertex3f(b[1][0],b[1][1], 0);
glVertex3f(b[0][0],b[0][1], 0);
glEnd();
Проблема с моим текущим многоугольником заключается в том, что он не отражает свет правильно. Он делает это только из своих вершин, что дает свет, который поражает его формой X. Я предполагаю, что мне нужно добавить вершины к моему полигону. Есть ли простой способ сохранить мой треугольник, но добавить к нему вершины?
Любая вероятность, что я могу убедить вас использовать объекты буфера вершин и шейдеры? Это сделает вашу жизнь намного проще в будущем ... –
Идеализм Я бы придерживался того, что у меня есть из-за короткого срока, который у меня есть, и что тогда вся программа основана на этой структуре .. – juliensaad
Я не большой фиксированный парень - Вся моя профессиональная работа была с OGL_ES2 и выше. Я отложил это на другое. Я, честно говоря, не уверен, как получить освещение фрагментов, работающих в стационарном конвейере. Удачи! –