Manual Reference Pages - CLIP3D_F (3)
clip3d_f - Clips the polygon given in vtx using floating point math, Allegro game programming library.
int clip3d_f(int type, float min_z, float max_z, int vc,
const V3D_f *vtx, V3D_f *vout, V3D_f *vtmp, int out);
Clips the polygon given in vtx. The number of vertices is vc, the
result goes in vout, and vtmp and out are needed for internal
purposes. The pointers in vtx, vout and vtmp must point to valid
As additional vertices may appear in the process of clipping, so the
size of vout, vtmp and out should be at least vc * (1.5 ^ n), where
n is the number of clipping planes (5 or 6), and ^ denotes "to the
The frustum (viewing volume) is defined by -z<x<z, -z<y<z,
0<min_z<z<max_z. If max_z<=min_z, the z<max_z clipping is
not done. As you can see, clipping is done in the camera space, with
perspective in mind, so this routine should be called after you apply
the camera matrix, but before the perspective projection. The routine
will correctly interpolate u, v, and c in the vertex structure. However,
no provision is made for high/truecolor GCOL.
Returns the number of vertices after clipping is done.
|Allegro ||CLIP3D_F (3) ||version 4.4.2 |
Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.