aboutsummaryrefslogtreecommitdiff
path: root/Src/Winamp/plush/PL_DEFS.H
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Winamp/plush/PL_DEFS.H')
-rw-r--r--Src/Winamp/plush/PL_DEFS.H62
1 files changed, 62 insertions, 0 deletions
diff --git a/Src/Winamp/plush/PL_DEFS.H b/Src/Winamp/plush/PL_DEFS.H
new file mode 100644
index 00000000..f101810f
--- /dev/null
+++ b/Src/Winamp/plush/PL_DEFS.H
@@ -0,0 +1,62 @@
+/******************************************************************************
+ pl_defs.h
+ PLUSH 3D VERSION 1.2 CONSTANTS DEFINITION HEADER
+ Copyright (c) 1996-2000, Justin Frankel
+******************************************************************************/
+
+#ifndef _PL_DEFS_H_
+#define _PL_DEFS_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* pi! */
+#define PL_PI 3.14159265359
+
+/* Utility min() and max() functions */
+#define plMin(x,y) (( ( x ) > ( y ) ? ( y ) : ( x )))
+#define plMax(x,y) (( ( x ) < ( y ) ? ( y ) : ( x )))
+
+/*
+** Shade modes. Used with plMat.ShadeType
+** Note that (PL_SHADE_GOURAUD|PL_SHADE_GOURAUD_DISTANCE) and
+** (PL_SHADE_FLAT|PL_SHADE_FLAT_DISTANCE) are valid shading modes.
+*/
+#define PL_SHADE_NONE (1)
+#define PL_SHADE_FLAT (2)
+#define PL_SHADE_FLAT_DISTANCE (4)
+#define PL_SHADE_GOURAUD (8)
+#define PL_SHADE_GOURAUD_DISTANCE (16)
+
+/*
+** Light modes. Used with plLight.Type or plLightSet().
+** Note that PL_LIGHT_POINT_ANGLE assumes no falloff and uses the angle between
+** the light and the point, PL_LIGHT_POINT_DISTANCE has falloff with proportion
+** to distance**2 (see plLightSet() for setting it), PL_LIGHT_POINT does both.
+*/
+#define PL_LIGHT_NONE (0x0)
+#define PL_LIGHT_VECTOR (0x1)
+#define PL_LIGHT_POINT (0x2|0x4)
+#define PL_LIGHT_POINT_DISTANCE (0x2)
+#define PL_LIGHT_POINT_ANGLE (0x4)
+
+/* Used internally; PL_FILL_* are stored in plMat._st. */
+#define PL_FILL_SOLID (0x0)
+#define PL_FILL_TEXTURE (0x1)
+#define PL_FILL_ENVIRONMENT (0x2)
+#define PL_FILL_TRANSPARENT (0x4)
+
+#define PL_TEXENV_ADD (0)
+#define PL_TEXENV_MUL (1)
+#define PL_TEXENV_AVG (2)
+#define PL_TEXENV_TEXMINUSENV (3)
+#define PL_TEXENV_ENVMINUSTEX (4)
+#define PL_TEXENV_MIN (5)
+#define PL_TEXENV_MAX (6)
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* !_PL_DEFS_H_ */