From 70b087d0ba993a850d9b205c1ea99eefe823a96a Mon Sep 17 00:00:00 2001 From: TravisCI-DocBuilder Date: Wed, 2 Dec 2015 11:06:33 +0000 Subject: [PATCH] Doc generated from commit 3657571591e88325584c91e7134a201a682a07bb --- enums_8h.html | 261 ++++++++ enums_8h_source.html | 1300 ++++++++++++++++++++------------------ globals_defs_g.html | 72 ++- globals_enum.html | 15 + globals_eval_g.html | 87 +++ globals_g.html | 174 ++++- gpu-old_8h_source.html | 26 +- registers_8h.html | 120 ++-- registers_8h_source.html | 30 +- shbin_8h_source.html | 4 +- 10 files changed, 1337 insertions(+), 752 deletions(-) diff --git a/enums_8h.html b/enums_8h.html index d540432..3476a2f 100644 --- a/enums_8h.html +++ b/enums_8h.html @@ -109,6 +109,10 @@ Macros #define GPU_TEXTURE_MIN_FILTER(v)   (((v)&0x1)<<2)  Creates a texture minification filter parameter from a GPU_TEXTURE_FILTER_PARAM.
  + +#define GPU_TEXTURE_MIP_FILTER(v)   (((v)&0x1)<<24) + Creates a texture mipmap filter parameter from a GPU_TEXTURE_FILTER_PARAM.
#define GPU_TEXTURE_WRAP_S(v)    (((v)&0x3)<<12)  Creates a texture wrap S parameter from a GPU_TEXTURE_WRAP_PARAM.
@@ -117,6 +121,18 @@ Macros #define GPU_TEXTURE_WRAP_T(v)    (((v)&0x3)<<8)  Creates a texture wrap T parameter from a GPU_TEXTURE_WRAP_PARAM.
  + +#define GPU_TEXTURE_MODE(v)    (((v)&0x7)<<28) + Creates a texture mode parameter from a GPU_TEXTURE_MODE_PARAM.
+  + +#define GPU_TEXTURE_ETC1_PARAM   BIT(5) + Texture parameter indicating ETC1 texture.
+  + +#define GPU_TEXTURE_SHADOW_PARAM   BIT(20) + Texture parameter indicating shadow texture.
#define GPU_TEV_BUFFER_WRITE_CONFIG(stage0, stage1, stage2, stage3)   ((stage0) | ((stage1) << 1) | ((stage2) << 2) | ((stage3) << 3))  Creates a combiner buffer write configuration.
@@ -248,6 +264,84 @@ Enumerations } Supported texture formats. More...
  +enum  GPU_PROCTEX_CLAMP {
+  GPU_PT_CLAMP_TO_ZERO = 0, +
+  GPU_PT_CLAMP_TO_EDGE = 1, +
+  GPU_PT_REPEAT = 2, +
+  GPU_PT_MIRRORED_REPEAT = 3, +
+  GPU_PT_PULSE = 4 +
+ } Procedural texture clamp modes. More...
+  + +enum  GPU_PROCTEX_MAPFUNC {
+  GPU_PT_U = 0, +
+  GPU_PT_U2 = 1, +
+  GPU_PT_V = 2, +
+  GPU_PT_V2 = 3, +
+  GPU_PT_ADD = 4, +
+  GPU_PT_ADD2 = 5, +
+  GPU_PT_SQRT2 = 6, +
+  GPU_PT_MIN = 7, +
+  GPU_PT_MAX = 8, +
+  GPU_PT_RMAX = 9 +
+ } Procedural texture mapping functions. More...
+  + +enum  GPU_PROCTEX_SHIFT {
+  GPU_PT_NONE = 0, +
+  GPU_PT_ODD = 1, +
+  GPU_PT_EVEN = 2 +
+ } Procedural texture shift values. More...
+  + +enum  GPU_PROCTEX_FILTER {
+  GPU_PT_NEAREST = 0, +
+  GPU_PT_LINEAR = 1, +
+  GPU_PT_NEAREST_MIP_NEAREST = 2, +
+  GPU_PT_LINEAR_MIP_NEAREST = 3, +
+  GPU_PT_NEAREST_MIP_LINEAR = 4, +
+  GPU_PT_LINEAR_MIP_LINEAR = 5 +
+ } Procedural texture filter values. More...
+  + +enum  GPU_PROCTEX_LUTID {
+  GPU_LUT_NOISE = 0, +
+  GPU_LUT_RGBMAP = 1, +
+  GPU_LUT_ALPHAMAP = 2, +
+  GPU_LUT_COLOR = 3, +
+  GPU_LUT_COLORDIF = 4 +
+ } Procedural texture LUT IDs. More...
+  + enum  GPU_COLORBUF {
  GPU_RB_RGBA8 = 0,
@@ -1261,6 +1355,173 @@ Enumerations + + + +
+
+ + + + +
enum GPU_PROCTEX_CLAMP
+
+ +

Procedural texture clamp modes.

+ + + + + + +
Enumerator
GPU_PT_CLAMP_TO_ZERO  +

Clamp to zero.

+
GPU_PT_CLAMP_TO_EDGE  +

Clamp to edge.

+
GPU_PT_REPEAT  +

Symmetrical repeat.

+
GPU_PT_MIRRORED_REPEAT  +

Mirrored repeat.

+
GPU_PT_PULSE  +

Pulse.

+
+ +
+
+ +
+
+ + + + +
enum GPU_PROCTEX_FILTER
+
+ +

Procedural texture filter values.

+ + + + + + + +
Enumerator
GPU_PT_NEAREST  +

Nearest-neighbor.

+
GPU_PT_LINEAR  +

Linear interpolation.

+
GPU_PT_NEAREST_MIP_NEAREST  +

Nearest-neighbor with mipmap using nearest-neighbor.

+
GPU_PT_LINEAR_MIP_NEAREST  +

Linear interpolation with mipmap using nearest-neighbor.

+
GPU_PT_NEAREST_MIP_LINEAR  +

Nearest-neighbor with mipmap using linear interpolation.

+
GPU_PT_LINEAR_MIP_LINEAR  +

Linear interpolation with mipmap using linear interpolation.

+
+ +
+
+ +
+
+ + + + +
enum GPU_PROCTEX_LUTID
+
+ +

Procedural texture LUT IDs.

+ + + + + + +
Enumerator
GPU_LUT_NOISE  +

Noise table.

+
GPU_LUT_RGBMAP  +

RGB mapping function table.

+
GPU_LUT_ALPHAMAP  +

Alpha mapping function table.

+
GPU_LUT_COLOR  +

Color table.

+
GPU_LUT_COLORDIF  +

Color difference table.

+
+ +
+
+ +
+
+ + + + +
enum GPU_PROCTEX_MAPFUNC
+
+ +

Procedural texture mapping functions.

+ + + + + + + + + + + +
Enumerator
GPU_PT_U  +

U.

+
GPU_PT_U2  +

U2.

+
GPU_PT_V  +

V.

+
GPU_PT_V2  +

V2.

+
GPU_PT_ADD  +

U+V.

+
GPU_PT_ADD2  +

U2+V2.

+
GPU_PT_SQRT2  +

sqrt(U2+V2)

+
GPU_PT_MIN  +

min

+
GPU_PT_MAX  +

max

+
GPU_PT_RMAX  +

rmax

+
+ +
+
+ +
+
+ + + + +
enum GPU_PROCTEX_SHIFT
+
+ +

Procedural texture shift values.

+ + + + +
Enumerator
GPU_PT_NONE  +

No shift.

+
GPU_PT_ODD  +

Odd shift.

+
GPU_PT_EVEN  +

Even shift.

+
+
diff --git a/enums_8h_source.html b/enums_8h_source.html index 690dbe4..4bdbd52 100644 --- a/enums_8h_source.html +++ b/enums_8h_source.html @@ -100,616 +100,712 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
8 #define GPU_TEXTURE_MAG_FILTER(v) (((v)&0x1)<<1)
9 /// Creates a texture minification filter parameter from a @ref GPU_TEXTURE_FILTER_PARAM
10 #define GPU_TEXTURE_MIN_FILTER(v) (((v)&0x1)<<2)
-
11 /// Creates a texture wrap S parameter from a @ref GPU_TEXTURE_WRAP_PARAM
-
12 #define GPU_TEXTURE_WRAP_S(v) (((v)&0x3)<<12)
-
13 /// Creates a texture wrap T parameter from a @ref GPU_TEXTURE_WRAP_PARAM
-
14 #define GPU_TEXTURE_WRAP_T(v) (((v)&0x3)<<8)
-
15 
-
16 /// Creates a combiner buffer write configuration.
-
17 #define GPU_TEV_BUFFER_WRITE_CONFIG(stage0, stage1, stage2, stage3) ((stage0) | ((stage1) << 1) | ((stage2) << 2) | ((stage3) << 3))
-
18 
-
19 /// Texture filters.
-
20 typedef enum
-
21 {
-
22  GPU_NEAREST = 0x0, ///< Nearest-neighbor interpolation.
-
23  GPU_LINEAR = 0x1, ///< Linear interpolation.
-
24 } GPU_TEXTURE_FILTER_PARAM;
-
25 
-
26 /// Texture wrap modes.
-
27 typedef enum
-
28 {
-
29  GPU_CLAMP_TO_EDGE = 0x0, ///< Clamps to edge.
-
30  GPU_CLAMP_TO_BORDER = 0x1, ///< Clamps to border.
-
31  GPU_REPEAT = 0x2, ///< Repeats texture.
-
32  GPU_MIRRORED_REPEAT = 0x3, ///< Repeats with mirrored texture.
-
33 } GPU_TEXTURE_WRAP_PARAM;
-
34 
-
35 /// Texture modes.
-
36 typedef enum
-
37 {
-
38  GPU_TEX_2D = 0x0, ///< 2D texture
-
39  GPU_TEX_CUBE_MAP = 0x1, ///< Cube map
-
40  GPU_TEX_SHADOW_2D = 0x2, ///< 2D Shadow texture
-
41  GPU_TEX_PROJECTION = 0x3, ///< Projection texture
-
42  GPU_TEX_SHADOW_CUBE = 0x4, ///< Shadow cube map
-
43  GPU_TEX_DISABLED = 0x5, ///< Disabled
-
44 } GPU_TEXTURE_MODE_PARAM;
-
45 
-
46 /// Supported texture units.
-
47 typedef enum
-
48 {
-
49  GPU_TEXUNIT0 = 0x1, ///< Texture unit 0.
-
50  GPU_TEXUNIT1 = 0x2, ///< Texture unit 1.
-
51  GPU_TEXUNIT2 = 0x4, ///< Texture unit 2.
-
52 } GPU_TEXUNIT;
+
11 /// Creates a texture mipmap filter parameter from a @ref GPU_TEXTURE_FILTER_PARAM
+
12 #define GPU_TEXTURE_MIP_FILTER(v) (((v)&0x1)<<24)
+
13 /// Creates a texture wrap S parameter from a @ref GPU_TEXTURE_WRAP_PARAM
+
14 #define GPU_TEXTURE_WRAP_S(v) (((v)&0x3)<<12)
+
15 /// Creates a texture wrap T parameter from a @ref GPU_TEXTURE_WRAP_PARAM
+
16 #define GPU_TEXTURE_WRAP_T(v) (((v)&0x3)<<8)
+
17 /// Creates a texture mode parameter from a @ref GPU_TEXTURE_MODE_PARAM
+
18 #define GPU_TEXTURE_MODE(v) (((v)&0x7)<<28)
+
19 /// Texture parameter indicating ETC1 texture.
+
20 #define GPU_TEXTURE_ETC1_PARAM BIT(5)
+
21 /// Texture parameter indicating shadow texture.
+
22 #define GPU_TEXTURE_SHADOW_PARAM BIT(20)
+
23 
+
24 /// Creates a combiner buffer write configuration.
+
25 #define GPU_TEV_BUFFER_WRITE_CONFIG(stage0, stage1, stage2, stage3) ((stage0) | ((stage1) << 1) | ((stage2) << 2) | ((stage3) << 3))
+
26 
+
27 /// Texture filters.
+
28 typedef enum
+
29 {
+
30  GPU_NEAREST = 0x0, ///< Nearest-neighbor interpolation.
+
31  GPU_LINEAR = 0x1, ///< Linear interpolation.
+
32 } GPU_TEXTURE_FILTER_PARAM;
+
33 
+
34 /// Texture wrap modes.
+
35 typedef enum
+
36 {
+
37  GPU_CLAMP_TO_EDGE = 0x0, ///< Clamps to edge.
+
38  GPU_CLAMP_TO_BORDER = 0x1, ///< Clamps to border.
+
39  GPU_REPEAT = 0x2, ///< Repeats texture.
+
40  GPU_MIRRORED_REPEAT = 0x3, ///< Repeats with mirrored texture.
+
41 } GPU_TEXTURE_WRAP_PARAM;
+
42 
+
43 /// Texture modes.
+
44 typedef enum
+
45 {
+
46  GPU_TEX_2D = 0x0, ///< 2D texture
+
47  GPU_TEX_CUBE_MAP = 0x1, ///< Cube map
+
48  GPU_TEX_SHADOW_2D = 0x2, ///< 2D Shadow texture
+
49  GPU_TEX_PROJECTION = 0x3, ///< Projection texture
+
50  GPU_TEX_SHADOW_CUBE = 0x4, ///< Shadow cube map
+
51  GPU_TEX_DISABLED = 0x5, ///< Disabled
+
52 } GPU_TEXTURE_MODE_PARAM;
53 
-
54 /// Supported texture formats.
-
55 typedef enum
+
54 /// Supported texture units.
+
55 typedef enum
56 {
-
57  GPU_RGBA8 = 0x0, ///< 8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
-
58  GPU_RGB8 = 0x1, ///< 8-bit Red + 8-bit Green + 8-bit Blue
-
59  GPU_RGBA5551 = 0x2, ///< 5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
-
60  GPU_RGB565 = 0x3, ///< 5-bit Red + 6-bit Green + 5-bit Blue
-
61  GPU_RGBA4 = 0x4, ///< 4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
-
62  GPU_LA8 = 0x5, ///< 8-bit Luminance + 8-bit Alpha
-
63  GPU_HILO8 = 0x6, ///< 8-bit Hi + 8-bit Lo
-
64  GPU_L8 = 0x7, ///< 8-bit Luminance
-
65  GPU_A8 = 0x8, ///< 8-bit Alpha
-
66  GPU_LA4 = 0x9, ///< 4-bit Luminance + 4-bit Alpha
-
67  GPU_L4 = 0xA, ///< 4-bit Luminance
-
68  GPU_ETC1 = 0xB, ///< ETC1 texture compression
-
69  GPU_ETC1A4 = 0xC, ///< ETC1 texture compression + 4-bit Alpha
-
70 } GPU_TEXCOLOR;
-
71 
-
72 /// Supported color buffer formats.
-
73 typedef enum
-
74 {
-
75  GPU_RB_RGBA8 = 0, ///< 8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
-
76  GPU_RB_RGB8 = 1, ///< 8-bit Red + 8-bit Green + 8-bit Blue
-
77  GPU_RB_RGBA5551 = 2, ///< 5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
-
78  GPU_RB_RGB565 = 3, ///< 5-bit Red + 6-bit Green + 5-bit Blue
-
79  GPU_RB_RGBA4 = 4, ///< 4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
-
80 } GPU_COLORBUF;
-
81 
-
82 /// Supported depth buffer formats.
-
83 typedef enum
-
84 {
-
85  GPU_RB_DEPTH16 = 0, ///< 16-bit Depth
-
86  GPU_RB_DEPTH24 = 2, ///< 24-bit Depth
-
87  GPU_RB_DEPTH24_STENCIL8 = 3, ///< 24-bit Depth + 8-bit Stencil
-
88 } GPU_DEPTHBUF;
+
57  GPU_TEXUNIT0 = 0x1, ///< Texture unit 0.
+
58  GPU_TEXUNIT1 = 0x2, ///< Texture unit 1.
+
59  GPU_TEXUNIT2 = 0x4, ///< Texture unit 2.
+
60 } GPU_TEXUNIT;
+
61 
+
62 /// Supported texture formats.
+
63 typedef enum
+
64 {
+
65  GPU_RGBA8 = 0x0, ///< 8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
+
66  GPU_RGB8 = 0x1, ///< 8-bit Red + 8-bit Green + 8-bit Blue
+
67  GPU_RGBA5551 = 0x2, ///< 5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
+
68  GPU_RGB565 = 0x3, ///< 5-bit Red + 6-bit Green + 5-bit Blue
+
69  GPU_RGBA4 = 0x4, ///< 4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
+
70  GPU_LA8 = 0x5, ///< 8-bit Luminance + 8-bit Alpha
+
71  GPU_HILO8 = 0x6, ///< 8-bit Hi + 8-bit Lo
+
72  GPU_L8 = 0x7, ///< 8-bit Luminance
+
73  GPU_A8 = 0x8, ///< 8-bit Alpha
+
74  GPU_LA4 = 0x9, ///< 4-bit Luminance + 4-bit Alpha
+
75  GPU_L4 = 0xA, ///< 4-bit Luminance
+
76  GPU_ETC1 = 0xB, ///< ETC1 texture compression
+
77  GPU_ETC1A4 = 0xC, ///< ETC1 texture compression + 4-bit Alpha
+
78 } GPU_TEXCOLOR;
+
79 
+
80 /// Procedural texture clamp modes.
+
81 typedef enum
+
82 {
+
83  GPU_PT_CLAMP_TO_ZERO = 0, ///< Clamp to zero.
+
84  GPU_PT_CLAMP_TO_EDGE = 1, ///< Clamp to edge.
+
85  GPU_PT_REPEAT = 2, ///< Symmetrical repeat.
+
86  GPU_PT_MIRRORED_REPEAT = 3, ///< Mirrored repeat.
+
87  GPU_PT_PULSE = 4, ///< Pulse.
+
88 } GPU_PROCTEX_CLAMP;
89 
-
90 /// Test functions.
-
91 typedef enum
+
90 /// Procedural texture mapping functions.
+
91 typedef enum
92 {
-
93  GPU_NEVER = 0, ///< Never pass.
-
94  GPU_ALWAYS = 1, ///< Always pass.
-
95  GPU_EQUAL = 2, ///< Pass if equal.
-
96  GPU_NOTEQUAL = 3, ///< Pass if not equal.
-
97  GPU_LESS = 4, ///< Pass if less than.
-
98  GPU_LEQUAL = 5, ///< Pass if less than or equal.
-
99  GPU_GREATER = 6, ///< Pass if greater than.
-
100  GPU_GEQUAL = 7, ///< Pass if greater than or equal.
-
101 } GPU_TESTFUNC;
-
102 
-
103 /// Early depth test functions.
-
104 typedef enum
-
105 {
-
106  GPU_EARLYDEPTH_GEQUAL = 0, ///< Pass if greater than or equal.
-
107  GPU_EARLYDEPTH_GREATER = 1, ///< Pass if greater than.
-
108  GPU_EARLYDEPTH_LEQUAL = 2, ///< Pass if less than or equal.
-
109  GPU_EARLYDEPTH_LESS = 3, ///< Pass if less than.
-
110 } GPU_EARLYDEPTHFUNC;
-
111 
-
112 /// Scissor test modes.
-
113 typedef enum
-
114 {
-
115  GPU_SCISSOR_DISABLE = 0, ///< Disable.
-
116  GPU_SCISSOR_INVERT = 1, ///< Exclude pixels inside the scissor box.
-
117  // 2 is the same as 0
-
118  GPU_SCISSOR_NORMAL = 3, ///< Exclude pixels outside of the scissor box.
-
119 } GPU_SCISSORMODE;
-
120 
-
121 /// Stencil operations.
-
122 typedef enum
-
123 {
-
124  GPU_STENCIL_KEEP = 0, ///< Keep old value. (old_stencil)
-
125  GPU_STENCIL_ZERO = 1, ///< Zero. (0)
-
126  GPU_STENCIL_REPLACE = 2, ///< Replace value. (ref)
-
127  GPU_STENCIL_INCR = 3, ///< Increment value. (old_stencil + 1 saturated to [0, 255])
-
128  GPU_STENCIL_DECR = 4, ///< Decrement value. (old_stencil - 1 saturated to [0, 255])
-
129  GPU_STENCIL_INVERT = 5, ///< Invert value. (~old_stencil)
-
130  GPU_STENCIL_INCR_WRAP = 6, ///< Increment value. (old_stencil + 1)
-
131  GPU_STENCIL_DECR_WRAP = 7, ///< Decrement value. (old_stencil - 1)
-
132 } GPU_STENCILOP;
+
93  GPU_PT_U = 0, ///< U
+
94  GPU_PT_U2 = 1, ///< U2
+
95  GPU_PT_V = 2, ///< V
+
96  GPU_PT_V2 = 3, ///< V2
+
97  GPU_PT_ADD = 4, ///< U+V
+
98  GPU_PT_ADD2 = 5, ///< U2+V2
+
99  GPU_PT_SQRT2 = 6, ///< sqrt(U2+V2)
+
100  GPU_PT_MIN = 7, ///< min
+
101  GPU_PT_MAX = 8, ///< max
+
102  GPU_PT_RMAX = 9, ///< rmax
+
103 } GPU_PROCTEX_MAPFUNC;
+
104 
+
105 /// Procedural texture shift values.
+
106 typedef enum
+
107 {
+
108  GPU_PT_NONE = 0, ///< No shift.
+
109  GPU_PT_ODD = 1, ///< Odd shift.
+
110  GPU_PT_EVEN = 2, ///< Even shift.
+
111 } GPU_PROCTEX_SHIFT;
+
112 
+
113 /// Procedural texture filter values.
+
114 typedef enum
+
115 {
+
116  GPU_PT_NEAREST = 0, ///< Nearest-neighbor
+
117  GPU_PT_LINEAR = 1, ///< Linear interpolation
+
118  GPU_PT_NEAREST_MIP_NEAREST = 2, ///< Nearest-neighbor with mipmap using nearest-neighbor
+
119  GPU_PT_LINEAR_MIP_NEAREST = 3, ///< Linear interpolation with mipmap using nearest-neighbor
+
120  GPU_PT_NEAREST_MIP_LINEAR = 4, ///< Nearest-neighbor with mipmap using linear interpolation
+
121  GPU_PT_LINEAR_MIP_LINEAR = 5, ///< Linear interpolation with mipmap using linear interpolation
+
122 } GPU_PROCTEX_FILTER;
+
123 
+
124 /// Procedural texture LUT IDs.
+
125 typedef enum
+
126 {
+
127  GPU_LUT_NOISE = 0, ///< Noise table
+
128  GPU_LUT_RGBMAP = 1, ///< RGB mapping function table
+
129  GPU_LUT_ALPHAMAP = 2, ///< Alpha mapping function table
+
130  GPU_LUT_COLOR = 3, ///< Color table
+
131  GPU_LUT_COLORDIF = 4, ///< Color difference table
+
132 } GPU_PROCTEX_LUTID;
133 
-
134 /// Pixel write mask.
-
135 typedef enum
+
134 /// Supported color buffer formats.
+
135 typedef enum
136 {
-
137  GPU_WRITE_RED = 0x01, ///< Write red.
-
138  GPU_WRITE_GREEN = 0x02, ///< Write green.
-
139  GPU_WRITE_BLUE = 0x04, ///< Write blue.
-
140  GPU_WRITE_ALPHA = 0x08, ///< Write alpha.
-
141  GPU_WRITE_DEPTH = 0x10, ///< Write depth.
-
142 
-
143  GPU_WRITE_COLOR = 0x0F, ///< Write all color components.
-
144  GPU_WRITE_ALL = 0x1F, ///< Write all components.
-
145 } GPU_WRITEMASK;
-
146 
-
147 /// Blend modes.
-
148 typedef enum
-
149 {
-
150  GPU_BLEND_ADD = 0, ///< Add colors.
-
151  GPU_BLEND_SUBTRACT = 1, ///< Subtract colors.
-
152  GPU_BLEND_REVERSE_SUBTRACT = 2, ///< Reverse-subtract colors.
-
153  GPU_BLEND_MIN = 3, ///< Use the minimum color.
-
154  GPU_BLEND_MAX = 4, ///< Use the maximum color.
-
155 } GPU_BLENDEQUATION;
-
156 
-
157 /// Blend factors.
-
158 typedef enum
-
159 {
-
160  GPU_ZERO = 0, ///< Zero.
-
161  GPU_ONE = 1, ///< One.
-
162  GPU_SRC_COLOR = 2, ///< Source color.
-
163  GPU_ONE_MINUS_SRC_COLOR = 3, ///< Source color - 1.
-
164  GPU_DST_COLOR = 4, ///< Destination color.
-
165  GPU_ONE_MINUS_DST_COLOR = 5, ///< Destination color - 1.
-
166  GPU_SRC_ALPHA = 6, ///< Source alpha.
-
167  GPU_ONE_MINUS_SRC_ALPHA = 7, ///< Source alpha - 1.
-
168  GPU_DST_ALPHA = 8, ///< Destination alpha.
-
169  GPU_ONE_MINUS_DST_ALPHA = 9, ///< Destination alpha - 1.
-
170  GPU_CONSTANT_COLOR = 10, ///< Constant color.
-
171  GPU_ONE_MINUS_CONSTANT_COLOR = 11, ///< Constant color - 1.
-
172  GPU_CONSTANT_ALPHA = 12, ///< Constant alpha.
-
173  GPU_ONE_MINUS_CONSTANT_ALPHA = 13, ///< Constant alpha - 1.
-
174  GPU_SRC_ALPHA_SATURATE = 14, ///< Saturated alpha.
-
175 } GPU_BLENDFACTOR;
-
176 
-
177 /// Logical operations.
-
178 typedef enum
-
179 {
-
180  GPU_LOGICOP_CLEAR = 0, ///< Clear.
-
181  GPU_LOGICOP_AND = 1, ///< Bitwise AND.
-
182  GPU_LOGICOP_AND_REVERSE = 2, ///< Reverse bitwise AND.
-
183  GPU_LOGICOP_COPY = 3, ///< Copy.
-
184  GPU_LOGICOP_SET = 4, ///< Set.
-
185  GPU_LOGICOP_COPY_INVERTED = 5, ///< Inverted copy.
-
186  GPU_LOGICOP_NOOP = 6, ///< No operation.
-
187  GPU_LOGICOP_INVERT = 7, ///< Invert.
-
188  GPU_LOGICOP_NAND = 8, ///< Bitwise NAND.
-
189  GPU_LOGICOP_OR = 9, ///< Bitwise OR.
-
190  GPU_LOGICOP_NOR = 10, ///< Bitwise NOR.
-
191  GPU_LOGICOP_XOR = 11, ///< Bitwise XOR.
-
192  GPU_LOGICOP_EQUIV = 12, ///< Equivalent.
-
193  GPU_LOGICOP_AND_INVERTED = 13, ///< Inverted bitwise AND.
-
194  GPU_LOGICOP_OR_REVERSE = 14, ///< Reverse bitwise OR.
-
195  GPU_LOGICOP_OR_INVERTED = 15, ///< Inverted bitwize OR.
-
196 } GPU_LOGICOP;
-
197 
-
198 /// Fragment operation modes.
-
199 typedef enum
-
200 {
-
201  GPU_FRAGOPMODE_GL = 0, ///< OpenGL mode.
-
202  GPU_FRAGOPMODE_GAS_ACC = 1, ///< Gas mode (?).
-
203  GPU_FRAGOPMODE_SHADOW = 3, ///< Shadow mode (?).
-
204 } GPU_FRAGOPMODE;
-
205 
-
206 /// Supported component formats.
-
207 typedef enum
-
208 {
-
209  GPU_BYTE = 0, ///< 8-bit byte.
-
210  GPU_UNSIGNED_BYTE = 1, ///< 8-bit unsigned byte.
-
211  GPU_SHORT = 2, ///< 16-bit short.
-
212  GPU_FLOAT = 3, ///< 32-bit float.
-
213 } GPU_FORMATS;
-
214 
-
215 /// Cull modes.
-
216 typedef enum
-
217 {
-
218  GPU_CULL_NONE = 0, ///< Disabled.
-
219  GPU_CULL_FRONT_CCW = 1, ///< Front, counter-clockwise.
-
220  GPU_CULL_BACK_CCW = 2, ///< Back, counter-clockwise.
-
221 } GPU_CULLMODE;
-
222 
-
223 /// Creates a VBO attribute parameter from its index, size, and format.
-
224 #define GPU_ATTRIBFMT(i, n, f) (((((n)-1)<<2)|((f)&3))<<((i)*4))
-
225 
-
226 /// Texture combiner sources.
-
227 typedef enum
-
228 {
-
229  GPU_PRIMARY_COLOR = 0x00, ///< Primary color.
-
230  GPU_FRAGMENT_PRIMARY_COLOR = 0x01, ///< Primary fragment color.
-
231  GPU_FRAGMENT_SECONDARY_COLOR = 0x02, ///< Secondary fragment color.
-
232  GPU_TEXTURE0 = 0x03, ///< Texture unit 0.
-
233  GPU_TEXTURE1 = 0x04, ///< Texture unit 1.
-
234  GPU_TEXTURE2 = 0x05, ///< Texture unit 2.
-
235  GPU_TEXTURE3 = 0x06, ///< Texture unit 3.
-
236  GPU_PREVIOUS_BUFFER = 0x0D, ///< Previous buffer.
-
237  GPU_CONSTANT = 0x0E, ///< Constant value.
-
238  GPU_PREVIOUS = 0x0F, ///< Previous value.
-
239 } GPU_TEVSRC;
-
240 
-
241 /// Texture RGB combiner operands.
-
242 typedef enum
-
243 {
-
244  GPU_TEVOP_RGB_SRC_COLOR = 0x00, ///< Source color.
-
245  GPU_TEVOP_RGB_ONE_MINUS_SRC_COLOR = 0x01, ///< Source color - 1.
-
246  GPU_TEVOP_RGB_SRC_ALPHA = 0x02, ///< Source alpha.
-
247  GPU_TEVOP_RGB_ONE_MINUS_SRC_ALPHA = 0x03, ///< Source alpha - 1.
-
248  GPU_TEVOP_RGB_SRC_R = 0x04, ///< Source red.
-
249  GPU_TEVOP_RGB_ONE_MINUS_SRC_R = 0x05, ///< Source red - 1.
-
250  GPU_TEVOP_RGB_0x06 = 0x06, ///< Unknown.
-
251  GPU_TEVOP_RGB_0x07 = 0x07, ///< Unknown.
-
252  GPU_TEVOP_RGB_SRC_G = 0x08, ///< Source green.
-
253  GPU_TEVOP_RGB_ONE_MINUS_SRC_G = 0x09, ///< Source green - 1.
-
254  GPU_TEVOP_RGB_0x0A = 0x0A, ///< Unknown.
-
255  GPU_TEVOP_RGB_0x0B = 0x0B, ///< Unknown.
-
256  GPU_TEVOP_RGB_SRC_B = 0x0C, ///< Source blue.
-
257  GPU_TEVOP_RGB_ONE_MINUS_SRC_B = 0x0D, ///< Source blue - 1.
-
258  GPU_TEVOP_RGB_0x0E = 0x0E, ///< Unknown.
-
259  GPU_TEVOP_RGB_0x0F = 0x0F, ///< Unknown.
-
260 } GPU_TEVOP_RGB;
-
261 
-
262 /// Texture Alpha combiner operands.
-
263 typedef enum
-
264 {
-
265  GPU_TEVOP_A_SRC_ALPHA = 0x00, ///< Source alpha.
-
266  GPU_TEVOP_A_ONE_MINUS_SRC_ALPHA = 0x01, ///< Source alpha - 1.
-
267  GPU_TEVOP_A_SRC_R = 0x02, ///< Source red.
-
268  GPU_TEVOP_A_ONE_MINUS_SRC_R = 0x03, ///< Source red - 1.
-
269  GPU_TEVOP_A_SRC_G = 0x04, ///< Source green.
-
270  GPU_TEVOP_A_ONE_MINUS_SRC_G = 0x05, ///< Source green - 1.
-
271  GPU_TEVOP_A_SRC_B = 0x06, ///< Source blue.
-
272  GPU_TEVOP_A_ONE_MINUS_SRC_B = 0x07, ///< Source blue - 1.
-
273 } GPU_TEVOP_A;
-
274 
-
275 /// Texture combiner functions.
-
276 typedef enum
-
277 {
-
278  GPU_REPLACE = 0x00, ///< Replace.
-
279  GPU_MODULATE = 0x01, ///< Modulate.
-
280  GPU_ADD = 0x02, ///< Add.
-
281  GPU_ADD_SIGNED = 0x03, ///< Signed add.
-
282  GPU_INTERPOLATE = 0x04, ///< Interpolate.
-
283  GPU_SUBTRACT = 0x05, ///< Subtract.
-
284  GPU_DOT3_RGB = 0x06, ///< Dot3. RGB only.
-
285  GPU_MULTIPLY_ADD = 0x08, ///< Multiply then add.
-
286  GPU_ADD_MULTIPLY = 0x09, ///< Add then multiply.
-
287 } GPU_COMBINEFUNC;
-
288 
-
289 /// Texture scale factors.
-
290 typedef enum
-
291 {
-
292  GPU_TEVSCALE_1 = 0x0, ///< 1x
-
293  GPU_TEVSCALE_2 = 0x1, ///< 2x
-
294  GPU_TEVSCALE_4 = 0x2, ///< 4x
-
295 } GPU_TEVSCALE;
-
296 
-
297 /// Creates a texture combiner source parameter from three sources.
-
298 #define GPU_TEVSOURCES(a,b,c) (((a))|((b)<<4)|((c)<<8))
-
299 /// Creates a texture combiner operand parameter from three operands.
-
300 #define GPU_TEVOPERANDS(a,b,c) (((a))|((b)<<4)|((c)<<8))
-
301 
-
302 /// Creates a light environment layer configuration parameter.
-
303 #define GPU_LIGHT_ENV_LAYER_CONFIG(n) ((n)+((n)==7))
-
304 /// Light shadow disable bits in GPUREG_LIGHT_CONFIG1.
-
305 #define GPU_LC1_SHADOWBIT(n) BIT(n)
-
306 /// Light spot disable bits in GPUREG_LIGHT_CONFIG1.
-
307 #define GPU_LC1_SPOTBIT(n) BIT((n)+8)
-
308 /// LUT disable bits in GPUREG_LIGHT_CONFIG1.
-
309 #define GPU_LC1_LUTBIT(n) BIT((n)+16)
-
310 /// Light distance attenuation disable bits in GPUREG_LIGHT_CONFIG1.
-
311 #define GPU_LC1_ATTNBIT(n) BIT((n)+24)
-
312 /// Creates a light permutation parameter.
-
313 #define GPU_LIGHTPERM(i,n) ((n) << (i))
-
314 /// Creates a light LUT input parameter.
-
315 #define GPU_LIGHTLUTINPUT(i,n) ((n) << ((i)*4))
-
316 /// Creates a light LUT index parameter.
-
317 #define GPU_LIGHTLUTIDX(c,i,o) ((o) | ((i) << 8) | ((c) << 11))
-
318 /// Creates a light color parameter from red, green, and blue components.
-
319 #define GPU_LIGHTCOLOR(r,g,b) (((b) & 0xFF) | (((g) << 10) & 0xFF) | (((r) << 20) & 0xFF))
-
320 
-
321 /// Fresnel options.
-
322 typedef enum
-
323 {
-
324  GPU_NO_FRESNEL = 0, ///< None.
-
325  GPU_PRI_ALPHA_FRESNEL = 1, ///< Primary alpha.
-
326  GPU_SEC_ALPHA_FRESNEL = 2, ///< Secondary alpha.
-
327  GPU_PRI_SEC_ALPHA_FRESNEL = 3, ///< Primary and secondary alpha.
-
328 } GPU_FRESNELSEL;
-
329 
-
330 /// Bump map modes.
-
331 typedef enum
-
332 {
-
333  GPU_BUMP_NOT_USED = 0, ///< Disabled.
-
334  GPU_BUMP_AS_BUMP = 1, ///< Bump as bump mapping.
-
335  GPU_BUMP_AS_TANG = 2, ///< Bump as tangent/normal mapping.
-
336 } GPU_BUMPMODE;
-
337 
-
338 /// LUT IDs.
-
339 typedef enum
-
340 {
-
341  GPU_LUT_D0 = 0, ///< D0 LUT.
-
342  GPU_LUT_D1 = 1, ///< D1 LUT.
-
343  GPU_LUT_SP = 2, ///< Spotlight LUT.
-
344  GPU_LUT_FR = 3, ///< Fresnel LUT.
-
345  GPU_LUT_RB = 4, ///< Reflection-Blue LUT.
-
346  GPU_LUT_RG = 5, ///< Reflection-Green LUT.
-
347  GPU_LUT_RR = 6, ///< Reflection-Red LUT.
-
348  GPU_LUT_DA = 7, ///< Distance attenuation LUT.
-
349 } GPU_LIGHTLUTID;
+
137  GPU_RB_RGBA8 = 0, ///< 8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
+
138  GPU_RB_RGB8 = 1, ///< 8-bit Red + 8-bit Green + 8-bit Blue
+
139  GPU_RB_RGBA5551 = 2, ///< 5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
+
140  GPU_RB_RGB565 = 3, ///< 5-bit Red + 6-bit Green + 5-bit Blue
+
141  GPU_RB_RGBA4 = 4, ///< 4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
+
142 } GPU_COLORBUF;
+
143 
+
144 /// Supported depth buffer formats.
+
145 typedef enum
+
146 {
+
147  GPU_RB_DEPTH16 = 0, ///< 16-bit Depth
+
148  GPU_RB_DEPTH24 = 2, ///< 24-bit Depth
+
149  GPU_RB_DEPTH24_STENCIL8 = 3, ///< 24-bit Depth + 8-bit Stencil
+
150 } GPU_DEPTHBUF;
+
151 
+
152 /// Test functions.
+
153 typedef enum
+
154 {
+
155  GPU_NEVER = 0, ///< Never pass.
+
156  GPU_ALWAYS = 1, ///< Always pass.
+
157  GPU_EQUAL = 2, ///< Pass if equal.
+
158  GPU_NOTEQUAL = 3, ///< Pass if not equal.
+
159  GPU_LESS = 4, ///< Pass if less than.
+
160  GPU_LEQUAL = 5, ///< Pass if less than or equal.
+
161  GPU_GREATER = 6, ///< Pass if greater than.
+
162  GPU_GEQUAL = 7, ///< Pass if greater than or equal.
+
163 } GPU_TESTFUNC;
+
164 
+
165 /// Early depth test functions.
+
166 typedef enum
+
167 {
+
168  GPU_EARLYDEPTH_GEQUAL = 0, ///< Pass if greater than or equal.
+
169  GPU_EARLYDEPTH_GREATER = 1, ///< Pass if greater than.
+
170  GPU_EARLYDEPTH_LEQUAL = 2, ///< Pass if less than or equal.
+
171  GPU_EARLYDEPTH_LESS = 3, ///< Pass if less than.
+
172 } GPU_EARLYDEPTHFUNC;
+
173 
+
174 /// Scissor test modes.
+
175 typedef enum
+
176 {
+
177  GPU_SCISSOR_DISABLE = 0, ///< Disable.
+
178  GPU_SCISSOR_INVERT = 1, ///< Exclude pixels inside the scissor box.
+
179  // 2 is the same as 0
+
180  GPU_SCISSOR_NORMAL = 3, ///< Exclude pixels outside of the scissor box.
+
181 } GPU_SCISSORMODE;
+
182 
+
183 /// Stencil operations.
+
184 typedef enum
+
185 {
+
186  GPU_STENCIL_KEEP = 0, ///< Keep old value. (old_stencil)
+
187  GPU_STENCIL_ZERO = 1, ///< Zero. (0)
+
188  GPU_STENCIL_REPLACE = 2, ///< Replace value. (ref)
+
189  GPU_STENCIL_INCR = 3, ///< Increment value. (old_stencil + 1 saturated to [0, 255])
+
190  GPU_STENCIL_DECR = 4, ///< Decrement value. (old_stencil - 1 saturated to [0, 255])
+
191  GPU_STENCIL_INVERT = 5, ///< Invert value. (~old_stencil)
+
192  GPU_STENCIL_INCR_WRAP = 6, ///< Increment value. (old_stencil + 1)
+
193  GPU_STENCIL_DECR_WRAP = 7, ///< Decrement value. (old_stencil - 1)
+
194 } GPU_STENCILOP;
+
195 
+
196 /// Pixel write mask.
+
197 typedef enum
+
198 {
+
199  GPU_WRITE_RED = 0x01, ///< Write red.
+
200  GPU_WRITE_GREEN = 0x02, ///< Write green.
+
201  GPU_WRITE_BLUE = 0x04, ///< Write blue.
+
202  GPU_WRITE_ALPHA = 0x08, ///< Write alpha.
+
203  GPU_WRITE_DEPTH = 0x10, ///< Write depth.
+
204 
+
205  GPU_WRITE_COLOR = 0x0F, ///< Write all color components.
+
206  GPU_WRITE_ALL = 0x1F, ///< Write all components.
+
207 } GPU_WRITEMASK;
+
208 
+
209 /// Blend modes.
+
210 typedef enum
+
211 {
+
212  GPU_BLEND_ADD = 0, ///< Add colors.
+
213  GPU_BLEND_SUBTRACT = 1, ///< Subtract colors.
+
214  GPU_BLEND_REVERSE_SUBTRACT = 2, ///< Reverse-subtract colors.
+
215  GPU_BLEND_MIN = 3, ///< Use the minimum color.
+
216  GPU_BLEND_MAX = 4, ///< Use the maximum color.
+
217 } GPU_BLENDEQUATION;
+
218 
+
219 /// Blend factors.
+
220 typedef enum
+
221 {
+
222  GPU_ZERO = 0, ///< Zero.
+
223  GPU_ONE = 1, ///< One.
+
224  GPU_SRC_COLOR = 2, ///< Source color.
+
225  GPU_ONE_MINUS_SRC_COLOR = 3, ///< Source color - 1.
+
226  GPU_DST_COLOR = 4, ///< Destination color.
+
227  GPU_ONE_MINUS_DST_COLOR = 5, ///< Destination color - 1.
+
228  GPU_SRC_ALPHA = 6, ///< Source alpha.
+
229  GPU_ONE_MINUS_SRC_ALPHA = 7, ///< Source alpha - 1.
+
230  GPU_DST_ALPHA = 8, ///< Destination alpha.
+
231  GPU_ONE_MINUS_DST_ALPHA = 9, ///< Destination alpha - 1.
+
232  GPU_CONSTANT_COLOR = 10, ///< Constant color.
+
233  GPU_ONE_MINUS_CONSTANT_COLOR = 11, ///< Constant color - 1.
+
234  GPU_CONSTANT_ALPHA = 12, ///< Constant alpha.
+
235  GPU_ONE_MINUS_CONSTANT_ALPHA = 13, ///< Constant alpha - 1.
+
236  GPU_SRC_ALPHA_SATURATE = 14, ///< Saturated alpha.
+
237 } GPU_BLENDFACTOR;
+
238 
+
239 /// Logical operations.
+
240 typedef enum
+
241 {
+
242  GPU_LOGICOP_CLEAR = 0, ///< Clear.
+
243  GPU_LOGICOP_AND = 1, ///< Bitwise AND.
+
244  GPU_LOGICOP_AND_REVERSE = 2, ///< Reverse bitwise AND.
+
245  GPU_LOGICOP_COPY = 3, ///< Copy.
+
246  GPU_LOGICOP_SET = 4, ///< Set.
+
247  GPU_LOGICOP_COPY_INVERTED = 5, ///< Inverted copy.
+
248  GPU_LOGICOP_NOOP = 6, ///< No operation.
+
249  GPU_LOGICOP_INVERT = 7, ///< Invert.
+
250  GPU_LOGICOP_NAND = 8, ///< Bitwise NAND.
+
251  GPU_LOGICOP_OR = 9, ///< Bitwise OR.
+
252  GPU_LOGICOP_NOR = 10, ///< Bitwise NOR.
+
253  GPU_LOGICOP_XOR = 11, ///< Bitwise XOR.
+
254  GPU_LOGICOP_EQUIV = 12, ///< Equivalent.
+
255  GPU_LOGICOP_AND_INVERTED = 13, ///< Inverted bitwise AND.
+
256  GPU_LOGICOP_OR_REVERSE = 14, ///< Reverse bitwise OR.
+
257  GPU_LOGICOP_OR_INVERTED = 15, ///< Inverted bitwize OR.
+
258 } GPU_LOGICOP;
+
259 
+
260 /// Fragment operation modes.
+
261 typedef enum
+
262 {
+
263  GPU_FRAGOPMODE_GL = 0, ///< OpenGL mode.
+
264  GPU_FRAGOPMODE_GAS_ACC = 1, ///< Gas mode (?).
+
265  GPU_FRAGOPMODE_SHADOW = 3, ///< Shadow mode (?).
+
266 } GPU_FRAGOPMODE;
+
267 
+
268 /// Supported component formats.
+
269 typedef enum
+
270 {
+
271  GPU_BYTE = 0, ///< 8-bit byte.
+
272  GPU_UNSIGNED_BYTE = 1, ///< 8-bit unsigned byte.
+
273  GPU_SHORT = 2, ///< 16-bit short.
+
274  GPU_FLOAT = 3, ///< 32-bit float.
+
275 } GPU_FORMATS;
+
276 
+
277 /// Cull modes.
+
278 typedef enum
+
279 {
+
280  GPU_CULL_NONE = 0, ///< Disabled.
+
281  GPU_CULL_FRONT_CCW = 1, ///< Front, counter-clockwise.
+
282  GPU_CULL_BACK_CCW = 2, ///< Back, counter-clockwise.
+
283 } GPU_CULLMODE;
+
284 
+
285 /// Creates a VBO attribute parameter from its index, size, and format.
+
286 #define GPU_ATTRIBFMT(i, n, f) (((((n)-1)<<2)|((f)&3))<<((i)*4))
+
287 
+
288 /// Texture combiner sources.
+
289 typedef enum
+
290 {
+
291  GPU_PRIMARY_COLOR = 0x00, ///< Primary color.
+
292  GPU_FRAGMENT_PRIMARY_COLOR = 0x01, ///< Primary fragment color.
+
293  GPU_FRAGMENT_SECONDARY_COLOR = 0x02, ///< Secondary fragment color.
+
294  GPU_TEXTURE0 = 0x03, ///< Texture unit 0.
+
295  GPU_TEXTURE1 = 0x04, ///< Texture unit 1.
+
296  GPU_TEXTURE2 = 0x05, ///< Texture unit 2.
+
297  GPU_TEXTURE3 = 0x06, ///< Texture unit 3.
+
298  GPU_PREVIOUS_BUFFER = 0x0D, ///< Previous buffer.
+
299  GPU_CONSTANT = 0x0E, ///< Constant value.
+
300  GPU_PREVIOUS = 0x0F, ///< Previous value.
+
301 } GPU_TEVSRC;
+
302 
+
303 /// Texture RGB combiner operands.
+
304 typedef enum
+
305 {
+
306  GPU_TEVOP_RGB_SRC_COLOR = 0x00, ///< Source color.
+
307  GPU_TEVOP_RGB_ONE_MINUS_SRC_COLOR = 0x01, ///< Source color - 1.
+
308  GPU_TEVOP_RGB_SRC_ALPHA = 0x02, ///< Source alpha.
+
309  GPU_TEVOP_RGB_ONE_MINUS_SRC_ALPHA = 0x03, ///< Source alpha - 1.
+
310  GPU_TEVOP_RGB_SRC_R = 0x04, ///< Source red.
+
311  GPU_TEVOP_RGB_ONE_MINUS_SRC_R = 0x05, ///< Source red - 1.
+
312  GPU_TEVOP_RGB_0x06 = 0x06, ///< Unknown.
+
313  GPU_TEVOP_RGB_0x07 = 0x07, ///< Unknown.
+
314  GPU_TEVOP_RGB_SRC_G = 0x08, ///< Source green.
+
315  GPU_TEVOP_RGB_ONE_MINUS_SRC_G = 0x09, ///< Source green - 1.
+
316  GPU_TEVOP_RGB_0x0A = 0x0A, ///< Unknown.
+
317  GPU_TEVOP_RGB_0x0B = 0x0B, ///< Unknown.
+
318  GPU_TEVOP_RGB_SRC_B = 0x0C, ///< Source blue.
+
319  GPU_TEVOP_RGB_ONE_MINUS_SRC_B = 0x0D, ///< Source blue - 1.
+
320  GPU_TEVOP_RGB_0x0E = 0x0E, ///< Unknown.
+
321  GPU_TEVOP_RGB_0x0F = 0x0F, ///< Unknown.
+
322 } GPU_TEVOP_RGB;
+
323 
+
324 /// Texture Alpha combiner operands.
+
325 typedef enum
+
326 {
+
327  GPU_TEVOP_A_SRC_ALPHA = 0x00, ///< Source alpha.
+
328  GPU_TEVOP_A_ONE_MINUS_SRC_ALPHA = 0x01, ///< Source alpha - 1.
+
329  GPU_TEVOP_A_SRC_R = 0x02, ///< Source red.
+
330  GPU_TEVOP_A_ONE_MINUS_SRC_R = 0x03, ///< Source red - 1.
+
331  GPU_TEVOP_A_SRC_G = 0x04, ///< Source green.
+
332  GPU_TEVOP_A_ONE_MINUS_SRC_G = 0x05, ///< Source green - 1.
+
333  GPU_TEVOP_A_SRC_B = 0x06, ///< Source blue.
+
334  GPU_TEVOP_A_ONE_MINUS_SRC_B = 0x07, ///< Source blue - 1.
+
335 } GPU_TEVOP_A;
+
336 
+
337 /// Texture combiner functions.
+
338 typedef enum
+
339 {
+
340  GPU_REPLACE = 0x00, ///< Replace.
+
341  GPU_MODULATE = 0x01, ///< Modulate.
+
342  GPU_ADD = 0x02, ///< Add.
+
343  GPU_ADD_SIGNED = 0x03, ///< Signed add.
+
344  GPU_INTERPOLATE = 0x04, ///< Interpolate.
+
345  GPU_SUBTRACT = 0x05, ///< Subtract.
+
346  GPU_DOT3_RGB = 0x06, ///< Dot3. RGB only.
+
347  GPU_MULTIPLY_ADD = 0x08, ///< Multiply then add.
+
348  GPU_ADD_MULTIPLY = 0x09, ///< Add then multiply.
+
349 } GPU_COMBINEFUNC;
350 
-
351 /// LUT inputs.
-
352 typedef enum
+
351 /// Texture scale factors.
+
352 typedef enum
353 {
-
354  GPU_LUTINPUT_NH = 0, ///< Normal*HalfVector
-
355  GPU_LUTINPUT_VH = 1, ///< View*HalfVector
-
356  GPU_LUTINPUT_NV = 2, ///< Normal*View
-
357  GPU_LUTINPUT_LN = 3, ///< LightVector*Normal
-
358  GPU_LUTINPUT_SP = 4, ///< -LightVector*SpotlightVector
-
359  GPU_LUTINPUT_CP = 5, ///< cosine of phi
-
360 } GPU_LIGHTLUTINPUT;
-
361 
-
362 /// LUT scalers.
-
363 typedef enum
-
364 {
-
365  GPU_LUTSCALER_1x = 0, ///< 1x scale.
-
366  GPU_LUTSCALER_2x = 1, ///< 2x scale.
-
367  GPU_LUTSCALER_4x = 2, ///< 4x scale.
-
368  GPU_LUTSCALER_8x = 3, ///< 8x scale.
-
369  GPU_LUTSCALER_0_25x = 6, ///< 0.25x scale.
-
370  GPU_LUTSCALER_0_5x = 7, ///< 0.5x scale.
-
371 } GPU_LIGHTLUTSCALER;
-
372 
-
373 /// LUT selection.
-
374 typedef enum
-
375 {
-
376  GPU_LUTSELECT_COMMON = 0, ///< LUTs that are common to all lights.
-
377  GPU_LUTSELECT_SP = 1, ///< Spotlight LUT.
-
378  GPU_LUTSELECT_DA = 2, ///< Distance attenuation LUT.
-
379 } GPU_LIGHTLUTSELECT;
-
380 
-
381 /// Supported primitives.
-
382 typedef enum
-
383 {
-
384  GPU_TRIANGLES = 0x0000, ///< Triangles.
-
385  GPU_TRIANGLE_STRIP = 0x0100, ///< Triangle strip.
-
386  GPU_TRIANGLE_FAN = 0x0200, ///< Triangle fan.
-
387  GPU_GEOMETRY_PRIM = 0x0300, ///< Geometry shader primitive.
-
388 } GPU_Primitive_t;
-
389 
-
390 /// Shader types.
-
391 typedef enum
-
392 {
-
393  GPU_VERTEX_SHADER = 0x0, ///< Vertex shader.
-
394  GPU_GEOMETRY_SHADER = 0x1, ///< Geometry shader.
-
395 } GPU_SHADER_TYPE;
-
Constant color - 1.
Definition: enums.h:171
-
Dot3. RGB only.
Definition: enums.h:284
-
Write all components.
Definition: enums.h:144
-
Normal*View.
Definition: enums.h:356
-
Secondary fragment color.
Definition: enums.h:231
-
8-bit Luminance + 8-bit Alpha
Definition: enums.h:62
-
Triangles.
Definition: enums.h:384
-
GPU_CULLMODE
Cull modes.
Definition: enums.h:216
-
Distance attenuation LUT.
Definition: enums.h:378
-
Exclude pixels inside the scissor box.
Definition: enums.h:116
-
D1 LUT.
Definition: enums.h:342
-
Back, counter-clockwise.
Definition: enums.h:220
-
Invert value. (~old_stencil)
Definition: enums.h:129
-
Spotlight LUT.
Definition: enums.h:343
-
Multiply then add.
Definition: enums.h:285
-
Source red - 1.
Definition: enums.h:249
-
Add then multiply.
Definition: enums.h:286
-
Source blue.
Definition: enums.h:271
-
Increment value. (old_stencil + 1 saturated to [0, 255])
Definition: enums.h:127
-
Triangle strip.
Definition: enums.h:385
-
GPU_TEVOP_RGB
Texture RGB combiner operands.
Definition: enums.h:242
-
4-bit Luminance + 4-bit Alpha
Definition: enums.h:66
-
Bump as bump mapping.
Definition: enums.h:334
-
Source blue.
Definition: enums.h:256
-
Pass if less than.
Definition: enums.h:109
-
#define GPU_LIGHTLUTINPUT(i, n)
Creates a light LUT input parameter.
Definition: enums.h:315
-
Source green.
Definition: enums.h:269
-
Pass if less than.
Definition: enums.h:97
-
24-bit Depth + 8-bit Stencil
Definition: enums.h:87
-
Add colors.
Definition: enums.h:150
-
Distance attenuation LUT.
Definition: enums.h:348
-
Texture unit 2.
Definition: enums.h:51
-
Use the minimum color.
Definition: enums.h:153
-
4-bit Luminance
Definition: enums.h:67
-
Write alpha.
Definition: enums.h:140
-
GPU_FRAGOPMODE
Fragment operation modes.
Definition: enums.h:199
-
Source alpha.
Definition: enums.h:265
-
Source red.
Definition: enums.h:248
-
OpenGL mode.
Definition: enums.h:201
-
Previous buffer.
Definition: enums.h:236
-
Source red.
Definition: enums.h:267
-
4x scale.
Definition: enums.h:367
-
Destination color.
Definition: enums.h:164
-
GPU_STENCILOP
Stencil operations.
Definition: enums.h:122
-
2x
Definition: enums.h:293
-
Constant alpha.
Definition: enums.h:172
-
Pass if greater than.
Definition: enums.h:107
-
Shadow cube map.
Definition: enums.h:42
-
Pass if greater than or equal.
Definition: enums.h:100
-
GPU_FRESNELSEL
Fresnel options.
Definition: enums.h:322
-
Constant color.
Definition: enums.h:170
-
Nearest-neighbor interpolation.
Definition: enums.h:22
-
GPU_BLENDEQUATION
Blend modes.
Definition: enums.h:148
-
Use the maximum color.
Definition: enums.h:154
-
Write depth.
Definition: enums.h:141
-
Source alpha - 1.
Definition: enums.h:247
-
32-bit float.
Definition: enums.h:212
-
Destination alpha.
Definition: enums.h:168
-
Primary color.
Definition: enums.h:229
-
8-bit Red + 8-bit Green + 8-bit Blue
Definition: enums.h:76
-
2x scale.
Definition: enums.h:366
-
Source blue - 1.
Definition: enums.h:257
-
Projection texture.
Definition: enums.h:41
-
Secondary alpha.
Definition: enums.h:326
-
GPU_TESTFUNC
Test functions.
Definition: enums.h:91
-
Bitwise OR.
Definition: enums.h:189
-
Clamps to border.
Definition: enums.h:30
-
Unknown.
Definition: enums.h:259
-
GPU_BLENDFACTOR
Blend factors.
Definition: enums.h:158
-
Constant value.
Definition: enums.h:237
-
Reflection-Green LUT.
Definition: enums.h:346
-
Unknown.
Definition: enums.h:250
-
GPU_LOGICOP
Logical operations.
Definition: enums.h:178
-
Fresnel LUT.
Definition: enums.h:344
-
Previous value.
Definition: enums.h:238
-
GPU_COLORBUF
Supported color buffer formats.
Definition: enums.h:73
-
LUTs that are common to all lights.
Definition: enums.h:376
-
Subtract.
Definition: enums.h:283
-
Gas mode (?).
Definition: enums.h:202
-
GPU_SHADER_TYPE
Shader types.
Definition: enums.h:391
-
Texture unit 1.
Definition: enums.h:50
-
Pass if equal.
Definition: enums.h:95
-
8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
Definition: enums.h:57
-
Disabled.
Definition: enums.h:43
-
Destination alpha - 1.
Definition: enums.h:169
-
Bitwise AND.
Definition: enums.h:181
-
Clear.
Definition: enums.h:180
-
GPU_SCISSORMODE
Scissor test modes.
Definition: enums.h:113
-
GPU_EARLYDEPTHFUNC
Early depth test functions.
Definition: enums.h:104
-
Never pass.
Definition: enums.h:93
-
Inverted bitwise AND.
Definition: enums.h:193
-
Texture unit 0.
Definition: enums.h:232
-
Source red - 1.
Definition: enums.h:268
-
Reverse-subtract colors.
Definition: enums.h:152
-
16-bit Depth
Definition: enums.h:85
-
Texture unit 0.
Definition: enums.h:49
-
Increment value. (old_stencil + 1)
Definition: enums.h:130
-
Source alpha.
Definition: enums.h:166
-
LightVector*Normal.
Definition: enums.h:357
-
Destination color - 1.
Definition: enums.h:165
-
Signed add.
Definition: enums.h:281
-
16-bit short.
Definition: enums.h:211
-
Pass if not equal.
Definition: enums.h:96
-
Replace.
Definition: enums.h:278
-
Source alpha - 1.
Definition: enums.h:266
-
GPU_TEXTURE_FILTER_PARAM
Texture filters.
Definition: enums.h:20
-
GPU_COMBINEFUNC
Texture combiner functions.
Definition: enums.h:276
-
ETC1 texture compression.
Definition: enums.h:68
-
Spotlight LUT.
Definition: enums.h:377
-
5-bit Red + 6-bit Green + 5-bit Blue
Definition: enums.h:60
-
View*HalfVector.
Definition: enums.h:355
-
Set.
Definition: enums.h:184
-
Write red.
Definition: enums.h:137
-
Source green - 1.
Definition: enums.h:253
-
Copy.
Definition: enums.h:183
-
Source color - 1.
Definition: enums.h:245
-
Decrement value. (old_stencil - 1)
Definition: enums.h:131
-
4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
Definition: enums.h:79
-
8-bit Hi + 8-bit Lo
Definition: enums.h:63
-
GPU_FORMATS
Supported component formats.
Definition: enums.h:207
-
One.
Definition: enums.h:161
-
Pass if less than or equal.
Definition: enums.h:98
-
Bitwise NOR.
Definition: enums.h:190
-
Cube map.
Definition: enums.h:39
-
Geometry shader primitive.
Definition: enums.h:387
-
Reverse bitwise AND.
Definition: enums.h:182
-
GPU_LIGHTLUTSCALER
LUT scalers.
Definition: enums.h:363
-
Exclude pixels outside of the scissor box.
Definition: enums.h:118
-
Reflection-Red LUT.
Definition: enums.h:347
-
Write all color components.
Definition: enums.h:143
-
Primary and secondary alpha.
Definition: enums.h:327
-
4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
Definition: enums.h:61
-
Source color.
Definition: enums.h:244
-
2D texture
Definition: enums.h:38
-
GPU_Primitive_t
Supported primitives.
Definition: enums.h:382
-
Add.
Definition: enums.h:280
-
Primary alpha.
Definition: enums.h:325
-
GPU_LIGHTLUTSELECT
LUT selection.
Definition: enums.h:374
-
Clamps to edge.
Definition: enums.h:29
-
Interpolate.
Definition: enums.h:282
-
Replace value. (ref)
Definition: enums.h:126
-
Unknown.
Definition: enums.h:255
-
8-bit unsigned byte.
Definition: enums.h:210
-
Modulate.
Definition: enums.h:279
-
Triangle fan.
Definition: enums.h:386
-
Write green.
Definition: enums.h:138
-
Constant alpha - 1.
Definition: enums.h:173
-
No operation.
Definition: enums.h:186
-
Invert.
Definition: enums.h:187
-
Texture unit 3.
Definition: enums.h:235
-
2D Shadow texture
Definition: enums.h:40
-
0.25x scale.
Definition: enums.h:369
-
Texture unit 2.
Definition: enums.h:234
-
Geometry shader.
Definition: enums.h:394
-
Bitwise NAND.
Definition: enums.h:188
-
GPU_DEPTHBUF
Supported depth buffer formats.
Definition: enums.h:83
-
GPU_TEVSRC
Texture combiner sources.
Definition: enums.h:227
-
Shadow mode (?).
Definition: enums.h:203
-
Inverted copy.
Definition: enums.h:185
-
GPU_WRITEMASK
Pixel write mask.
Definition: enums.h:135
-
Pass if less than or equal.
Definition: enums.h:108
-
5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
Definition: enums.h:77
-
Unknown.
Definition: enums.h:251
-
1x scale.
Definition: enums.h:365
-
Subtract colors.
Definition: enums.h:151
-
0.5x scale.
Definition: enums.h:370
-
Source color - 1.
Definition: enums.h:163
-
Pass if greater than.
Definition: enums.h:99
-
Pass if greater than or equal.
Definition: enums.h:106
-
Vertex shader.
Definition: enums.h:393
-
5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
Definition: enums.h:59
-
Always pass.
Definition: enums.h:94
-
Texture unit 1.
Definition: enums.h:233
-
Reverse bitwise OR.
Definition: enums.h:194
-
Front, counter-clockwise.
Definition: enums.h:219
-
cosine of phi
Definition: enums.h:359
-
GPU_TEXUNIT
Supported texture units.
Definition: enums.h:47
-
Keep old value. (old_stencil)
Definition: enums.h:124
-
Source alpha.
Definition: enums.h:246
-
Unknown.
Definition: enums.h:258
-
4x
Definition: enums.h:294
-
GPU_TEXCOLOR
Supported texture formats.
Definition: enums.h:55
-
Source color.
Definition: enums.h:162
-
5-bit Red + 6-bit Green + 5-bit Blue
Definition: enums.h:78
-
8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
Definition: enums.h:75
-
Source blue - 1.
Definition: enums.h:272
-
Bitwise XOR.
Definition: enums.h:191
-
Source green - 1.
Definition: enums.h:270
-
Normal*HalfVector.
Definition: enums.h:354
-
1x
Definition: enums.h:292
-
Write blue.
Definition: enums.h:139
-
GPU_TEXTURE_MODE_PARAM
Texture modes.
Definition: enums.h:36
-
GPU_BUMPMODE
Bump map modes.
Definition: enums.h:331
-
Primary fragment color.
Definition: enums.h:230
-
8x scale.
Definition: enums.h:368
-
8-bit byte.
Definition: enums.h:209
-
GPU_TEVOP_A
Texture Alpha combiner operands.
Definition: enums.h:263
-
Repeats with mirrored texture.
Definition: enums.h:32
-
GPU_TEXTURE_WRAP_PARAM
Texture wrap modes.
Definition: enums.h:27
-
D0 LUT.
Definition: enums.h:341
-
Saturated alpha.
Definition: enums.h:174
-
Linear interpolation.
Definition: enums.h:23
-
Source green.
Definition: enums.h:252
-
Zero.
Definition: enums.h:160
-
Zero. (0)
Definition: enums.h:125
-
GPU_LIGHTLUTID
LUT IDs.
Definition: enums.h:339
-
8-bit Alpha
Definition: enums.h:65
-
Bump as tangent/normal mapping.
Definition: enums.h:335
-
Inverted bitwize OR.
Definition: enums.h:195
-
Repeats texture.
Definition: enums.h:31
-
Disabled.
Definition: enums.h:218
-
Disable.
Definition: enums.h:115
-
-LightVector*SpotlightVector
Definition: enums.h:358
-
Equivalent.
Definition: enums.h:192
-
GPU_TEVSCALE
Texture scale factors.
Definition: enums.h:290
-
Source alpha - 1.
Definition: enums.h:167
-
8-bit Red + 8-bit Green + 8-bit Blue
Definition: enums.h:58
-
Reflection-Blue LUT.
Definition: enums.h:345
-
None.
Definition: enums.h:324
-
Disabled.
Definition: enums.h:333
-
Decrement value. (old_stencil - 1 saturated to [0, 255])
Definition: enums.h:128
-
8-bit Luminance
Definition: enums.h:64
-
24-bit Depth
Definition: enums.h:86
-
ETC1 texture compression + 4-bit Alpha.
Definition: enums.h:69
-
Unknown.
Definition: enums.h:254
+
354  GPU_TEVSCALE_1 = 0x0, ///< 1x
+
355  GPU_TEVSCALE_2 = 0x1, ///< 2x
+
356  GPU_TEVSCALE_4 = 0x2, ///< 4x
+
357 } GPU_TEVSCALE;
+
358 
+
359 /// Creates a texture combiner source parameter from three sources.
+
360 #define GPU_TEVSOURCES(a,b,c) (((a))|((b)<<4)|((c)<<8))
+
361 /// Creates a texture combiner operand parameter from three operands.
+
362 #define GPU_TEVOPERANDS(a,b,c) (((a))|((b)<<4)|((c)<<8))
+
363 
+
364 /// Creates a light environment layer configuration parameter.
+
365 #define GPU_LIGHT_ENV_LAYER_CONFIG(n) ((n)+((n)==7))
+
366 /// Light shadow disable bits in GPUREG_LIGHT_CONFIG1.
+
367 #define GPU_LC1_SHADOWBIT(n) BIT(n)
+
368 /// Light spot disable bits in GPUREG_LIGHT_CONFIG1.
+
369 #define GPU_LC1_SPOTBIT(n) BIT((n)+8)
+
370 /// LUT disable bits in GPUREG_LIGHT_CONFIG1.
+
371 #define GPU_LC1_LUTBIT(n) BIT((n)+16)
+
372 /// Light distance attenuation disable bits in GPUREG_LIGHT_CONFIG1.
+
373 #define GPU_LC1_ATTNBIT(n) BIT((n)+24)
+
374 /// Creates a light permutation parameter.
+
375 #define GPU_LIGHTPERM(i,n) ((n) << (i))
+
376 /// Creates a light LUT input parameter.
+
377 #define GPU_LIGHTLUTINPUT(i,n) ((n) << ((i)*4))
+
378 /// Creates a light LUT index parameter.
+
379 #define GPU_LIGHTLUTIDX(c,i,o) ((o) | ((i) << 8) | ((c) << 11))
+
380 /// Creates a light color parameter from red, green, and blue components.
+
381 #define GPU_LIGHTCOLOR(r,g,b) (((b) & 0xFF) | (((g) << 10) & 0xFF) | (((r) << 20) & 0xFF))
+
382 
+
383 /// Fresnel options.
+
384 typedef enum
+
385 {
+
386  GPU_NO_FRESNEL = 0, ///< None.
+
387  GPU_PRI_ALPHA_FRESNEL = 1, ///< Primary alpha.
+
388  GPU_SEC_ALPHA_FRESNEL = 2, ///< Secondary alpha.
+
389  GPU_PRI_SEC_ALPHA_FRESNEL = 3, ///< Primary and secondary alpha.
+
390 } GPU_FRESNELSEL;
+
391 
+
392 /// Bump map modes.
+
393 typedef enum
+
394 {
+
395  GPU_BUMP_NOT_USED = 0, ///< Disabled.
+
396  GPU_BUMP_AS_BUMP = 1, ///< Bump as bump mapping.
+
397  GPU_BUMP_AS_TANG = 2, ///< Bump as tangent/normal mapping.
+
398 } GPU_BUMPMODE;
+
399 
+
400 /// LUT IDs.
+
401 typedef enum
+
402 {
+
403  GPU_LUT_D0 = 0, ///< D0 LUT.
+
404  GPU_LUT_D1 = 1, ///< D1 LUT.
+
405  GPU_LUT_SP = 2, ///< Spotlight LUT.
+
406  GPU_LUT_FR = 3, ///< Fresnel LUT.
+
407  GPU_LUT_RB = 4, ///< Reflection-Blue LUT.
+
408  GPU_LUT_RG = 5, ///< Reflection-Green LUT.
+
409  GPU_LUT_RR = 6, ///< Reflection-Red LUT.
+
410  GPU_LUT_DA = 7, ///< Distance attenuation LUT.
+
411 } GPU_LIGHTLUTID;
+
412 
+
413 /// LUT inputs.
+
414 typedef enum
+
415 {
+
416  GPU_LUTINPUT_NH = 0, ///< Normal*HalfVector
+
417  GPU_LUTINPUT_VH = 1, ///< View*HalfVector
+
418  GPU_LUTINPUT_NV = 2, ///< Normal*View
+
419  GPU_LUTINPUT_LN = 3, ///< LightVector*Normal
+
420  GPU_LUTINPUT_SP = 4, ///< -LightVector*SpotlightVector
+
421  GPU_LUTINPUT_CP = 5, ///< cosine of phi
+
422 } GPU_LIGHTLUTINPUT;
+
423 
+
424 /// LUT scalers.
+
425 typedef enum
+
426 {
+
427  GPU_LUTSCALER_1x = 0, ///< 1x scale.
+
428  GPU_LUTSCALER_2x = 1, ///< 2x scale.
+
429  GPU_LUTSCALER_4x = 2, ///< 4x scale.
+
430  GPU_LUTSCALER_8x = 3, ///< 8x scale.
+
431  GPU_LUTSCALER_0_25x = 6, ///< 0.25x scale.
+
432  GPU_LUTSCALER_0_5x = 7, ///< 0.5x scale.
+
433 } GPU_LIGHTLUTSCALER;
+
434 
+
435 /// LUT selection.
+
436 typedef enum
+
437 {
+
438  GPU_LUTSELECT_COMMON = 0, ///< LUTs that are common to all lights.
+
439  GPU_LUTSELECT_SP = 1, ///< Spotlight LUT.
+
440  GPU_LUTSELECT_DA = 2, ///< Distance attenuation LUT.
+
441 } GPU_LIGHTLUTSELECT;
+
442 
+
443 /// Supported primitives.
+
444 typedef enum
+
445 {
+
446  GPU_TRIANGLES = 0x0000, ///< Triangles.
+
447  GPU_TRIANGLE_STRIP = 0x0100, ///< Triangle strip.
+
448  GPU_TRIANGLE_FAN = 0x0200, ///< Triangle fan.
+
449  GPU_GEOMETRY_PRIM = 0x0300, ///< Geometry shader primitive.
+
450 } GPU_Primitive_t;
+
451 
+
452 /// Shader types.
+
453 typedef enum
+
454 {
+
455  GPU_VERTEX_SHADER = 0x0, ///< Vertex shader.
+
456  GPU_GEOMETRY_SHADER = 0x1, ///< Geometry shader.
+
457 } GPU_SHADER_TYPE;
+
Constant color - 1.
Definition: enums.h:233
+
Dot3. RGB only.
Definition: enums.h:346
+
Write all components.
Definition: enums.h:206
+
Even shift.
Definition: enums.h:110
+
Normal*View.
Definition: enums.h:418
+
Secondary fragment color.
Definition: enums.h:293
+
8-bit Luminance + 8-bit Alpha
Definition: enums.h:70
+
Triangles.
Definition: enums.h:446
+
GPU_CULLMODE
Cull modes.
Definition: enums.h:278
+
Distance attenuation LUT.
Definition: enums.h:440
+
Exclude pixels inside the scissor box.
Definition: enums.h:178
+
D1 LUT.
Definition: enums.h:404
+
Back, counter-clockwise.
Definition: enums.h:282
+
Invert value. (~old_stencil)
Definition: enums.h:191
+
U2.
Definition: enums.h:94
+
Spotlight LUT.
Definition: enums.h:405
+
Multiply then add.
Definition: enums.h:347
+
Source red - 1.
Definition: enums.h:311
+
Add then multiply.
Definition: enums.h:348
+
Source blue.
Definition: enums.h:333
+
Increment value. (old_stencil + 1 saturated to [0, 255])
Definition: enums.h:189
+
Triangle strip.
Definition: enums.h:447
+
RGB mapping function table.
Definition: enums.h:128
+
Nearest-neighbor.
Definition: enums.h:116
+
GPU_TEVOP_RGB
Texture RGB combiner operands.
Definition: enums.h:304
+
4-bit Luminance + 4-bit Alpha
Definition: enums.h:74
+
Bump as bump mapping.
Definition: enums.h:396
+
Source blue.
Definition: enums.h:318
+
Odd shift.
Definition: enums.h:109
+
Pass if less than.
Definition: enums.h:171
+
#define GPU_LIGHTLUTINPUT(i, n)
Creates a light LUT input parameter.
Definition: enums.h:377
+
Source green.
Definition: enums.h:331
+
Pass if less than.
Definition: enums.h:159
+
24-bit Depth + 8-bit Stencil
Definition: enums.h:149
+
U2+V2.
Definition: enums.h:98
+
Add colors.
Definition: enums.h:212
+
Distance attenuation LUT.
Definition: enums.h:410
+
Texture unit 2.
Definition: enums.h:59
+
Use the minimum color.
Definition: enums.h:215
+
4-bit Luminance
Definition: enums.h:75
+
Write alpha.
Definition: enums.h:202
+
Linear interpolation with mipmap using linear interpolation.
Definition: enums.h:121
+
GPU_FRAGOPMODE
Fragment operation modes.
Definition: enums.h:261
+
Source alpha.
Definition: enums.h:327
+
Source red.
Definition: enums.h:310
+
OpenGL mode.
Definition: enums.h:263
+
Previous buffer.
Definition: enums.h:298
+
Source red.
Definition: enums.h:329
+
V2.
Definition: enums.h:96
+
4x scale.
Definition: enums.h:429
+
Destination color.
Definition: enums.h:226
+
sqrt(U2+V2)
Definition: enums.h:99
+
GPU_STENCILOP
Stencil operations.
Definition: enums.h:184
+
2x
Definition: enums.h:355
+
Constant alpha.
Definition: enums.h:234
+
Pass if greater than.
Definition: enums.h:169
+
Shadow cube map.
Definition: enums.h:50
+
Pass if greater than or equal.
Definition: enums.h:162
+
Linear interpolation.
Definition: enums.h:117
+
Linear interpolation with mipmap using nearest-neighbor.
Definition: enums.h:119
+
GPU_FRESNELSEL
Fresnel options.
Definition: enums.h:384
+
Constant color.
Definition: enums.h:232
+
Nearest-neighbor interpolation.
Definition: enums.h:30
+
GPU_BLENDEQUATION
Blend modes.
Definition: enums.h:210
+
Use the maximum color.
Definition: enums.h:216
+
max
Definition: enums.h:101
+
Write depth.
Definition: enums.h:203
+
Source alpha - 1.
Definition: enums.h:309
+
32-bit float.
Definition: enums.h:274
+
Destination alpha.
Definition: enums.h:230
+
Primary color.
Definition: enums.h:291
+
Noise table.
Definition: enums.h:127
+
8-bit Red + 8-bit Green + 8-bit Blue
Definition: enums.h:138
+
2x scale.
Definition: enums.h:428
+
Source blue - 1.
Definition: enums.h:319
+
GPU_PROCTEX_MAPFUNC
Procedural texture mapping functions.
Definition: enums.h:91
+
Projection texture.
Definition: enums.h:49
+
Secondary alpha.
Definition: enums.h:388
+
Nearest-neighbor with mipmap using linear interpolation.
Definition: enums.h:120
+
GPU_TESTFUNC
Test functions.
Definition: enums.h:153
+
GPU_PROCTEX_CLAMP
Procedural texture clamp modes.
Definition: enums.h:81
+
Mirrored repeat.
Definition: enums.h:86
+
Color difference table.
Definition: enums.h:131
+
Bitwise OR.
Definition: enums.h:251
+
Clamps to border.
Definition: enums.h:38
+
Unknown.
Definition: enums.h:321
+
GPU_BLENDFACTOR
Blend factors.
Definition: enums.h:220
+
min
Definition: enums.h:100
+
Constant value.
Definition: enums.h:299
+
Reflection-Green LUT.
Definition: enums.h:408
+
Unknown.
Definition: enums.h:312
+
GPU_LOGICOP
Logical operations.
Definition: enums.h:240
+
Fresnel LUT.
Definition: enums.h:406
+
Previous value.
Definition: enums.h:300
+
GPU_PROCTEX_SHIFT
Procedural texture shift values.
Definition: enums.h:106
+
GPU_COLORBUF
Supported color buffer formats.
Definition: enums.h:135
+
LUTs that are common to all lights.
Definition: enums.h:438
+
Subtract.
Definition: enums.h:345
+
Gas mode (?).
Definition: enums.h:264
+
GPU_SHADER_TYPE
Shader types.
Definition: enums.h:453
+
V.
Definition: enums.h:95
+
Texture unit 1.
Definition: enums.h:58
+
Pass if equal.
Definition: enums.h:157
+
8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
Definition: enums.h:65
+
Disabled.
Definition: enums.h:51
+
Destination alpha - 1.
Definition: enums.h:231
+
Bitwise AND.
Definition: enums.h:243
+
Clear.
Definition: enums.h:242
+
GPU_SCISSORMODE
Scissor test modes.
Definition: enums.h:175
+
Nearest-neighbor with mipmap using nearest-neighbor.
Definition: enums.h:118
+
GPU_EARLYDEPTHFUNC
Early depth test functions.
Definition: enums.h:166
+
Never pass.
Definition: enums.h:155
+
Inverted bitwise AND.
Definition: enums.h:255
+
Texture unit 0.
Definition: enums.h:294
+
Source red - 1.
Definition: enums.h:330
+
Reverse-subtract colors.
Definition: enums.h:214
+
16-bit Depth
Definition: enums.h:147
+
Texture unit 0.
Definition: enums.h:57
+
Increment value. (old_stencil + 1)
Definition: enums.h:192
+
Source alpha.
Definition: enums.h:228
+
LightVector*Normal.
Definition: enums.h:419
+
Destination color - 1.
Definition: enums.h:227
+
Signed add.
Definition: enums.h:343
+
16-bit short.
Definition: enums.h:273
+
Pass if not equal.
Definition: enums.h:158
+
rmax
Definition: enums.h:102
+
Replace.
Definition: enums.h:340
+
Source alpha - 1.
Definition: enums.h:328
+
GPU_TEXTURE_FILTER_PARAM
Texture filters.
Definition: enums.h:28
+
GPU_COMBINEFUNC
Texture combiner functions.
Definition: enums.h:338
+
ETC1 texture compression.
Definition: enums.h:76
+
Spotlight LUT.
Definition: enums.h:439
+
U.
Definition: enums.h:93
+
5-bit Red + 6-bit Green + 5-bit Blue
Definition: enums.h:68
+
GPU_PROCTEX_LUTID
Procedural texture LUT IDs.
Definition: enums.h:125
+
View*HalfVector.
Definition: enums.h:417
+
Set.
Definition: enums.h:246
+
Write red.
Definition: enums.h:199
+
Source green - 1.
Definition: enums.h:315
+
Copy.
Definition: enums.h:245
+
Source color - 1.
Definition: enums.h:307
+
Decrement value. (old_stencil - 1)
Definition: enums.h:193
+
4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
Definition: enums.h:141
+
8-bit Hi + 8-bit Lo
Definition: enums.h:71
+
GPU_FORMATS
Supported component formats.
Definition: enums.h:269
+
One.
Definition: enums.h:223
+
Pass if less than or equal.
Definition: enums.h:160
+
GPU_PROCTEX_FILTER
Procedural texture filter values.
Definition: enums.h:114
+
Bitwise NOR.
Definition: enums.h:252
+
Cube map.
Definition: enums.h:47
+
Geometry shader primitive.
Definition: enums.h:449
+
Reverse bitwise AND.
Definition: enums.h:244
+
GPU_LIGHTLUTSCALER
LUT scalers.
Definition: enums.h:425
+
Exclude pixels outside of the scissor box.
Definition: enums.h:180
+
Reflection-Red LUT.
Definition: enums.h:409
+
Clamp to zero.
Definition: enums.h:83
+
Write all color components.
Definition: enums.h:205
+
Primary and secondary alpha.
Definition: enums.h:389
+
4-bit Red + 4-bit Green + 4-bit Blue + 4-bit Alpha
Definition: enums.h:69
+
Source color.
Definition: enums.h:306
+
2D texture
Definition: enums.h:46
+
GPU_Primitive_t
Supported primitives.
Definition: enums.h:444
+
Add.
Definition: enums.h:342
+
Primary alpha.
Definition: enums.h:387
+
GPU_LIGHTLUTSELECT
LUT selection.
Definition: enums.h:436
+
Clamps to edge.
Definition: enums.h:37
+
Interpolate.
Definition: enums.h:344
+
Replace value. (ref)
Definition: enums.h:188
+
Unknown.
Definition: enums.h:317
+
8-bit unsigned byte.
Definition: enums.h:272
+
Modulate.
Definition: enums.h:341
+
Triangle fan.
Definition: enums.h:448
+
Write green.
Definition: enums.h:200
+
Constant alpha - 1.
Definition: enums.h:235
+
No operation.
Definition: enums.h:248
+
Invert.
Definition: enums.h:249
+
Texture unit 3.
Definition: enums.h:297
+
2D Shadow texture
Definition: enums.h:48
+
0.25x scale.
Definition: enums.h:431
+
Texture unit 2.
Definition: enums.h:296
+
Geometry shader.
Definition: enums.h:456
+
Bitwise NAND.
Definition: enums.h:250
+
GPU_DEPTHBUF
Supported depth buffer formats.
Definition: enums.h:145
+
GPU_TEVSRC
Texture combiner sources.
Definition: enums.h:289
+
Shadow mode (?).
Definition: enums.h:265
+
Inverted copy.
Definition: enums.h:247
+
GPU_WRITEMASK
Pixel write mask.
Definition: enums.h:197
+
Pass if less than or equal.
Definition: enums.h:170
+
5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
Definition: enums.h:139
+
Unknown.
Definition: enums.h:313
+
No shift.
Definition: enums.h:108
+
1x scale.
Definition: enums.h:427
+
Subtract colors.
Definition: enums.h:213
+
0.5x scale.
Definition: enums.h:432
+
Source color - 1.
Definition: enums.h:225
+
Pass if greater than.
Definition: enums.h:161
+
Pass if greater than or equal.
Definition: enums.h:168
+
Vertex shader.
Definition: enums.h:455
+
5-bit Red + 5-bit Green + 5-bit Blue + 1-bit Alpha
Definition: enums.h:67
+
Always pass.
Definition: enums.h:156
+
Texture unit 1.
Definition: enums.h:295
+
Clamp to edge.
Definition: enums.h:84
+
Reverse bitwise OR.
Definition: enums.h:256
+
Front, counter-clockwise.
Definition: enums.h:281
+
cosine of phi
Definition: enums.h:421
+
GPU_TEXUNIT
Supported texture units.
Definition: enums.h:55
+
Keep old value. (old_stencil)
Definition: enums.h:186
+
Source alpha.
Definition: enums.h:308
+
Unknown.
Definition: enums.h:320
+
4x
Definition: enums.h:356
+
GPU_TEXCOLOR
Supported texture formats.
Definition: enums.h:63
+
Color table.
Definition: enums.h:130
+
U+V.
Definition: enums.h:97
+
Source color.
Definition: enums.h:224
+
5-bit Red + 6-bit Green + 5-bit Blue
Definition: enums.h:140
+
8-bit Red + 8-bit Green + 8-bit Blue + 8-bit Alpha
Definition: enums.h:137
+
Source blue - 1.
Definition: enums.h:334
+
Bitwise XOR.
Definition: enums.h:253
+
Source green - 1.
Definition: enums.h:332
+
Normal*HalfVector.
Definition: enums.h:416
+
1x
Definition: enums.h:354
+
Write blue.
Definition: enums.h:201
+
GPU_TEXTURE_MODE_PARAM
Texture modes.
Definition: enums.h:44
+
GPU_BUMPMODE
Bump map modes.
Definition: enums.h:393
+
Primary fragment color.
Definition: enums.h:292
+
8x scale.
Definition: enums.h:430
+
8-bit byte.
Definition: enums.h:271
+
Pulse.
Definition: enums.h:87
+
GPU_TEVOP_A
Texture Alpha combiner operands.
Definition: enums.h:325
+
Repeats with mirrored texture.
Definition: enums.h:40
+
GPU_TEXTURE_WRAP_PARAM
Texture wrap modes.
Definition: enums.h:35
+
D0 LUT.
Definition: enums.h:403
+
Saturated alpha.
Definition: enums.h:236
+
Linear interpolation.
Definition: enums.h:31
+
Source green.
Definition: enums.h:314
+
Zero.
Definition: enums.h:222
+
Zero. (0)
Definition: enums.h:187
+
GPU_LIGHTLUTID
LUT IDs.
Definition: enums.h:401
+
8-bit Alpha
Definition: enums.h:73
+
Symmetrical repeat.
Definition: enums.h:85
+
Bump as tangent/normal mapping.
Definition: enums.h:397
+
Inverted bitwize OR.
Definition: enums.h:257
+
Repeats texture.
Definition: enums.h:39
+
Disabled.
Definition: enums.h:280
+
Disable.
Definition: enums.h:177
+
-LightVector*SpotlightVector
Definition: enums.h:420
+
Equivalent.
Definition: enums.h:254
+
GPU_TEVSCALE
Texture scale factors.
Definition: enums.h:352
+
Source alpha - 1.
Definition: enums.h:229
+
8-bit Red + 8-bit Green + 8-bit Blue
Definition: enums.h:66
+
Reflection-Blue LUT.
Definition: enums.h:407
+
None.
Definition: enums.h:386
+
Disabled.
Definition: enums.h:395
+
Decrement value. (old_stencil - 1 saturated to [0, 255])
Definition: enums.h:190
+
8-bit Luminance
Definition: enums.h:72
+
24-bit Depth
Definition: enums.h:148
+
ETC1 texture compression + 4-bit Alpha.
Definition: enums.h:77
+
Alpha mapping function table.
Definition: enums.h:129
+
Unknown.
Definition: enums.h:316