/*
* BLENDING
* If enabled, the blending function Crgb = (1 - Sa)Drgb + (Sa)Srgb is
- * applied when determing color on the raster.
+ * applied when calculating final colors on the raster.
*/
#if BLENDING
#define IF_BLENDING(X) X
#define IF_SMOOTH_COLOR(X)
#endif
+/*
+ * TEXTURING
+ * If enabled, a texture will be used to color models that have texture
+ * coordinates. The color from the texture will actually be multiplied
+ * (i.e. mixed) with the regular color associated with the geometry. Also,
+ * Phong interpolation lighting (LIGHTING >= 3) is required to get actual
+ * texturing; otherwise, only the color at the origin point of the texture
+ * will be used.
+ */
+#if TEXTURING
+#define IF_TEXTURING(X) X
+#else
+#define IF_TEXTURING(X)
+#endif
+
+/*
+ * PERSPECTIVE_FIX
+ * If enabled, texturing will have correct perspective on triangles which
+ * show depth. You typically always want this, so it's enabled by default.
+ * This option is useful only if TEXTURING is also enabled.
+ */
+#ifndef PERSPECTIVE_FIX
+#define PERSPECTIVE_FIX 1
+#endif
+#if PERSPECTIVE_FIX
+#define IF_PERSPECTIVE_FIX(X) X
+#else
+#define IF_PERSPECTIVE_FIX(X)
+#endif
+
/*
* VERBOSITY
* If enabled, a description of what is happening will be printed to stdout.