вычислить нормали вершин сферы

Мне было интересно, как я могу взять вершину каждой сферы, хранящуюся в моем буфере, и вычислить нормаль к каждому из них отдельно. Можно ли это сделать в OpenGL?

1 ответов


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

в случае сферы нормали мертвы, их легко вычислить. Для заданной векторной позиции P на сфере, центром которой является C, Нормаль norm(P - C), где norm нормализует вектор.