It takes three sets of arguments, which specify the location of the viewpoint, define a reference point toward which the camera is aimed, and indicate which direction is up.
gluLookAt(GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz);
gluLookAt() defines a viewing matrix and multiplies it to the right of the current
matrix. The desired viewpoint is specified by eyex, eyey, and
eyez. The centerx, centery, and centerz arguments
specify any point along the desired line of sight, but typically they are some
point in the center of the scene being looked at. The upx, upy,
and upz arguments indicate which direction is up (that is, the direction
from the bottom to the top of the viewing volume).
The Figure shows the effect of a typical gluLookAt() routine.
gluLookAt( 4.0, 2.0, 1.0, 2.0, 4.0, -3.0, 2.0, 2.0, -1.0 );
The camera position (eyex, eyey, eyez) is at (4, 2, 1).
It looking right at the model, so the reference point is at (2, 4, -3).
An orientation vector of (2, 2, -1) is chosen to rotate the viewpoint to this 45-degree angle.