set_projection_viewport (3) - Linux Man Pages
set_projection_viewport: Sets the viewport used to scale the output of persp_project(). Allegro game programming library.
NAMEset_projection_viewport - Sets the viewport used to scale the output of persp_project(). Allegro game programming library.
void set_projection_viewport(int x, int y, int w, int h);
DESCRIPTIONSets the viewport used to scale the output of the persp_project() function. Pass the dimensions of the screen area you want to draw onto, which will typically be 0, 0, SCREEN_W, and SCREEN_H. Also don't forget to pass an appropriate aspect ratio to get_camera_matrix later. The width and height you specify here will determine how big your viewport is in 3d space. So if an object in your 3D space is w units wide, it will fill the complete screen when you run into it (i.e., if it has a distance of 1.0 after the camera matrix was applied. The fov and aspect-ratio parameters to get_camera_matrix also apply some scaling though, so this isn't always completely true). If you pass -1/-1/2/2 as parameters, no extra scaling will be performed by the projection.
SEE ALSOpersp_project(3), get_camera_matrix(3), ex3d(3), excamera(3), exquat(3), exscn3d(3), exstars(3), exzbuf(3)