#define POLY_NMAX 8                     /* max #sides to a polygon */

typedef struct {                        /* A POLYGON VERTEX */
    double u, v;                        /* texture space coords */
    double sx, sy;                      /* screen space coords */
    double x, y, z;                     /* object space coords */
} poly_vert;

typedef struct {                        /* A POLYGON */
    int n;                              /* number of sides */
    poly_vert vert[POLY_NMAX];          /* vertices */
} poly;
