1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE book PUBLIC
"-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
3 "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
4 <refentry id=
"glBlendEquationSeparate">
9 <holder>Silicon Graphics, Inc.
</holder>
12 <refentrytitle>glBlendEquationSeparate
</refentrytitle>
13 <manvolnum>3G
</manvolnum>
16 <refname>glBlendEquationSeparate
</refname>
17 <refpurpose>set the RGB blend equation and the alpha blend equation separately
</refpurpose>
19 <refsynopsisdiv><title>C Specification
</title>
22 <funcdef>void
<function>glBlendEquationSeparate
</function></funcdef>
23 <paramdef>GLenum
<parameter>modeRGB
</parameter></paramdef>
24 <paramdef>GLenum
<parameter>modeAlpha
</parameter></paramdef>
28 <!-- eqn: ignoring delim $$ -->
29 <refsect1 id=
"parameters"><title>Parameters
</title>
32 <term><parameter>modeRGB
</parameter></term>
35 specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined.
36 It must be
<constant>GL_FUNC_ADD
</constant>,
<constant>GL_FUNC_SUBTRACT
</constant>,
37 <constant>GL_FUNC_REVERSE_SUBTRACT
</constant>,
<constant>GL_MIN
</constant>,
<constant>GL_MAX
</constant>.
42 <term><parameter>modeAlpha
</parameter></term>
45 specifies the alpha blend equation, how the alpha component of the source and destination colors are combined.
46 It must be
<constant>GL_FUNC_ADD
</constant>,
<constant>GL_FUNC_SUBTRACT
</constant>,
47 <constant>GL_FUNC_REVERSE_SUBTRACT
</constant>,
<constant>GL_MIN
</constant>,
<constant>GL_MAX
</constant>.
53 <refsect1 id=
"description"><title>Description
</title>
55 The blend equations determines how a new pixel (the ''source'' color)
56 is combined with a pixel already in the framebuffer (the ''destination''
57 color). This function specifies one blend equation for the RGB-color
58 components and one blend equation for the alpha component.
61 The blend equations use the source and destination blend factors
62 specified by either
<citerefentry><refentrytitle>glBlendFunc
</refentrytitle></citerefentry> or
63 <citerefentry><refentrytitle>glBlendFuncSeparate
</refentrytitle></citerefentry>.
64 See
<citerefentry><refentrytitle>glBlendFunc
</refentrytitle></citerefentry> or
<citerefentry><refentrytitle>glBlendFuncSeparate
</refentrytitle></citerefentry>
65 for a description of the various blend factors.
68 In the equations that follow, source and destination
69 color components are referred to as
70 <inlineequation><mml:math>
71 <!-- eqn: ( R sub s, G sub s, B sub s, A sub s ):-->
72 <mml:mfenced open=
"(" close=
")">
73 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
74 <mml:mi mathvariant=
"italic">s
</mml:mi>
76 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
77 <mml:mi mathvariant=
"italic">s
</mml:mi>
79 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
80 <mml:mi mathvariant=
"italic">s
</mml:mi>
82 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
83 <mml:mi mathvariant=
"italic">s
</mml:mi>
86 </mml:math></inlineequation>
88 <inlineequation><mml:math>
89 <!-- eqn: ( R sub d, G sub d, B sub d, A sub d ):-->
90 <mml:mfenced open=
"(" close=
")">
91 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
92 <mml:mi mathvariant=
"italic">d
</mml:mi>
94 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
95 <mml:mi mathvariant=
"italic">d
</mml:mi>
97 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
98 <mml:mi mathvariant=
"italic">d
</mml:mi>
100 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
101 <mml:mi mathvariant=
"italic">d
</mml:mi>
104 </mml:math></inlineequation>,
106 The result color is referred to as
107 <inlineequation><mml:math>
108 <!-- eqn: ( R sub r, G sub r, B sub r, A sub r ):-->
109 <mml:mfenced open=
"(" close=
")">
110 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
111 <mml:mi mathvariant=
"italic">r
</mml:mi>
113 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
114 <mml:mi mathvariant=
"italic">r
</mml:mi>
116 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
117 <mml:mi mathvariant=
"italic">r
</mml:mi>
119 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
120 <mml:mi mathvariant=
"italic">r
</mml:mi>
123 </mml:math></inlineequation>.
124 The source and destination blend factors are denoted
125 <inlineequation><mml:math>
126 <!-- eqn: ( s sub R, s sub G, s sub B, s sub A ):-->
127 <mml:mfenced open=
"(" close=
")">
128 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
129 <mml:mi mathvariant=
"italic">R
</mml:mi>
131 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
132 <mml:mi mathvariant=
"italic">G
</mml:mi>
134 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
135 <mml:mi mathvariant=
"italic">B
</mml:mi>
137 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
138 <mml:mi mathvariant=
"italic">A
</mml:mi>
141 </mml:math></inlineequation>
143 <inlineequation><mml:math>
144 <!-- eqn: ( d sub R, d sub G, d sub B, d sub A ):-->
145 <mml:mfenced open=
"(" close=
")">
146 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
147 <mml:mi mathvariant=
"italic">R
</mml:mi>
149 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
150 <mml:mi mathvariant=
"italic">G
</mml:mi>
152 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
153 <mml:mi mathvariant=
"italic">B
</mml:mi>
155 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
156 <mml:mi mathvariant=
"italic">A
</mml:mi>
159 </mml:math></inlineequation>,
161 For these equations all color components are understood to have values
163 <inlineequation><mml:math>
165 <mml:mfenced open=
"[" close=
"]">
169 </mml:math></inlineequation>.
171 <informaltable frame=
"topbot">
172 <tgroup cols=
"3" align=
"left">
173 <colspec colwidth=
"1.1*" />
174 <colspec colwidth=
"1*" />
175 <colspec colwidth=
"1*" />
178 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
181 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
184 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
192 <constant>GL_FUNC_ADD
</constant>
195 <informalequation><mml:math>
196 <!-- eqn: Rr = R sub s s sub R + R sub d d sub R :-->
198 <mml:mi mathvariant=
"italic">Rr
</mml:mi>
201 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
202 <mml:mi mathvariant=
"italic">s
</mml:mi>
204 <mml:mo>⁢</mml:mo>
205 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
206 <mml:mi mathvariant=
"italic">R
</mml:mi>
209 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
210 <mml:mi mathvariant=
"italic">d
</mml:mi>
212 <mml:mo>⁢</mml:mo>
213 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
214 <mml:mi mathvariant=
"italic">R
</mml:mi>
218 </mml:math></informalequation>
219 <informalequation><mml:math>
220 <!-- eqn: Gr = G sub s s sub G + G sub d d sub G :-->
222 <mml:mi mathvariant=
"italic">Gr
</mml:mi>
225 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
226 <mml:mi mathvariant=
"italic">s
</mml:mi>
228 <mml:mo>⁢</mml:mo>
229 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
230 <mml:mi mathvariant=
"italic">G
</mml:mi>
233 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
234 <mml:mi mathvariant=
"italic">d
</mml:mi>
236 <mml:mo>⁢</mml:mo>
237 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
238 <mml:mi mathvariant=
"italic">G
</mml:mi>
242 </mml:math></informalequation>
243 <informalequation><mml:math>
244 <!-- eqn: Br = B sub s s sub B + B sub d d sub B :-->
246 <mml:mi mathvariant=
"italic">Br
</mml:mi>
249 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
250 <mml:mi mathvariant=
"italic">s
</mml:mi>
252 <mml:mo>⁢</mml:mo>
253 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
254 <mml:mi mathvariant=
"italic">B
</mml:mi>
257 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
258 <mml:mi mathvariant=
"italic">d
</mml:mi>
260 <mml:mo>⁢</mml:mo>
261 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
262 <mml:mi mathvariant=
"italic">B
</mml:mi>
266 </mml:math></informalequation>
269 <informalequation><mml:math>
270 <!-- eqn: Ar = A sub s s sub A + A sub d d sub A :-->
272 <mml:mi mathvariant=
"italic">Ar
</mml:mi>
275 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
276 <mml:mi mathvariant=
"italic">s
</mml:mi>
278 <mml:mo>⁢</mml:mo>
279 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
280 <mml:mi mathvariant=
"italic">A
</mml:mi>
283 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
284 <mml:mi mathvariant=
"italic">d
</mml:mi>
286 <mml:mo>⁢</mml:mo>
287 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
288 <mml:mi mathvariant=
"italic">A
</mml:mi>
292 </mml:math></informalequation>
297 <constant>GL_FUNC_SUBTRACT
</constant>
300 <informalequation><mml:math>
301 <!-- eqn: Rr = R sub s s sub R - R sub d d sub R :-->
303 <mml:mi mathvariant=
"italic">Rr
</mml:mi>
306 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
307 <mml:mi mathvariant=
"italic">s
</mml:mi>
309 <mml:mo>⁢</mml:mo>
310 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
311 <mml:mi mathvariant=
"italic">R
</mml:mi>
314 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
315 <mml:mi mathvariant=
"italic">d
</mml:mi>
317 <mml:mo>⁢</mml:mo>
318 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
319 <mml:mi mathvariant=
"italic">R
</mml:mi>
323 </mml:math></informalequation>
324 <informalequation><mml:math>
325 <!-- eqn: Gr = G sub s s sub G - G sub d d sub G :-->
327 <mml:mi mathvariant=
"italic">Gr
</mml:mi>
330 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
331 <mml:mi mathvariant=
"italic">s
</mml:mi>
333 <mml:mo>⁢</mml:mo>
334 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
335 <mml:mi mathvariant=
"italic">G
</mml:mi>
338 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
339 <mml:mi mathvariant=
"italic">d
</mml:mi>
341 <mml:mo>⁢</mml:mo>
342 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
343 <mml:mi mathvariant=
"italic">G
</mml:mi>
347 </mml:math></informalequation>
348 <informalequation><mml:math>
349 <!-- eqn: Br = B sub s s sub B - B sub d d sub B :-->
351 <mml:mi mathvariant=
"italic">Br
</mml:mi>
354 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
355 <mml:mi mathvariant=
"italic">s
</mml:mi>
357 <mml:mo>⁢</mml:mo>
358 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
359 <mml:mi mathvariant=
"italic">B
</mml:mi>
362 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
363 <mml:mi mathvariant=
"italic">d
</mml:mi>
365 <mml:mo>⁢</mml:mo>
366 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
367 <mml:mi mathvariant=
"italic">B
</mml:mi>
371 </mml:math></informalequation>
374 <informalequation><mml:math>
375 <!-- eqn: Ar = A sub s s sub A - A sub d d sub A :-->
377 <mml:mi mathvariant=
"italic">Ar
</mml:mi>
380 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
381 <mml:mi mathvariant=
"italic">s
</mml:mi>
383 <mml:mo>⁢</mml:mo>
384 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
385 <mml:mi mathvariant=
"italic">A
</mml:mi>
388 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
389 <mml:mi mathvariant=
"italic">d
</mml:mi>
391 <mml:mo>⁢</mml:mo>
392 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
393 <mml:mi mathvariant=
"italic">A
</mml:mi>
397 </mml:math></informalequation>
402 <constant>GL_FUNC_REVERSE_SUBTRACT
</constant>
405 <informalequation><mml:math>
406 <!-- eqn: Rr = R sub d d sub R - R sub s s sub R :-->
408 <mml:mi mathvariant=
"italic">Rr
</mml:mi>
411 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
412 <mml:mi mathvariant=
"italic">d
</mml:mi>
414 <mml:mo>⁢</mml:mo>
415 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
416 <mml:mi mathvariant=
"italic">R
</mml:mi>
419 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
420 <mml:mi mathvariant=
"italic">s
</mml:mi>
422 <mml:mo>⁢</mml:mo>
423 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
424 <mml:mi mathvariant=
"italic">R
</mml:mi>
428 </mml:math></informalequation>
429 <informalequation><mml:math>
430 <!-- eqn: Gr = G sub d d sub G - G sub s s sub G :-->
432 <mml:mi mathvariant=
"italic">Gr
</mml:mi>
435 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
436 <mml:mi mathvariant=
"italic">d
</mml:mi>
438 <mml:mo>⁢</mml:mo>
439 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
440 <mml:mi mathvariant=
"italic">G
</mml:mi>
443 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
444 <mml:mi mathvariant=
"italic">s
</mml:mi>
446 <mml:mo>⁢</mml:mo>
447 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
448 <mml:mi mathvariant=
"italic">G
</mml:mi>
452 </mml:math></informalequation>
453 <informalequation><mml:math>
454 <!-- eqn: Br = B sub d d sub B - B sub s s sub B :-->
456 <mml:mi mathvariant=
"italic">Br
</mml:mi>
459 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
460 <mml:mi mathvariant=
"italic">d
</mml:mi>
462 <mml:mo>⁢</mml:mo>
463 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
464 <mml:mi mathvariant=
"italic">B
</mml:mi>
467 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
468 <mml:mi mathvariant=
"italic">s
</mml:mi>
470 <mml:mo>⁢</mml:mo>
471 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
472 <mml:mi mathvariant=
"italic">B
</mml:mi>
476 </mml:math></informalequation>
479 <informalequation><mml:math>
480 <!-- eqn: Ar = A sub d d sub A - A sub s s sub A :-->
482 <mml:mi mathvariant=
"italic">Ar
</mml:mi>
485 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
486 <mml:mi mathvariant=
"italic">d
</mml:mi>
488 <mml:mo>⁢</mml:mo>
489 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
490 <mml:mi mathvariant=
"italic">A
</mml:mi>
493 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
494 <mml:mi mathvariant=
"italic">s
</mml:mi>
496 <mml:mo>⁢</mml:mo>
497 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
498 <mml:mi mathvariant=
"italic">A
</mml:mi>
502 </mml:math></informalequation>
507 <constant>GL_MIN
</constant>
510 <informalequation><mml:math>
511 <!-- eqn: Rr = min ( R sub s, R sub d):-->
513 <mml:mi mathvariant=
"italic">Rr
</mml:mi>
516 <mml:mi mathvariant=
"italic">min
</mml:mi>
517 <mml:mo>⁡</mml:mo>
518 <mml:mfenced open=
"(" close=
")">
520 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
521 <mml:mi mathvariant=
"italic">s
</mml:mi>
525 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
526 <mml:mi mathvariant=
"italic">d
</mml:mi>
532 </mml:math></informalequation>
533 <informalequation><mml:math>
534 <!-- eqn: Gr = min ( G sub s, G sub d):-->
536 <mml:mi mathvariant=
"italic">Gr
</mml:mi>
539 <mml:mi mathvariant=
"italic">min
</mml:mi>
540 <mml:mo>⁡</mml:mo>
541 <mml:mfenced open=
"(" close=
")">
543 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
544 <mml:mi mathvariant=
"italic">s
</mml:mi>
548 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
549 <mml:mi mathvariant=
"italic">d
</mml:mi>
555 </mml:math></informalequation>
556 <informalequation><mml:math>
557 <!-- eqn: Br = min ( B sub s, B sub d):-->
559 <mml:mi mathvariant=
"italic">Br
</mml:mi>
562 <mml:mi mathvariant=
"italic">min
</mml:mi>
563 <mml:mo>⁡</mml:mo>
564 <mml:mfenced open=
"(" close=
")">
566 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
567 <mml:mi mathvariant=
"italic">s
</mml:mi>
571 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
572 <mml:mi mathvariant=
"italic">d
</mml:mi>
578 </mml:math></informalequation>
581 <informalequation><mml:math>
582 <!-- eqn: Ar = min ( A sub s, A sub d):-->
584 <mml:mi mathvariant=
"italic">Ar
</mml:mi>
587 <mml:mi mathvariant=
"italic">min
</mml:mi>
588 <mml:mo>⁡</mml:mo>
589 <mml:mfenced open=
"(" close=
")">
591 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
592 <mml:mi mathvariant=
"italic">s
</mml:mi>
596 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
597 <mml:mi mathvariant=
"italic">d
</mml:mi>
603 </mml:math></informalequation>
608 <constant>GL_MAX
</constant>
611 <informalequation><mml:math>
612 <!-- eqn: Rr = max ( R sub s, R sub d):-->
614 <mml:mi mathvariant=
"italic">Rr
</mml:mi>
617 <mml:mi mathvariant=
"italic">max
</mml:mi>
618 <mml:mo>⁡</mml:mo>
619 <mml:mfenced open=
"(" close=
")">
621 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
622 <mml:mi mathvariant=
"italic">s
</mml:mi>
626 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
627 <mml:mi mathvariant=
"italic">d
</mml:mi>
633 </mml:math></informalequation>
634 <informalequation><mml:math>
635 <!-- eqn: Gr = max ( G sub s, G sub d):-->
637 <mml:mi mathvariant=
"italic">Gr
</mml:mi>
640 <mml:mi mathvariant=
"italic">max
</mml:mi>
641 <mml:mo>⁡</mml:mo>
642 <mml:mfenced open=
"(" close=
")">
644 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
645 <mml:mi mathvariant=
"italic">s
</mml:mi>
649 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
650 <mml:mi mathvariant=
"italic">d
</mml:mi>
656 </mml:math></informalequation>
657 <informalequation><mml:math>
658 <!-- eqn: Br = max ( B sub s, B sub d):-->
660 <mml:mi mathvariant=
"italic">Br
</mml:mi>
663 <mml:mi mathvariant=
"italic">max
</mml:mi>
664 <mml:mo>⁡</mml:mo>
665 <mml:mfenced open=
"(" close=
")">
667 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
668 <mml:mi mathvariant=
"italic">s
</mml:mi>
672 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
673 <mml:mi mathvariant=
"italic">d
</mml:mi>
679 </mml:math></informalequation>
682 <informalequation><mml:math>
683 <!-- eqn: Ar = max ( A sub s, A sub d):-->
685 <mml:mi mathvariant=
"italic">Ar
</mml:mi>
688 <mml:mi mathvariant=
"italic">max
</mml:mi>
689 <mml:mo>⁡</mml:mo>
690 <mml:mfenced open=
"(" close=
")">
692 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
693 <mml:mi mathvariant=
"italic">s
</mml:mi>
697 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
698 <mml:mi mathvariant=
"italic">d
</mml:mi>
704 </mml:math></informalequation>
712 The results of these equations are clamped to the range
713 <inlineequation><mml:math>
715 <mml:mfenced open=
"[" close=
"]">
719 </mml:math></inlineequation>.
722 The
<constant>GL_MIN
</constant> and
<constant>GL_MAX
</constant> equations are useful for applications
723 that analyze image data (image thresholding against a constant color,
725 The
<constant>GL_FUNC_ADD
</constant> equation is useful
726 for antialiasing and transparency, among other things.
729 Initially, both the RGB blend equation and the alpha blend equation are set to
<constant>GL_FUNC_ADD
</constant>.
734 <refsect1 id=
"notes"><title>Notes
</title>
736 <function>glBlendEquationSeparate
</function> is available only if the GL version is
2.0 or greater.
739 The
<constant>GL_MIN
</constant>, and
<constant>GL_MAX
</constant> equations do not use
740 the source or destination factors, only the source and destination colors.
743 <refsect1 id=
"errors"><title>Errors
</title>
745 <constant>GL_INVALID_ENUM
</constant> is generated if either
<parameter>modeRGB
</parameter> or
<parameter>modeAlpha
</parameter> is not one of
746 <constant>GL_FUNC_ADD
</constant>,
<constant>GL_FUNC_SUBTRACT
</constant>,
<constant>GL_FUNC_REVERSE_SUBTRACT
</constant>,
747 <constant>GL_MAX
</constant>, or
<constant>GL_MIN
</constant>.
750 <constant>GL_INVALID_OPERATION
</constant> is generated if
<function>glBlendEquationSeparate
</function> is executed
751 between the execution of
<citerefentry><refentrytitle>glBegin
</refentrytitle></citerefentry> and the corresponding
752 execution of
<citerefentry><refentrytitle>glEnd
</refentrytitle></citerefentry>.
755 <refsect1 id=
"associatedgets"><title>Associated Gets
</title>
757 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with an argument of
<constant>GL_BLEND_EQUATION_RGB
</constant>
760 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with an argument of
<constant>GL_BLEND_EQUATION_ALPHA
</constant>
763 <refsect1 id=
"seealso"><title>See Also
</title>
765 <citerefentry><refentrytitle>glGetString
</refentrytitle></citerefentry>,
766 <citerefentry><refentrytitle>glBlendColor
</refentrytitle></citerefentry>,
767 <citerefentry><refentrytitle>glBlendFunc
</refentrytitle></citerefentry>,
768 <citerefentry><refentrytitle>glBlendFuncSeparate
</refentrytitle></citerefentry>
771 <refsect1 id=
"Copyright"><title>Copyright
</title>
773 Copyright
<trademark class=
"copyright"></trademark> 2006 Khronos Group.
774 This material may be distributed subject to the terms and conditions set forth in
775 the Open Publication License, v
1.0,
8 June
1999.
776 <ulink url=
"http://opencontent.org/openpub/">http://opencontent.org/openpub/
</ulink>.