Man Linux: Main Page and Category List

NAME

       persp_project,  persp_project_f  -  Projects  a 3d point into 2d screen
       space. Allegro game programming library.

SYNOPSIS

       #include <allegro.h>

       void persp_project(fixed x,  fixed  y,  fixed  z,  fixed  *xout,  fixed
       *yout);

       void  persp_project_f(float  x,  float  y,  float z, float *xout, float
       *yout);

DESCRIPTION

       Projects the 3d point (x, y, z)  into  2d  screen  space,  storing  the
       result  in  (*xout,  *yout) and using the scaling parameters previously
       set by calling set_projection_viewport(). This function  projects  from
       the  normalized  viewing  pyramid, which has a camera at the origin and
       facing along the positive z axis. The x axis runs  left/right,  y  runs
       up/down,  and  z increases with depth into the screen. The camera has a
       90 degree field of view, ie. points on the planes x=z and -x=z will map
       onto  the  left  and  right edges of the screen, and the planes y=z and
       -y=z map to the top and bottom of the screen. If you want  a  different
       field of view or camera location, you should transform all your objects
       with an appropriate viewing matrix, eg. to get the  effect  of  panning
       the  camera  10 degrees to the left, rotate all your objects 10 degrees
       to the right.

SEE ALSO

       set_projection_viewport(3alleg),             get_camera_matrix(3alleg),
       ex3d(3alleg), exstars(3alleg)