code: public void setPerspective(double fov, double aspect, double zNear, double zFar) {
  		matrixMode(MatrixMode.PROJECTION);
  		resetMatrix();
  		glu.gluPerspective(fov, aspect, zNear, zFar);
  		matrixMode(MatrixMode.MODELVIEW);
  		resetMatrix();
  	}
docs: Sets a perspective projection applying foreshortening, making distant objects appear smaller
  than closer ones. The parameters define a viewing volume with the shape of truncated pyramid.
  Objects near to the front of the volume appear their actual size, while farther objects appear
  smaller. This projection simulates the perspective of the world more accurately than orthographic
  projection.
  
  @param fov
  field-of-view angle for vertical direction
  @param aspect
  ratio of width to height
  @param zNear
  z-position of nearest clipping plane
  @param zFar
  z-position of nearest farthest plane