Что такое полувектор в современном GLSL?

http://www.lighthouse3d.com/opengl/glsl/index.php?ogldir2 сообщает, что полувектор в контексте OpenGL - это «положение глаза - положение света», но затем он продолжает говорить «к счастью, OpenGL вычисляет его для нас» [что теперь устарело].

Как можно рассчитать практически (простой пример был бы очень признателен) [в основном, меня озадачивает, что такое «Глаз» и как его можно получить].

На данный момент мне удалось заставить работать зеркальные вычисления (с хорошим визуальным результатом) с половинным вектором, равным Свету где Свет

vec3 Light = normalize(light_position - vec3(out_Vertex));

Я понятия не имею, почему это сработало.

[Если бы я знал, что такое «Глаз» и как его можно получить на практике.]

5
задан Nicol Bolas 23 October 2012 в 18:20
поделиться