Можно ли использовать освещение OpenGL без объявления нормалей поверхности?
Можно ли объявить освещение на объектах без объявления нормалью поверхностей?
шаги, которые я готов сделать:
1. enable lighting
2. define surface material
3. define lighting position
4. define lighting parms : ambient....
это достаточно или я должен положить куда-то там также glNormal?
1 ответ
Вы не можете вычислить освещение, не зная, в каком направлении обращена поверхность. Это направление называется нормалью поверхности. Так что либо вам придется предоставить один, либо вам придется вычислять один в шейдере. И последнее несколько маловероятно в общем случае.
Так что да, вам нужно предоставить нормали вершин для освещения.