xamelon | Дата: Воскресенье, 15 Января 2017, 12:55 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Привет всем. Я пытаюсь сделать куб. Поставил два источника света. Выставляю нормали. Но, получается такая картина на скриншоте. Что я делаю не так?
И еще вопрос. Как я понял,на примере куба, для верхней грани, нужно выставить нормаль (0,0,1), а для нижней (0,0,-1). У нижней грани, нормаль (0,0,-1), чтобы она освещалась снизу, а не сверху. А как мне вычислять нормали, если куба задается 4 точками на XY плоскости?
Код glBegin(GL_QUADS);
glNormal3f(0,0,-1); glVertex3f(0, 0, 0); glVertex3f(0.1, 0,0); glVertex3f(0.1, 0.1, 0); glVertex3f(0, 0.1, 0);
glNormal3f(0,0,1); glVertex3f(0, 0, 0.1); glVertex3f(0.1, 0,0.1); glVertex3f(0.1, 0.1, 0.1); glVertex3f(0, 0.1, 0.1);
glNormal3f(-1,0,0); glVertex3f(0,0,0); glVertex3f(0,0.1,0); glVertex3f(0,0.1, 0.1); glVertex3f(0, 0, 0.1);
glNormal3f(1,0,0); glVertex3f(0.1,0,0); glVertex3f(0.1,0.1,0); glVertex3f(0.1,0.1,0.1); glVertex3f(0.1, 0, 0.1);
glNormal3f(0,-1,0); glVertex3f(0,0,0); glVertex3f(0.1, 0,0); glVertex3f(0.1,0,0.1); glVertex3f(0,0,0.1);
glNormal3f(0,1,0); glVertex3f(0,0.1,0); glVertex3f(0.1,0.1,0); glVertex3f(0.1,0.1,0.1); glVertex3f(0,0.1,0.1);
glEnd();
Сообщение отредактировал xamelon - Воскресенье, 15 Января 2017, 13:09 |
|
| |