Как получить плоские нормали на кубе

Я использую OpenGL без устаревших функций, и мой легкий расчет сделан на фрагментный шейдер. Итак, я делаю плавную заливку.

Моя проблема в том, что когда я рисую куб, мне нужны плоские нормали. Под плоскими нормалями я подразумеваю, что каждый фрагмент, сгенерированный на лице, имеет одинаковую норму.

Мое решение этого до сих пор состоит в том, чтобы генерировать разные вершины для каждого лица. Итак, вместо 8 вершин, теперь у меня 24 (6 * 4) вершины.

Но это кажется мне неправильным, копируя вершины. Есть ли лучший способ получить нормальные?

Обновление: я использую OpenGL версии 3.3.0, у меня пока нет поддержки OpenGL 4.

Ответы на вопрос(3)

Ваш ответ на вопрос