title: What is Half vector in modern GLSL?
body: <p><a href="http://www.lighthouse3d.com/opengl/glsl/index.php?ogldir2" rel="nofollow noreferrer">http://www.lighthouse3d.com/opengl/glsl/index.php?ogldir2</a> 
   reports that half vector in OpenGL context is 'Eye position - Light position' but then it goes on to say 'luckily OpenGL calculates it for us' [which is now deprecated].</p>
  
  <p>How can, practically be calculated (a simple example would be greatly appreciated) [mainly, it puzzles me what "Eye" is and how it can be derived].</p>
  
  <p>At the moment I managed to make specular calculations work (with good visual result) with half vector being equal to Light where Light is </p>
  
  <pre><code>vec3 Light = normalize(light_position - vec3(out_Vertex));
  </code></pre>
  
  <p>Now, I've no idea why that worked.</p>
  
  <p>[If at least I knew what "Eye" is and how it can be derived practically.]</p>