Hey, could anyone tell me how to set up:

  1. VRP;
  2. VPN;
  3. VUP;

I tried to use some functions in a book:

But the Visual C++ 6.0 compiler doesn’t
recognize these functions even I
have all the headers included:
#include <glut.h>
#inlcude <glu.h>
#include <glaux.h>

Obviously the VC++ 6.0 compiler isn’t going to recognize those functions, because they are not OpenGL functions. You don’t say what book you got those from, but I’m assuming they either have those functions in their own library, or were just showing something we affectionately call “pseudocode” because it’s not the complete code, and it’s assumed you know how to implement the true code for it.

The Book’s name is:Interactive Computer Graphics–A Top Down Approach with OpenGL.

I think that I must use glLookAt, so
which part is VRP, which part is VPN,
which part is VUP in the glLookAt function?

I think you mean gluLookAt. Not all of those are represented by gluLookAt in quite that way. The first 3 parameters of gluLookAt is the position you are looking from, the next 3 are the point you are looking at, and the final 3 is the up vector.

I’m haven’t seen that exact terminology before, but depending on your point of view the first three or the 2nd set of three values in gluLookAt could be considered the reference point. (Is the reference point the point you are looking at, or the point you are looking from?)

The up view, would obviously be the last 3. I’m guessing the view plane normal is just the normal to the view plane so you would take the point you are looking at and subtract the point you are looking from to get that.

I just figured out what VRP, VPN and VUP are.
They are the paraments in gluLookAt().

But now I am facing one more problem:

How can I translate a ball from
Point(-4,1,4) to Point(3,1,-4)?

Thanks a lot!