Provided by: allegro4-doc_4.4.2-13_all bug

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(3alleg4),        get_camera_matrix(3alleg4),        ex3d(3alleg4),
       exstars(3alleg4)