7 #define POLYFILL_MODE_MASK 0x03
8 #define POLYFILL_TEX_BIT 0x04
9 #define POLYFILL_ZBUF_BIT 0x08
16 POLYFILL_TEX_WIRE = 4,
20 POLYFILL_WIRE_ZBUF = 16,
22 POLYFILL_GOURAUD_ZBUF,
24 POLYFILL_TEX_WIRE_ZBUF = 20,
25 POLYFILL_TEX_FLAT_ZBUF,
26 POLYFILL_TEX_GOURAUD_ZBUF
29 /* projected vertices for the rasterizer */
31 int32_t x, y; /* 24.8 fixed point */
32 int32_t u, v; /* 16.16 fixed point */
33 int32_t l, a; /* int 0-255 */
34 int32_t z; /* 0-(2^24-1) */
38 int32_t dudx, dudy, dvdx, dvdy;
39 int32_t dldx, dldy, dadx, dady;
48 unsigned int xmask, ymask;
51 extern struct pimage pfill_fb;
52 extern struct pimage pfill_tex;
53 extern uint32_t *pfill_zbuf;
54 extern struct pgradient pgrad;
56 void polyfill_fbheight(int height);
58 void polyfill(int mode, struct pvertex *verts);
60 void polyfill_wire(struct pvertex *verts);
61 void polyfill_flat(struct pvertex *verts);
62 void polyfill_gouraud(struct pvertex *verts);
63 void polyfill_tex_wire(struct pvertex *verts);
64 void polyfill_tex_flat(struct pvertex *verts);
65 void polyfill_tex_gouraud(struct pvertex *verts);
66 void polyfill_flat_zbuf(struct pvertex *verts);
67 void polyfill_gouraud_zbuf(struct pvertex *verts);
68 void polyfill_tex_flat_zbuf(struct pvertex *verts);
69 void polyfill_tex_gouraud_zbuf(struct pvertex *verts);
71 #endif /* POLYFILL_H_ */