rename upstream-man-pages to upstream-doc
[clinton/guile-figl.git] / upstream-doc / man3 / glBlendEquationSeparate.xml
CommitLineData
7faf1d71
AW
1<?xml version="1.0" encoding="UTF-8"?>\r
2<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"\r
3 "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">\r
4<refentry id="glBlendEquationSeparate">\r
5 <refmeta>\r
6 <refmetainfo>\r
7 <copyright>\r
8 <year>1991-2006</year>\r
9 <holder>Silicon Graphics, Inc.</holder>\r
10 </copyright>\r
11 </refmetainfo>\r
12 <refentrytitle>glBlendEquationSeparate</refentrytitle>\r
13 <manvolnum>3G</manvolnum>\r
14 </refmeta>\r
15 <refnamediv>\r
16 <refname>glBlendEquationSeparate</refname>\r
17 <refpurpose>set the RGB blend equation and the alpha blend equation separately</refpurpose>\r
18 </refnamediv>\r
19 <refsynopsisdiv><title>C Specification</title>\r
20 <funcsynopsis>\r
21 <funcprototype>\r
22 <funcdef>void <function>glBlendEquationSeparate</function></funcdef>\r
23 <paramdef>GLenum <parameter>modeRGB</parameter></paramdef>\r
24 <paramdef>GLenum <parameter>modeAlpha</parameter></paramdef>\r
25 </funcprototype>\r
26 </funcsynopsis>\r
27 </refsynopsisdiv>\r
28 <!-- eqn: ignoring delim $$ -->\r
29 <refsect1 id="parameters"><title>Parameters</title>\r
30 <variablelist>\r
31 <varlistentry>\r
32 <term><parameter>modeRGB</parameter></term>\r
33 <listitem>\r
34 <para>\r
35 specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined.\r
36 It must be <constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>,\r
37 <constant>GL_FUNC_REVERSE_SUBTRACT</constant>, <constant>GL_MIN</constant>, <constant>GL_MAX</constant>.\r
38 </para>\r
39 </listitem>\r
40 </varlistentry>\r
41 <varlistentry>\r
42 <term><parameter>modeAlpha</parameter></term>\r
43 <listitem>\r
44 <para>\r
45 specifies the alpha blend equation, how the alpha component of the source and destination colors are combined.\r
46 It must be <constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>,\r
47 <constant>GL_FUNC_REVERSE_SUBTRACT</constant>, <constant>GL_MIN</constant>, <constant>GL_MAX</constant>.\r
48 </para>\r
49 </listitem>\r
50 </varlistentry>\r
51 </variablelist>\r
52 </refsect1>\r
53 <refsect1 id="description"><title>Description</title>\r
54 <para>\r
55 The blend equations determines how a new pixel (the ''source'' color)\r
56 is combined with a pixel already in the framebuffer (the ''destination''\r
57 color). This function specifies one blend equation for the RGB-color \r
58 components and one blend equation for the alpha component.\r
59 </para>\r
60 <para>\r
61 The blend equations use the source and destination blend factors\r
62 specified by either <citerefentry><refentrytitle>glBlendFunc</refentrytitle></citerefentry> or\r
63 <citerefentry><refentrytitle>glBlendFuncSeparate</refentrytitle></citerefentry>.\r
64 See <citerefentry><refentrytitle>glBlendFunc</refentrytitle></citerefentry> or <citerefentry><refentrytitle>glBlendFuncSeparate</refentrytitle></citerefentry>\r
65 for a description of the various blend factors.\r
66 </para>\r
67 <para>\r
68 In the equations that follow, source and destination\r
69 color components are referred to as\r
70 <inlineequation><mml:math>\r
71 <!-- eqn: ( R sub s, G sub s, B sub s, A sub s ):-->\r
72 <mml:mfenced open="(" close=")">\r
73 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
74 <mml:mi mathvariant="italic">s</mml:mi>\r
75 </mml:msub>\r
76 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
77 <mml:mi mathvariant="italic">s</mml:mi>\r
78 </mml:msub>\r
79 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
80 <mml:mi mathvariant="italic">s</mml:mi>\r
81 </mml:msub>\r
82 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
83 <mml:mi mathvariant="italic">s</mml:mi>\r
84 </mml:msub>\r
85 </mml:mfenced>\r
86 </mml:math></inlineequation>\r
87 and\r
88 <inlineequation><mml:math>\r
89 <!-- eqn: ( R sub d, G sub d, B sub d, A sub d ):-->\r
90 <mml:mfenced open="(" close=")">\r
91 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
92 <mml:mi mathvariant="italic">d</mml:mi>\r
93 </mml:msub>\r
94 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
95 <mml:mi mathvariant="italic">d</mml:mi>\r
96 </mml:msub>\r
97 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
98 <mml:mi mathvariant="italic">d</mml:mi>\r
99 </mml:msub>\r
100 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
101 <mml:mi mathvariant="italic">d</mml:mi>\r
102 </mml:msub>\r
103 </mml:mfenced>\r
104 </mml:math></inlineequation>,\r
105 respectively.\r
106 The result color is referred to as\r
107 <inlineequation><mml:math>\r
108 <!-- eqn: ( R sub r, G sub r, B sub r, A sub r ):-->\r
109 <mml:mfenced open="(" close=")">\r
110 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
111 <mml:mi mathvariant="italic">r</mml:mi>\r
112 </mml:msub>\r
113 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
114 <mml:mi mathvariant="italic">r</mml:mi>\r
115 </mml:msub>\r
116 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
117 <mml:mi mathvariant="italic">r</mml:mi>\r
118 </mml:msub>\r
119 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
120 <mml:mi mathvariant="italic">r</mml:mi>\r
121 </mml:msub>\r
122 </mml:mfenced>\r
123 </mml:math></inlineequation>.\r
124 The source and destination blend factors are denoted\r
125 <inlineequation><mml:math>\r
126 <!-- eqn: ( s sub R, s sub G, s sub B, s sub A ):-->\r
127 <mml:mfenced open="(" close=")">\r
128 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
129 <mml:mi mathvariant="italic">R</mml:mi>\r
130 </mml:msub>\r
131 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
132 <mml:mi mathvariant="italic">G</mml:mi>\r
133 </mml:msub>\r
134 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
135 <mml:mi mathvariant="italic">B</mml:mi>\r
136 </mml:msub>\r
137 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
138 <mml:mi mathvariant="italic">A</mml:mi>\r
139 </mml:msub>\r
140 </mml:mfenced>\r
141 </mml:math></inlineequation>\r
142 and\r
143 <inlineequation><mml:math>\r
144 <!-- eqn: ( d sub R, d sub G, d sub B, d sub A ):-->\r
145 <mml:mfenced open="(" close=")">\r
146 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
147 <mml:mi mathvariant="italic">R</mml:mi>\r
148 </mml:msub>\r
149 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
150 <mml:mi mathvariant="italic">G</mml:mi>\r
151 </mml:msub>\r
152 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
153 <mml:mi mathvariant="italic">B</mml:mi>\r
154 </mml:msub>\r
155 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
156 <mml:mi mathvariant="italic">A</mml:mi>\r
157 </mml:msub>\r
158 </mml:mfenced>\r
159 </mml:math></inlineequation>,\r
160 respectively.\r
161 For these equations all color components are understood to have values\r
162 in the range \r
163 <inlineequation><mml:math>\r
164 <!-- eqn: [0,1]:-->\r
165 <mml:mfenced open="[" close="]">\r
166 <mml:mn>0</mml:mn>\r
167 <mml:mn>1</mml:mn>\r
168 </mml:mfenced>\r
169 </mml:math></inlineequation>.\r
170\r
171 <informaltable frame="topbot">\r
172 <tgroup cols="3" align="left">\r
173 <colspec colwidth="1.1*" />\r
174 <colspec colwidth="1*" />\r
175 <colspec colwidth="1*" />\r
176 <thead>\r
177 <row>\r
178 <entry rowsep="1" align="left"><emphasis role="bold">\r
179 Mode\r
180 </emphasis></entry>\r
181 <entry rowsep="1" align="left"><emphasis role="bold">\r
182 RGB Components\r
183 </emphasis></entry>\r
184 <entry rowsep="1" align="left"><emphasis role="bold">\r
185 Alpha Component\r
186 </emphasis></entry>\r
187 </row>\r
188 </thead>\r
189 <tbody>\r
190 <row>\r
191 <entry align="left">\r
192 <constant>GL_FUNC_ADD</constant>\r
193 </entry>\r
194 <entry align="left">\r
195 <informalequation><mml:math>\r
196 <!-- eqn: Rr = R sub s s sub R + R sub d d sub R :-->\r
197 <mml:mrow>\r
198 <mml:mi mathvariant="italic">Rr</mml:mi>\r
199 <mml:mo>=</mml:mo>\r
200 <mml:mrow>\r
201 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
202 <mml:mi mathvariant="italic">s</mml:mi>\r
203 </mml:msub>\r
204 <mml:mo>&it;</mml:mo>\r
205 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
206 <mml:mi mathvariant="italic">R</mml:mi>\r
207 </mml:msub>\r
208 <mml:mo>+</mml:mo>\r
209 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
210 <mml:mi mathvariant="italic">d</mml:mi>\r
211 </mml:msub>\r
212 <mml:mo>&it;</mml:mo>\r
213 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
214 <mml:mi mathvariant="italic">R</mml:mi>\r
215 </mml:msub>\r
216 </mml:mrow>\r
217 </mml:mrow>\r
218 </mml:math></informalequation>\r
219 <informalequation><mml:math>\r
220 <!-- eqn: Gr = G sub s s sub G + G sub d d sub G :-->\r
221 <mml:mrow>\r
222 <mml:mi mathvariant="italic">Gr</mml:mi>\r
223 <mml:mo>=</mml:mo>\r
224 <mml:mrow>\r
225 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
226 <mml:mi mathvariant="italic">s</mml:mi>\r
227 </mml:msub>\r
228 <mml:mo>&it;</mml:mo>\r
229 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
230 <mml:mi mathvariant="italic">G</mml:mi>\r
231 </mml:msub>\r
232 <mml:mo>+</mml:mo>\r
233 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
234 <mml:mi mathvariant="italic">d</mml:mi>\r
235 </mml:msub>\r
236 <mml:mo>&it;</mml:mo>\r
237 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
238 <mml:mi mathvariant="italic">G</mml:mi>\r
239 </mml:msub>\r
240 </mml:mrow>\r
241 </mml:mrow>\r
242 </mml:math></informalequation>\r
243 <informalequation><mml:math>\r
244 <!-- eqn: Br = B sub s s sub B + B sub d d sub B :-->\r
245 <mml:mrow>\r
246 <mml:mi mathvariant="italic">Br</mml:mi>\r
247 <mml:mo>=</mml:mo>\r
248 <mml:mrow>\r
249 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
250 <mml:mi mathvariant="italic">s</mml:mi>\r
251 </mml:msub>\r
252 <mml:mo>&it;</mml:mo>\r
253 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
254 <mml:mi mathvariant="italic">B</mml:mi>\r
255 </mml:msub>\r
256 <mml:mo>+</mml:mo>\r
257 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
258 <mml:mi mathvariant="italic">d</mml:mi>\r
259 </mml:msub>\r
260 <mml:mo>&it;</mml:mo>\r
261 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
262 <mml:mi mathvariant="italic">B</mml:mi>\r
263 </mml:msub>\r
264 </mml:mrow>\r
265 </mml:mrow>\r
266 </mml:math></informalequation>\r
267 </entry>\r
268 <entry align="left">\r
269 <informalequation><mml:math>\r
270 <!-- eqn: Ar = A sub s s sub A + A sub d d sub A :-->\r
271 <mml:mrow>\r
272 <mml:mi mathvariant="italic">Ar</mml:mi>\r
273 <mml:mo>=</mml:mo>\r
274 <mml:mrow>\r
275 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
276 <mml:mi mathvariant="italic">s</mml:mi>\r
277 </mml:msub>\r
278 <mml:mo>&it;</mml:mo>\r
279 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
280 <mml:mi mathvariant="italic">A</mml:mi>\r
281 </mml:msub>\r
282 <mml:mo>+</mml:mo>\r
283 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
284 <mml:mi mathvariant="italic">d</mml:mi>\r
285 </mml:msub>\r
286 <mml:mo>&it;</mml:mo>\r
287 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
288 <mml:mi mathvariant="italic">A</mml:mi>\r
289 </mml:msub>\r
290 </mml:mrow>\r
291 </mml:mrow>\r
292 </mml:math></informalequation>\r
293 </entry>\r
294 </row>\r
295 <row>\r
296 <entry align="left">\r
297 <constant>GL_FUNC_SUBTRACT</constant>\r
298 </entry>\r
299 <entry align="left">\r
300 <informalequation><mml:math>\r
301 <!-- eqn: Rr = R sub s s sub R - R sub d d sub R :-->\r
302 <mml:mrow>\r
303 <mml:mi mathvariant="italic">Rr</mml:mi>\r
304 <mml:mo>=</mml:mo>\r
305 <mml:mrow>\r
306 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
307 <mml:mi mathvariant="italic">s</mml:mi>\r
308 </mml:msub>\r
309 <mml:mo>&it;</mml:mo>\r
310 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
311 <mml:mi mathvariant="italic">R</mml:mi>\r
312 </mml:msub>\r
313 <mml:mo>-</mml:mo>\r
314 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
315 <mml:mi mathvariant="italic">d</mml:mi>\r
316 </mml:msub>\r
317 <mml:mo>&it;</mml:mo>\r
318 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
319 <mml:mi mathvariant="italic">R</mml:mi>\r
320 </mml:msub>\r
321 </mml:mrow>\r
322 </mml:mrow>\r
323 </mml:math></informalequation>\r
324 <informalequation><mml:math>\r
325 <!-- eqn: Gr = G sub s s sub G - G sub d d sub G :-->\r
326 <mml:mrow>\r
327 <mml:mi mathvariant="italic">Gr</mml:mi>\r
328 <mml:mo>=</mml:mo>\r
329 <mml:mrow>\r
330 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
331 <mml:mi mathvariant="italic">s</mml:mi>\r
332 </mml:msub>\r
333 <mml:mo>&it;</mml:mo>\r
334 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
335 <mml:mi mathvariant="italic">G</mml:mi>\r
336 </mml:msub>\r
337 <mml:mo>-</mml:mo>\r
338 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
339 <mml:mi mathvariant="italic">d</mml:mi>\r
340 </mml:msub>\r
341 <mml:mo>&it;</mml:mo>\r
342 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
343 <mml:mi mathvariant="italic">G</mml:mi>\r
344 </mml:msub>\r
345 </mml:mrow>\r
346 </mml:mrow>\r
347 </mml:math></informalequation>\r
348 <informalequation><mml:math>\r
349 <!-- eqn: Br = B sub s s sub B - B sub d d sub B :-->\r
350 <mml:mrow>\r
351 <mml:mi mathvariant="italic">Br</mml:mi>\r
352 <mml:mo>=</mml:mo>\r
353 <mml:mrow>\r
354 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
355 <mml:mi mathvariant="italic">s</mml:mi>\r
356 </mml:msub>\r
357 <mml:mo>&it;</mml:mo>\r
358 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
359 <mml:mi mathvariant="italic">B</mml:mi>\r
360 </mml:msub>\r
361 <mml:mo>-</mml:mo>\r
362 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
363 <mml:mi mathvariant="italic">d</mml:mi>\r
364 </mml:msub>\r
365 <mml:mo>&it;</mml:mo>\r
366 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
367 <mml:mi mathvariant="italic">B</mml:mi>\r
368 </mml:msub>\r
369 </mml:mrow>\r
370 </mml:mrow>\r
371 </mml:math></informalequation>\r
372 </entry>\r
373 <entry align="left">\r
374 <informalequation><mml:math>\r
375 <!-- eqn: Ar = A sub s s sub A - A sub d d sub A :-->\r
376 <mml:mrow>\r
377 <mml:mi mathvariant="italic">Ar</mml:mi>\r
378 <mml:mo>=</mml:mo>\r
379 <mml:mrow>\r
380 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
381 <mml:mi mathvariant="italic">s</mml:mi>\r
382 </mml:msub>\r
383 <mml:mo>&it;</mml:mo>\r
384 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
385 <mml:mi mathvariant="italic">A</mml:mi>\r
386 </mml:msub>\r
387 <mml:mo>-</mml:mo>\r
388 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
389 <mml:mi mathvariant="italic">d</mml:mi>\r
390 </mml:msub>\r
391 <mml:mo>&it;</mml:mo>\r
392 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
393 <mml:mi mathvariant="italic">A</mml:mi>\r
394 </mml:msub>\r
395 </mml:mrow>\r
396 </mml:mrow>\r
397 </mml:math></informalequation>\r
398 </entry>\r
399 </row>\r
400 <row>\r
401 <entry align="left">\r
402 <constant>GL_FUNC_REVERSE_SUBTRACT</constant>\r
403 </entry>\r
404 <entry align="left">\r
405 <informalequation><mml:math>\r
406 <!-- eqn: Rr = R sub d d sub R - R sub s s sub R :-->\r
407 <mml:mrow>\r
408 <mml:mi mathvariant="italic">Rr</mml:mi>\r
409 <mml:mo>=</mml:mo>\r
410 <mml:mrow>\r
411 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
412 <mml:mi mathvariant="italic">d</mml:mi>\r
413 </mml:msub>\r
414 <mml:mo>&it;</mml:mo>\r
415 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
416 <mml:mi mathvariant="italic">R</mml:mi>\r
417 </mml:msub>\r
418 <mml:mo>-</mml:mo>\r
419 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
420 <mml:mi mathvariant="italic">s</mml:mi>\r
421 </mml:msub>\r
422 <mml:mo>&it;</mml:mo>\r
423 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
424 <mml:mi mathvariant="italic">R</mml:mi>\r
425 </mml:msub>\r
426 </mml:mrow>\r
427 </mml:mrow>\r
428 </mml:math></informalequation>\r
429 <informalequation><mml:math>\r
430 <!-- eqn: Gr = G sub d d sub G - G sub s s sub G :-->\r
431 <mml:mrow>\r
432 <mml:mi mathvariant="italic">Gr</mml:mi>\r
433 <mml:mo>=</mml:mo>\r
434 <mml:mrow>\r
435 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
436 <mml:mi mathvariant="italic">d</mml:mi>\r
437 </mml:msub>\r
438 <mml:mo>&it;</mml:mo>\r
439 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
440 <mml:mi mathvariant="italic">G</mml:mi>\r
441 </mml:msub>\r
442 <mml:mo>-</mml:mo>\r
443 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
444 <mml:mi mathvariant="italic">s</mml:mi>\r
445 </mml:msub>\r
446 <mml:mo>&it;</mml:mo>\r
447 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
448 <mml:mi mathvariant="italic">G</mml:mi>\r
449 </mml:msub>\r
450 </mml:mrow>\r
451 </mml:mrow>\r
452 </mml:math></informalequation>\r
453 <informalequation><mml:math>\r
454 <!-- eqn: Br = B sub d d sub B - B sub s s sub B :-->\r
455 <mml:mrow>\r
456 <mml:mi mathvariant="italic">Br</mml:mi>\r
457 <mml:mo>=</mml:mo>\r
458 <mml:mrow>\r
459 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
460 <mml:mi mathvariant="italic">d</mml:mi>\r
461 </mml:msub>\r
462 <mml:mo>&it;</mml:mo>\r
463 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
464 <mml:mi mathvariant="italic">B</mml:mi>\r
465 </mml:msub>\r
466 <mml:mo>-</mml:mo>\r
467 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
468 <mml:mi mathvariant="italic">s</mml:mi>\r
469 </mml:msub>\r
470 <mml:mo>&it;</mml:mo>\r
471 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
472 <mml:mi mathvariant="italic">B</mml:mi>\r
473 </mml:msub>\r
474 </mml:mrow>\r
475 </mml:mrow>\r
476 </mml:math></informalequation>\r
477 </entry>\r
478 <entry align="left">\r
479 <informalequation><mml:math>\r
480 <!-- eqn: Ar = A sub d d sub A - A sub s s sub A :-->\r
481 <mml:mrow>\r
482 <mml:mi mathvariant="italic">Ar</mml:mi>\r
483 <mml:mo>=</mml:mo>\r
484 <mml:mrow>\r
485 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
486 <mml:mi mathvariant="italic">d</mml:mi>\r
487 </mml:msub>\r
488 <mml:mo>&it;</mml:mo>\r
489 <mml:msub><mml:mi mathvariant="italic">d</mml:mi>\r
490 <mml:mi mathvariant="italic">A</mml:mi>\r
491 </mml:msub>\r
492 <mml:mo>-</mml:mo>\r
493 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
494 <mml:mi mathvariant="italic">s</mml:mi>\r
495 </mml:msub>\r
496 <mml:mo>&it;</mml:mo>\r
497 <mml:msub><mml:mi mathvariant="italic">s</mml:mi>\r
498 <mml:mi mathvariant="italic">A</mml:mi>\r
499 </mml:msub>\r
500 </mml:mrow>\r
501 </mml:mrow>\r
502 </mml:math></informalequation>\r
503 </entry>\r
504 </row>\r
505 <row>\r
506 <entry align="left">\r
507 <constant>GL_MIN</constant>\r
508 </entry>\r
509 <entry align="left">\r
510 <informalequation><mml:math>\r
511 <!-- eqn: Rr = min ( R sub s, R sub d):-->\r
512 <mml:mrow>\r
513 <mml:mi mathvariant="italic">Rr</mml:mi>\r
514 <mml:mo>=</mml:mo>\r
515 <mml:mrow>\r
516 <mml:mi mathvariant="italic">min</mml:mi>\r
517 <mml:mo>&af;</mml:mo>\r
518 <mml:mfenced open="(" close=")">\r
519 <mml:mrow>\r
520 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
521 <mml:mi mathvariant="italic">s</mml:mi>\r
522 </mml:msub>\r
523 </mml:mrow>\r
524 <mml:mrow>\r
525 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
526 <mml:mi mathvariant="italic">d</mml:mi>\r
527 </mml:msub>\r
528 </mml:mrow>\r
529 </mml:mfenced>\r
530 </mml:mrow>\r
531 </mml:mrow>\r
532 </mml:math></informalequation>\r
533 <informalequation><mml:math>\r
534 <!-- eqn: Gr = min ( G sub s, G sub d):-->\r
535 <mml:mrow>\r
536 <mml:mi mathvariant="italic">Gr</mml:mi>\r
537 <mml:mo>=</mml:mo>\r
538 <mml:mrow>\r
539 <mml:mi mathvariant="italic">min</mml:mi>\r
540 <mml:mo>&af;</mml:mo>\r
541 <mml:mfenced open="(" close=")">\r
542 <mml:mrow>\r
543 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
544 <mml:mi mathvariant="italic">s</mml:mi>\r
545 </mml:msub>\r
546 </mml:mrow>\r
547 <mml:mrow>\r
548 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
549 <mml:mi mathvariant="italic">d</mml:mi>\r
550 </mml:msub>\r
551 </mml:mrow>\r
552 </mml:mfenced>\r
553 </mml:mrow>\r
554 </mml:mrow>\r
555 </mml:math></informalequation>\r
556 <informalequation><mml:math>\r
557 <!-- eqn: Br = min ( B sub s, B sub d):-->\r
558 <mml:mrow>\r
559 <mml:mi mathvariant="italic">Br</mml:mi>\r
560 <mml:mo>=</mml:mo>\r
561 <mml:mrow>\r
562 <mml:mi mathvariant="italic">min</mml:mi>\r
563 <mml:mo>&af;</mml:mo>\r
564 <mml:mfenced open="(" close=")">\r
565 <mml:mrow>\r
566 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
567 <mml:mi mathvariant="italic">s</mml:mi>\r
568 </mml:msub>\r
569 </mml:mrow>\r
570 <mml:mrow>\r
571 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
572 <mml:mi mathvariant="italic">d</mml:mi>\r
573 </mml:msub>\r
574 </mml:mrow>\r
575 </mml:mfenced>\r
576 </mml:mrow>\r
577 </mml:mrow>\r
578 </mml:math></informalequation>\r
579 </entry>\r
580 <entry align="left">\r
581 <informalequation><mml:math>\r
582 <!-- eqn: Ar = min ( A sub s, A sub d):-->\r
583 <mml:mrow>\r
584 <mml:mi mathvariant="italic">Ar</mml:mi>\r
585 <mml:mo>=</mml:mo>\r
586 <mml:mrow>\r
587 <mml:mi mathvariant="italic">min</mml:mi>\r
588 <mml:mo>&af;</mml:mo>\r
589 <mml:mfenced open="(" close=")">\r
590 <mml:mrow>\r
591 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
592 <mml:mi mathvariant="italic">s</mml:mi>\r
593 </mml:msub>\r
594 </mml:mrow>\r
595 <mml:mrow>\r
596 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
597 <mml:mi mathvariant="italic">d</mml:mi>\r
598 </mml:msub>\r
599 </mml:mrow>\r
600 </mml:mfenced>\r
601 </mml:mrow>\r
602 </mml:mrow>\r
603 </mml:math></informalequation>\r
604 </entry>\r
605 </row>\r
606 <row>\r
607 <entry align="left">\r
608 <constant>GL_MAX</constant>\r
609 </entry>\r
610 <entry align="left">\r
611 <informalequation><mml:math>\r
612 <!-- eqn: Rr = max ( R sub s, R sub d):-->\r
613 <mml:mrow>\r
614 <mml:mi mathvariant="italic">Rr</mml:mi>\r
615 <mml:mo>=</mml:mo>\r
616 <mml:mrow>\r
617 <mml:mi mathvariant="italic">max</mml:mi>\r
618 <mml:mo>&af;</mml:mo>\r
619 <mml:mfenced open="(" close=")">\r
620 <mml:mrow>\r
621 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
622 <mml:mi mathvariant="italic">s</mml:mi>\r
623 </mml:msub>\r
624 </mml:mrow>\r
625 <mml:mrow>\r
626 <mml:msub><mml:mi mathvariant="italic">R</mml:mi>\r
627 <mml:mi mathvariant="italic">d</mml:mi>\r
628 </mml:msub>\r
629 </mml:mrow>\r
630 </mml:mfenced>\r
631 </mml:mrow>\r
632 </mml:mrow>\r
633 </mml:math></informalequation>\r
634 <informalequation><mml:math>\r
635 <!-- eqn: Gr = max ( G sub s, G sub d):-->\r
636 <mml:mrow>\r
637 <mml:mi mathvariant="italic">Gr</mml:mi>\r
638 <mml:mo>=</mml:mo>\r
639 <mml:mrow>\r
640 <mml:mi mathvariant="italic">max</mml:mi>\r
641 <mml:mo>&af;</mml:mo>\r
642 <mml:mfenced open="(" close=")">\r
643 <mml:mrow>\r
644 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
645 <mml:mi mathvariant="italic">s</mml:mi>\r
646 </mml:msub>\r
647 </mml:mrow>\r
648 <mml:mrow>\r
649 <mml:msub><mml:mi mathvariant="italic">G</mml:mi>\r
650 <mml:mi mathvariant="italic">d</mml:mi>\r
651 </mml:msub>\r
652 </mml:mrow>\r
653 </mml:mfenced>\r
654 </mml:mrow>\r
655 </mml:mrow>\r
656 </mml:math></informalequation>\r
657 <informalequation><mml:math>\r
658 <!-- eqn: Br = max ( B sub s, B sub d):-->\r
659 <mml:mrow>\r
660 <mml:mi mathvariant="italic">Br</mml:mi>\r
661 <mml:mo>=</mml:mo>\r
662 <mml:mrow>\r
663 <mml:mi mathvariant="italic">max</mml:mi>\r
664 <mml:mo>&af;</mml:mo>\r
665 <mml:mfenced open="(" close=")">\r
666 <mml:mrow>\r
667 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
668 <mml:mi mathvariant="italic">s</mml:mi>\r
669 </mml:msub>\r
670 </mml:mrow>\r
671 <mml:mrow>\r
672 <mml:msub><mml:mi mathvariant="italic">B</mml:mi>\r
673 <mml:mi mathvariant="italic">d</mml:mi>\r
674 </mml:msub>\r
675 </mml:mrow>\r
676 </mml:mfenced>\r
677 </mml:mrow>\r
678 </mml:mrow>\r
679 </mml:math></informalequation>\r
680 </entry>\r
681 <entry align="left">\r
682 <informalequation><mml:math>\r
683 <!-- eqn: Ar = max ( A sub s, A sub d):-->\r
684 <mml:mrow>\r
685 <mml:mi mathvariant="italic">Ar</mml:mi>\r
686 <mml:mo>=</mml:mo>\r
687 <mml:mrow>\r
688 <mml:mi mathvariant="italic">max</mml:mi>\r
689 <mml:mo>&af;</mml:mo>\r
690 <mml:mfenced open="(" close=")">\r
691 <mml:mrow>\r
692 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
693 <mml:mi mathvariant="italic">s</mml:mi>\r
694 </mml:msub>\r
695 </mml:mrow>\r
696 <mml:mrow>\r
697 <mml:msub><mml:mi mathvariant="italic">A</mml:mi>\r
698 <mml:mi mathvariant="italic">d</mml:mi>\r
699 </mml:msub>\r
700 </mml:mrow>\r
701 </mml:mfenced>\r
702 </mml:mrow>\r
703 </mml:mrow>\r
704 </mml:math></informalequation>\r
705 </entry>\r
706 </row>\r
707 </tbody>\r
708 </tgroup>\r
709 </informaltable>\r
710 </para>\r
711 <para>\r
712 The results of these equations are clamped to the range \r
713 <inlineequation><mml:math>\r
714 <!-- eqn: [0,1]:-->\r
715 <mml:mfenced open="[" close="]">\r
716 <mml:mn>0</mml:mn>\r
717 <mml:mn>1</mml:mn>\r
718 </mml:mfenced>\r
719 </mml:math></inlineequation>.\r
720 </para>\r
721 <para>\r
722 The <constant>GL_MIN</constant> and <constant>GL_MAX</constant> equations are useful for applications\r
723 that analyze image data (image thresholding against a constant color,\r
724 for example).\r
725 The <constant>GL_FUNC_ADD</constant> equation is useful\r
726 for antialiasing and transparency, among other things.\r
727 </para>\r
728 <para>\r
729 Initially, both the RGB blend equation and the alpha blend equation are set to <constant>GL_FUNC_ADD</constant>.\r
730 </para>\r
731 <para>\r
732 </para>\r
733 </refsect1>\r
734 <refsect1 id="notes"><title>Notes</title>\r
735 <para>\r
736 The <constant>GL_MIN</constant>, and <constant>GL_MAX</constant> equations do not use\r
737 the source or destination factors, only the source and destination colors.\r
738 </para>\r
739 </refsect1>\r
740 <refsect1 id="errors"><title>Errors</title>\r
741 <para>\r
742 <constant>GL_INVALID_ENUM</constant> is generated if either <parameter>modeRGB</parameter> or <parameter>modeAlpha</parameter> is not one of\r
743 <constant>GL_FUNC_ADD</constant>, <constant>GL_FUNC_SUBTRACT</constant>, <constant>GL_FUNC_REVERSE_SUBTRACT</constant>,\r
744 <constant>GL_MAX</constant>, or <constant>GL_MIN</constant>.\r
745 </para>\r
746 </refsect1>\r
747 <refsect1 id="associatedgets"><title>Associated Gets</title>\r
748 <para>\r
749 <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with an argument of <constant>GL_BLEND_EQUATION_RGB</constant>\r
750 </para>\r
751 <para>\r
752 <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with an argument of <constant>GL_BLEND_EQUATION_ALPHA</constant>\r
753 </para>\r
754 </refsect1>\r
755 <refsect1 id="seealso"><title>See Also</title>\r
756 <para>\r
757 <citerefentry><refentrytitle>glGetString</refentrytitle></citerefentry>,\r
758 <citerefentry><refentrytitle>glBlendColor</refentrytitle></citerefentry>,\r
759 <citerefentry><refentrytitle>glBlendFunc</refentrytitle></citerefentry>,\r
760 <citerefentry><refentrytitle>glBlendFuncSeparate</refentrytitle></citerefentry>\r
761 </para>\r
762 </refsect1>\r
763 <refsect1 id="Copyright"><title>Copyright</title>\r
764 <para>\r
765 Copyright <trademark class="copyright"></trademark> 2006 Khronos Group. \r
766 This material may be distributed subject to the terms and conditions set forth in \r
767 the Open Publication License, v 1.0, 8 June 1999.\r
768 <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.\r
769 </para>\r
770 </refsect1>\r
771</refentry>\r