Сколько нормалей? - PullRequest
       38

Сколько нормалей?

2 голосов
/ 23 июня 2010

если вы вычисляете нормали многоугольника для его рендеринга в WebGL, используете ли вы нормаль для каждого индекса в массиве индекса или для каждой вершины в массиве вершин?

Ответы [ 2 ]

2 голосов
/ 23 июня 2010

В примечаниях здесь пользователь вычисляет их для каждой вершины.

1 голос
/ 23 июня 2010

Каждая вершина. Вершина, в смысле WebGL (то же самое, что OpenGL ES и другие предшественники), на самом деле не точка в пространстве, а скорее комбинация атрибутов. Одним из них является почти всегда местоположение (хотя в необычных случаях у вас его может не быть), а другими обычно являются такие вещи, как вектор нормали, цвет, координаты текстуры и т. Д.

Массив индекса, напротив, представляет собой смещение в массивах атрибутов вершины. Таким образом, когда вы указываете индекс (скажем) 1 в массиве индексов, это сокращение для «вершины, созданной из объединения первого местоположения в буфере местоположения, первого нормали в буфере нормалей, первого цвета в буфере цветов и первого координата текстуры в буфере координат текстуры ".

Самым нелогичным для меня, когда я узнал об этом, было отделение вершин от местоположений, которые они занимают. Нет причин, по которым две вершины не могут иметь одинаковое местоположение.

...