Understanding mathematics behind the view vector in OpenGL
<p>I want to obtain the view vector. Thereafter I want to calculate the angle between the normal and the view vector, to determine which faces are fully visible, partially visible and not visible.</p>

<p>A similar question <a href="https://stackoverflow.com/questions/14281931/sight-vector-in-opengl">sight vector in opengl</a> might shed some light on this topic. Please correct me if I am wrong, the line of sight presented in <a href="https://stackoverflow.com/questions/14281931/sight-vector-in-opengl">1</a> is the same as the view vector. If so, the fundamentals are not clearly presented and discussing it might clarify things for a new beginner.</p>

<p>The problem is linking the theory into code and understanding what are ProjectionMat, ModelView, Vetexpos and how to obtain it?
I assume it can obtained as such:</p>

<pre><code>glGetFloatv(GL_PROJECTION_MATRIX, projection);//returns the matrix of projectionview
    glGetFloatv(GL_MODELVIEW_MATRIX, modelview); //returns the identity matrix of modelview`
</code></pre>

<p>However, how does one get the vertexpos? 
Furthermore, do you find the cross product of the entire matrix or just for the x,y,z coordinates? </p>

<p>If this is not the correct way to calculate the view vector, how does one achieve?</p>