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=
"glBlendFuncSeparate">
9 <holder>Silicon Graphics, Inc.
</holder>
12 <refentrytitle>glBlendFuncSeparate
</refentrytitle>
13 <manvolnum>3G
</manvolnum>
16 <refname>glBlendFuncSeparate
</refname>
17 <refpurpose>specify pixel arithmetic for RGB and alpha components separately
</refpurpose>
19 <refsynopsisdiv><title>C Specification
</title>
22 <funcdef>void
<function>glBlendFuncSeparate
</function></funcdef>
23 <paramdef>GLenum
<parameter>srcRGB
</parameter></paramdef>
24 <paramdef>GLenum
<parameter>dstRGB
</parameter></paramdef>
25 <paramdef>GLenum
<parameter>srcAlpha
</parameter></paramdef>
26 <paramdef>GLenum
<parameter>dstAlpha
</parameter></paramdef>
30 <!-- eqn: ignoring delim $$ -->
31 <refsect1 id=
"parameters"><title>Parameters
</title>
34 <term><parameter>srcRGB
</parameter></term>
37 Specifies how the red, green, and blue blending factors are computed.
38 The initial value is
<constant>GL_ONE
</constant>.
43 <term><parameter>dstRGB
</parameter></term>
46 Specifies how the red, green, and blue destination blending factors are
48 The initial value is
<constant>GL_ZERO
</constant>.
53 <term><parameter>srcAlpha
</parameter></term>
56 Specified how the alpha source blending factor is computed.
57 The initial value is
<constant>GL_ONE
</constant>.
62 <term><parameter>dstAlpha
</parameter></term>
65 Specified how the alpha destination blending factor is computed.
66 The initial value is
<constant>GL_ZERO
</constant>.
72 <refsect1 id=
"description"><title>Description
</title>
74 Pixels can be drawn using a function that blends
75 the incoming (source) RGBA values with the RGBA values
76 that are already in the frame buffer (the destination values).
77 Blending is initially disabled.
78 Use
<citerefentry><refentrytitle>glEnable
</refentrytitle></citerefentry> and
<citerefentry><refentrytitle>glDisable
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND
</constant>
79 to enable and disable blending.
82 <function>glBlendFuncSeparate
</function> defines the operation of blending when it is enabled.
83 <parameter>srcRGB
</parameter> specifies which method is used to scale the
84 source RGB-color components.
85 <parameter>dstRGB
</parameter> specifies which method is used to scale the
86 destination RGB-color components.
87 Likewise,
<parameter>srcAlpha
</parameter> specifies which method is used to scale the source alpha
88 color component, and
<parameter>dstAlpha
</parameter> specifies which method is used to scale the
89 destination alpha component.
90 The possible methods are described in the following table.
91 Each method defines four scale factors,
92 one each for red, green, blue, and alpha.
95 In the table and in subsequent equations, first source, second source and destination
96 color components are referred to as
97 <inlineequation><mml:math>
98 <!-- eqn: ( R sub s0 , G sub s0 , B sub s0 , A sub s0 ): -->
99 <mml:mfenced open=
"(" close=
")">
100 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
101 <mml:mi mathvariant=
"italic">s0
</mml:mi>
103 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
104 <mml:mi mathvariant=
"italic">s0
</mml:mi>
106 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
107 <mml:mi mathvariant=
"italic">s0
</mml:mi>
109 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
110 <mml:mi mathvariant=
"italic">s0
</mml:mi>
113 </mml:math></inlineequation>,
114 <inlineequation><mml:math>
115 <!-- eqn: ( R sub s1 , G sub s1 , B sub s1 , A sub s1 ): -->
116 <mml:mfenced open=
"(" close=
")">
117 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
118 <mml:mi mathvariant=
"italic">s1
</mml:mi>
120 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
121 <mml:mi mathvariant=
"italic">s1
</mml:mi>
123 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
124 <mml:mi mathvariant=
"italic">s1
</mml:mi>
126 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
127 <mml:mi mathvariant=
"italic">s1
</mml:mi>
130 </mml:math></inlineequation>,
132 <inlineequation><mml:math>
133 <!-- eqn: ( R sub d , G sub d , B sub d , A sub d ): -->
134 <mml:mfenced open=
"(" close=
")">
135 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
136 <mml:mi mathvariant=
"italic">d
</mml:mi>
138 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
139 <mml:mi mathvariant=
"italic">d
</mml:mi>
141 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
142 <mml:mi mathvariant=
"italic">d
</mml:mi>
144 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
145 <mml:mi mathvariant=
"italic">d
</mml:mi>
148 </mml:math></inlineequation>, respectively.
149 The color specified by
<citerefentry><refentrytitle>glBlendColor
</refentrytitle></citerefentry> is referred to as
150 <inlineequation><mml:math>
151 <!-- eqn: ( R sub c , G sub c , B sub c , A sub c ): -->
152 <mml:mfenced open=
"(" close=
")">
153 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
154 <mml:mi mathvariant=
"italic">c
</mml:mi>
156 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
157 <mml:mi mathvariant=
"italic">c
</mml:mi>
159 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
160 <mml:mi mathvariant=
"italic">c
</mml:mi>
162 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
163 <mml:mi mathvariant=
"italic">c
</mml:mi>
166 </mml:math></inlineequation>.
167 They are understood to have integer values between
0 and
168 <inlineequation><mml:math>
169 <!-- eqn: ( k sub R , k sub G , k sub B , k sub A ): -->
170 <mml:mfenced open=
"(" close=
")">
171 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
172 <mml:mi mathvariant=
"italic">R
</mml:mi>
174 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
175 <mml:mi mathvariant=
"italic">G
</mml:mi>
177 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
178 <mml:mi mathvariant=
"italic">B
</mml:mi>
180 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
181 <mml:mi mathvariant=
"italic">A
</mml:mi>
184 </mml:math></inlineequation>,
189 <inlineequation><mml:math>
190 <!-- eqn: k sub c = 2 sup {m sub c} - 1: -->
192 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
193 <mml:mi mathvariant=
"italic">c
</mml:mi>
197 <mml:msup><mml:mn>2</mml:mn>
198 <mml:mfenced open=
"" close=
"">
199 <mml:msub><mml:mi mathvariant=
"italic">m
</mml:mi>
200 <mml:mi mathvariant=
"italic">c
</mml:mi>
208 </mml:math></inlineequation>
213 <inlineequation><mml:math>
214 <!-- eqn: ( m sub R , m sub G , m sub B , m sub A ): -->
215 <mml:mfenced open=
"(" close=
")">
216 <mml:msub><mml:mi mathvariant=
"italic">m
</mml:mi>
217 <mml:mi mathvariant=
"italic">R
</mml:mi>
219 <mml:msub><mml:mi mathvariant=
"italic">m
</mml:mi>
220 <mml:mi mathvariant=
"italic">G
</mml:mi>
222 <mml:msub><mml:mi mathvariant=
"italic">m
</mml:mi>
223 <mml:mi mathvariant=
"italic">B
</mml:mi>
225 <mml:msub><mml:mi mathvariant=
"italic">m
</mml:mi>
226 <mml:mi mathvariant=
"italic">A
</mml:mi>
229 </mml:math></inlineequation>
230 is the number of red,
236 Source and destination scale factors are referred to as
237 <inlineequation><mml:math>
238 <!-- eqn: ( s sub R , s sub G , s sub B , s sub A ): -->
239 <mml:mfenced open=
"(" close=
")">
240 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
241 <mml:mi mathvariant=
"italic">R
</mml:mi>
243 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
244 <mml:mi mathvariant=
"italic">G
</mml:mi>
246 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
247 <mml:mi mathvariant=
"italic">B
</mml:mi>
249 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
250 <mml:mi mathvariant=
"italic">A
</mml:mi>
253 </mml:math></inlineequation>
255 <inlineequation><mml:math>
256 <!-- eqn: ( d sub R , d sub G , d sub B , d sub A ): -->
257 <mml:mfenced open=
"(" close=
")">
258 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
259 <mml:mi mathvariant=
"italic">R
</mml:mi>
261 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
262 <mml:mi mathvariant=
"italic">G
</mml:mi>
264 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
265 <mml:mi mathvariant=
"italic">B
</mml:mi>
267 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
268 <mml:mi mathvariant=
"italic">A
</mml:mi>
271 </mml:math></inlineequation>.
272 All scale factors have range
273 <inlineequation><mml:math>
275 <mml:mfenced open=
"[" close=
"]">
279 </mml:math></inlineequation>.
283 <informaltable frame=
"topbot">
284 <tgroup cols=
"3" align=
"left">
285 <colspec colwidth=
"3*" />
286 <colspec colwidth=
"2*" />
287 <colspec colwidth=
"1*" />
290 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
293 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
296 <entry rowsep=
"1" align=
"left"><emphasis role=
"bold">
304 <constant>GL_ZERO
</constant>
307 <inlineequation><mml:math>
308 <!-- eqn: ( 0, 0, 0 ): -->
309 <mml:mfenced open=
"(" close=
")">
314 </mml:math></inlineequation>
317 <inlineequation><mml:math>
320 </mml:math></inlineequation>
325 <constant>GL_ONE
</constant>
328 <inlineequation><mml:math>
329 <!-- eqn: ( 1, 1, 1 ): -->
330 <mml:mfenced open=
"(" close=
")">
335 </mml:math></inlineequation>
338 <inlineequation><mml:math>
341 </mml:math></inlineequation>
346 <constant>GL_SRC_COLOR
</constant>
349 <inlineequation><mml:math>
350 <!-- eqn: ( R sub s0 / k sub R , G sub s0 / k sub G , B sub s0 / k sub B ): -->
351 <mml:mfenced open=
"(" close=
")">
353 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
354 <mml:mi mathvariant=
"italic">s0
</mml:mi>
356 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
357 <mml:mi mathvariant=
"italic">R
</mml:mi>
361 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
362 <mml:mi mathvariant=
"italic">s0
</mml:mi>
364 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
365 <mml:mi mathvariant=
"italic">G
</mml:mi>
369 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
370 <mml:mi mathvariant=
"italic">s0
</mml:mi>
372 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
373 <mml:mi mathvariant=
"italic">B
</mml:mi>
377 </mml:math></inlineequation>
380 <inlineequation><mml:math>
381 <!-- eqn: A sub s0 / k sub A: -->
383 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
384 <mml:mi mathvariant=
"italic">s0
</mml:mi>
386 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
387 <mml:mi mathvariant=
"italic">A
</mml:mi>
390 </mml:math></inlineequation>
395 <constant>GL_ONE_MINUS_SRC_COLOR
</constant>
398 <inlineequation><mml:math>
399 <!-- eqn: ( 1, 1, 1, 1 ) - ( R sub s0 / k sub R , G sub s0 / k sub G , B sub 0s / k sub B ): -->
401 <mml:mfenced open=
"(" close=
")">
408 <mml:mfenced open=
"(" close=
")">
410 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
411 <mml:mi mathvariant=
"italic">s0
</mml:mi>
413 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
414 <mml:mi mathvariant=
"italic">R
</mml:mi>
418 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
419 <mml:mi mathvariant=
"italic">s0
</mml:mi>
421 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
422 <mml:mi mathvariant=
"italic">G
</mml:mi>
426 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
427 <mml:mi mathvariant=
"italic">s0
</mml:mi>
429 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
430 <mml:mi mathvariant=
"italic">B
</mml:mi>
435 </mml:math></inlineequation>
438 <inlineequation><mml:math>
439 <!-- eqn: 1 - A sub s0 / k sub A: -->
444 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
445 <mml:mi mathvariant=
"italic">s0
</mml:mi>
447 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
448 <mml:mi mathvariant=
"italic">A
</mml:mi>
452 </mml:math></inlineequation>
457 <constant>GL_DST_COLOR
</constant>
460 <inlineequation><mml:math>
461 <!-- eqn: ( R sub d / k sub R , G sub d / k sub G , B sub d / k sub B ): -->
462 <mml:mfenced open=
"(" close=
")">
464 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
465 <mml:mi mathvariant=
"italic">d
</mml:mi>
467 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
468 <mml:mi mathvariant=
"italic">R
</mml:mi>
472 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
473 <mml:mi mathvariant=
"italic">d
</mml:mi>
475 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
476 <mml:mi mathvariant=
"italic">G
</mml:mi>
480 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
481 <mml:mi mathvariant=
"italic">d
</mml:mi>
483 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
484 <mml:mi mathvariant=
"italic">B
</mml:mi>
488 </mml:math></inlineequation>
491 <inlineequation><mml:math>
492 <!-- eqn: A sub d / k sub A: -->
494 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
495 <mml:mi mathvariant=
"italic">d
</mml:mi>
497 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
498 <mml:mi mathvariant=
"italic">A
</mml:mi>
501 </mml:math></inlineequation>
506 <constant>GL_ONE_MINUS_DST_COLOR
</constant>
509 <inlineequation><mml:math>
510 <!-- eqn: ( 1, 1, 1 ) - ( R sub d / k sub R , G sub d / k sub G , B sub d / k sub B ): -->
512 <mml:mfenced open=
"(" close=
")">
518 <mml:mfenced open=
"(" close=
")">
520 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
521 <mml:mi mathvariant=
"italic">d
</mml:mi>
523 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
524 <mml:mi mathvariant=
"italic">R
</mml:mi>
528 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
529 <mml:mi mathvariant=
"italic">d
</mml:mi>
531 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
532 <mml:mi mathvariant=
"italic">G
</mml:mi>
536 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
537 <mml:mi mathvariant=
"italic">d
</mml:mi>
539 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
540 <mml:mi mathvariant=
"italic">B
</mml:mi>
545 </mml:math></inlineequation>
548 <inlineequation><mml:math>
549 <!-- eqn: 1 - A sub d / k sub A: -->
554 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
555 <mml:mi mathvariant=
"italic">d
</mml:mi>
557 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
558 <mml:mi mathvariant=
"italic">A
</mml:mi>
562 </mml:math></inlineequation>
567 <constant>GL_SRC_ALPHA
</constant>
570 <inlineequation><mml:math>
571 <!-- eqn: ( A sub s0 / k sub A , A sub s0 / k sub A , A sub s0 / k sub A ): -->
572 <mml:mfenced open=
"(" close=
")">
574 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
575 <mml:mi mathvariant=
"italic">s0
</mml:mi>
577 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
578 <mml:mi mathvariant=
"italic">A
</mml:mi>
582 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
583 <mml:mi mathvariant=
"italic">s0
</mml:mi>
585 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
586 <mml:mi mathvariant=
"italic">A
</mml:mi>
590 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
591 <mml:mi mathvariant=
"italic">s0
</mml:mi>
593 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
594 <mml:mi mathvariant=
"italic">A
</mml:mi>
598 </mml:math></inlineequation>
601 <inlineequation><mml:math>
602 <!-- eqn: A sub s / k sub A: -->
604 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
605 <mml:mi mathvariant=
"italic">s0
</mml:mi>
607 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
608 <mml:mi mathvariant=
"italic">A
</mml:mi>
611 </mml:math></inlineequation>
616 <constant>GL_ONE_MINUS_SRC_ALPHA
</constant>
619 <inlineequation><mml:math>
620 <!-- eqn: ( 1, 1, 1 ) - ( A sub s0 / k sub A , A sub s0 / k sub A , A sub s0 / k sub A ): -->
622 <mml:mfenced open=
"(" close=
")">
628 <mml:mfenced open=
"(" close=
")">
630 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
631 <mml:mi mathvariant=
"italic">s0
</mml:mi>
633 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
634 <mml:mi mathvariant=
"italic">A
</mml:mi>
638 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
639 <mml:mi mathvariant=
"italic">s0
</mml:mi>
641 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
642 <mml:mi mathvariant=
"italic">A
</mml:mi>
646 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
647 <mml:mi mathvariant=
"italic">s0
</mml:mi>
649 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
650 <mml:mi mathvariant=
"italic">A
</mml:mi>
655 </mml:math></inlineequation>
658 <inlineequation><mml:math>
659 <!-- eqn: 1 - A sub s / k sub A: -->
664 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
665 <mml:mi mathvariant=
"italic">s0
</mml:mi>
667 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
668 <mml:mi mathvariant=
"italic">A
</mml:mi>
672 </mml:math></inlineequation>
677 <constant>GL_DST_ALPHA
</constant>
680 <inlineequation><mml:math>
681 <!-- eqn: ( A sub d / k sub A , A sub d / k sub A , A sub d / k sub A ): -->
682 <mml:mfenced open=
"(" close=
")">
684 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
685 <mml:mi mathvariant=
"italic">d
</mml:mi>
687 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
688 <mml:mi mathvariant=
"italic">A
</mml:mi>
692 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
693 <mml:mi mathvariant=
"italic">d
</mml:mi>
695 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
696 <mml:mi mathvariant=
"italic">A
</mml:mi>
700 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
701 <mml:mi mathvariant=
"italic">d
</mml:mi>
703 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
704 <mml:mi mathvariant=
"italic">A
</mml:mi>
708 </mml:math></inlineequation>
711 <inlineequation><mml:math>
712 <!-- eqn: A sub d / k sub A: -->
714 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
715 <mml:mi mathvariant=
"italic">d
</mml:mi>
717 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
718 <mml:mi mathvariant=
"italic">A
</mml:mi>
721 </mml:math></inlineequation>
726 <constant>GL_ONE_MINUS_DST_ALPHA
</constant>
729 <inlineequation><mml:math>
730 <!-- eqn: ( 1, 1, 1 ) - ( A sub d / k sub A , A sub d / k sub A , A sub d / k sub A ): -->
732 <mml:mfenced open=
"(" close=
")">
738 <mml:mfenced open=
"(" close=
")">
740 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
741 <mml:mi mathvariant=
"italic">d
</mml:mi>
743 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
744 <mml:mi mathvariant=
"italic">A
</mml:mi>
748 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
749 <mml:mi mathvariant=
"italic">d
</mml:mi>
751 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
752 <mml:mi mathvariant=
"italic">A
</mml:mi>
756 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
757 <mml:mi mathvariant=
"italic">d
</mml:mi>
759 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
760 <mml:mi mathvariant=
"italic">A
</mml:mi>
765 </mml:math></inlineequation>
768 <inlineequation><mml:math>
769 <!-- eqn: 1 - A sub d / k sub A: -->
774 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
775 <mml:mi mathvariant=
"italic">d
</mml:mi>
777 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
778 <mml:mi mathvariant=
"italic">A
</mml:mi>
782 </mml:math></inlineequation>
787 <constant>GL_CONSTANT_COLOR
</constant>
790 <inlineequation><mml:math>
791 <!-- eqn: ( R sub c, G sub c, B sub c ): -->
792 <mml:mfenced open=
"(" close=
")">
793 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
794 <mml:mi mathvariant=
"italic">c
</mml:mi>
796 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
797 <mml:mi mathvariant=
"italic">c
</mml:mi>
799 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
800 <mml:mi mathvariant=
"italic">c
</mml:mi>
803 </mml:math></inlineequation>
806 <inlineequation><mml:math>
807 <!-- eqn: A sub c: -->
808 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
809 <mml:mi mathvariant=
"italic">c
</mml:mi>
811 </mml:math></inlineequation>
816 <constant>GL_ONE_MINUS_CONSTANT_COLOR
</constant>
819 <inlineequation><mml:math>
820 <!-- eqn: ( 1, 1, 1 ) - ( R sub c, G sub c, B sub c ): -->
822 <mml:mfenced open=
"(" close=
")">
828 <mml:mfenced open=
"(" close=
")">
829 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
830 <mml:mi mathvariant=
"italic">c
</mml:mi>
832 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
833 <mml:mi mathvariant=
"italic">c
</mml:mi>
835 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
836 <mml:mi mathvariant=
"italic">c
</mml:mi>
840 </mml:math></inlineequation>
843 <inlineequation><mml:math>
844 <!-- eqn: 1 - A sub c: -->
848 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
849 <mml:mi mathvariant=
"italic">c
</mml:mi>
852 </mml:math></inlineequation>
857 <constant>GL_CONSTANT_ALPHA
</constant>
860 <inlineequation><mml:math>
861 <!-- eqn: ( A sub c, A sub c, A sub c ): -->
862 <mml:mfenced open=
"(" close=
")">
863 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
864 <mml:mi mathvariant=
"italic">c
</mml:mi>
866 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
867 <mml:mi mathvariant=
"italic">c
</mml:mi>
869 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
870 <mml:mi mathvariant=
"italic">c
</mml:mi>
873 </mml:math></inlineequation>
876 <inlineequation><mml:math>
877 <!-- eqn: A sub c: -->
878 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
879 <mml:mi mathvariant=
"italic">c
</mml:mi>
881 </mml:math></inlineequation>
886 <constant>GL_ONE_MINUS_CONSTANT_ALPHA
</constant>
889 <inlineequation><mml:math>
890 <!-- eqn: ( 1, 1, 1 ) - ( A sub c, A sub c, A sub c ): -->
892 <mml:mfenced open=
"(" close=
")">
898 <mml:mfenced open=
"(" close=
")">
899 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
900 <mml:mi mathvariant=
"italic">c
</mml:mi>
902 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
903 <mml:mi mathvariant=
"italic">c
</mml:mi>
905 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
906 <mml:mi mathvariant=
"italic">c
</mml:mi>
910 </mml:math></inlineequation>
913 <inlineequation><mml:math>
914 <!-- eqn: 1 - A sub c: -->
918 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
919 <mml:mi mathvariant=
"italic">c
</mml:mi>
922 </mml:math></inlineequation>
927 <constant>GL_SRC_ALPHA_SATURATE
</constant>
930 <inlineequation><mml:math>
931 <!-- eqn: ( i, i, i ): -->
932 <mml:mfenced open=
"(" close=
")">
933 <mml:mi mathvariant=
"italic">i
</mml:mi>
934 <mml:mi mathvariant=
"italic">i
</mml:mi>
935 <mml:mi mathvariant=
"italic">i
</mml:mi>
937 </mml:math></inlineequation>
940 <inlineequation><mml:math>
943 </mml:math></inlineequation>
948 <constant>GL_SRC1_COLOR
</constant>
951 <inlineequation><mml:math>
952 <!-- eqn: ( R sub s1 / k sub R , G sub s1 / k sub G , B sub s1 / k sub B ): -->
953 <mml:mfenced open=
"(" close=
")">
955 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
956 <mml:mi mathvariant=
"italic">s1
</mml:mi>
958 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
959 <mml:mi mathvariant=
"italic">R
</mml:mi>
963 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
964 <mml:mi mathvariant=
"italic">s1
</mml:mi>
966 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
967 <mml:mi mathvariant=
"italic">G
</mml:mi>
971 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
972 <mml:mi mathvariant=
"italic">s1
</mml:mi>
974 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
975 <mml:mi mathvariant=
"italic">B
</mml:mi>
979 </mml:math></inlineequation>
982 <inlineequation><mml:math>
983 <!-- eqn: A sub s0 / k sub A: -->
985 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
986 <mml:mi mathvariant=
"italic">s1
</mml:mi>
988 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
989 <mml:mi mathvariant=
"italic">A
</mml:mi>
992 </mml:math></inlineequation>
997 <constant>GL_ONE_MINUS_SRC_COLOR
</constant>
1000 <inlineequation><mml:math>
1001 <!-- eqn: ( 1, 1, 1, 1 ) - ( R sub s1 / k sub R , G sub s1 / k sub G , B sub s1 / k sub B ): -->
1003 <mml:mfenced open=
"(" close=
")">
1010 <mml:mfenced open=
"(" close=
")">
1012 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1013 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1015 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1016 <mml:mi mathvariant=
"italic">R
</mml:mi>
1020 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1021 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1023 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1024 <mml:mi mathvariant=
"italic">G
</mml:mi>
1028 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1029 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1031 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1032 <mml:mi mathvariant=
"italic">B
</mml:mi>
1037 </mml:math></inlineequation>
1039 <entry align=
"left">
1040 <inlineequation><mml:math>
1041 <!-- eqn: 1 - A sub s0 / k sub A: -->
1046 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1047 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1049 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1050 <mml:mi mathvariant=
"italic">A
</mml:mi>
1054 </mml:math></inlineequation>
1058 <entry align=
"left">
1059 <constant>GL_SRC1_ALPHA
</constant>
1061 <entry align=
"left">
1062 <inlineequation><mml:math>
1063 <!-- eqn: ( A sub s1 / k sub A , A sub s1 / k sub A , A sub s1 / k sub A ): -->
1064 <mml:mfenced open=
"(" close=
")">
1066 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1067 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1069 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1070 <mml:mi mathvariant=
"italic">A
</mml:mi>
1074 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1075 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1077 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1078 <mml:mi mathvariant=
"italic">A
</mml:mi>
1082 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1083 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1085 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1086 <mml:mi mathvariant=
"italic">A
</mml:mi>
1090 </mml:math></inlineequation>
1092 <entry align=
"left">
1093 <inlineequation><mml:math>
1094 <!-- eqn: A sub s1 / k sub A: -->
1096 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1097 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1099 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1100 <mml:mi mathvariant=
"italic">A
</mml:mi>
1103 </mml:math></inlineequation>
1107 <entry align=
"left">
1108 <constant>GL_ONE_MINUS_SRC_ALPHA
</constant>
1110 <entry align=
"left">
1111 <inlineequation><mml:math>
1112 <!-- eqn: ( 1, 1, 1 ) - ( A sub s1 / k sub A , A sub s1 / k sub A , A sub s1 / k sub A ): -->
1114 <mml:mfenced open=
"(" close=
")">
1120 <mml:mfenced open=
"(" close=
")">
1122 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1123 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1125 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1126 <mml:mi mathvariant=
"italic">A
</mml:mi>
1130 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1131 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1133 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1134 <mml:mi mathvariant=
"italic">A
</mml:mi>
1138 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1139 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1141 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1142 <mml:mi mathvariant=
"italic">A
</mml:mi>
1147 </mml:math></inlineequation>
1149 <entry align=
"left">
1150 <inlineequation><mml:math>
1151 <!-- eqn: 1 - A sub s1 / k sub A: -->
1156 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1157 <mml:mi mathvariant=
"italic">s1
</mml:mi>
1159 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1160 <mml:mi mathvariant=
"italic">A
</mml:mi>
1164 </mml:math></inlineequation>
1175 <inlineequation><mml:math>
1176 <!-- eqn: i = min (A sub s , 1 - {A sub d}): -->
1178 <mml:mi mathvariant=
"italic">i
</mml:mi>
1181 <mml:mi mathvariant=
"italic">min
</mml:mi>
1182 <mml:mo>⁡</mml:mo>
1183 <mml:mfenced open=
"(" close=
")">
1184 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1185 <mml:mi mathvariant=
"italic">s
</mml:mi>
1190 <mml:mfenced open=
"" close=
"">
1191 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1192 <mml:mi mathvariant=
"italic">d
</mml:mi>
1199 </mml:math></inlineequation>
1203 To determine the blended RGBA values of a pixel,
1204 the system uses the following equations:
1208 <inlineequation><mml:math>
1209 <!-- eqn: R sub d = min ( k sub R, R sub s s sub R + R sub d d sub R ): -->
1211 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1212 <mml:mi mathvariant=
"italic">d
</mml:mi>
1216 <mml:mi mathvariant=
"italic">min
</mml:mi>
1217 <mml:mo>⁡</mml:mo>
1218 <mml:mfenced open=
"(" close=
")">
1219 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1220 <mml:mi mathvariant=
"italic">R
</mml:mi>
1223 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1224 <mml:mi mathvariant=
"italic">s
</mml:mi>
1226 <mml:mo>⁢</mml:mo>
1227 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
1228 <mml:mi mathvariant=
"italic">R
</mml:mi>
1231 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1232 <mml:mi mathvariant=
"italic">d
</mml:mi>
1234 <mml:mo>⁢</mml:mo>
1235 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
1236 <mml:mi mathvariant=
"italic">R
</mml:mi>
1242 </mml:math></inlineequation>
1243 <inlineequation><mml:math>
1244 <!-- eqn: G sub d = min ( k sub G, G sub s s sub G + G sub d d sub G ): -->
1246 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1247 <mml:mi mathvariant=
"italic">d
</mml:mi>
1251 <mml:mi mathvariant=
"italic">min
</mml:mi>
1252 <mml:mo>⁡</mml:mo>
1253 <mml:mfenced open=
"(" close=
")">
1254 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1255 <mml:mi mathvariant=
"italic">G
</mml:mi>
1258 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1259 <mml:mi mathvariant=
"italic">s
</mml:mi>
1261 <mml:mo>⁢</mml:mo>
1262 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
1263 <mml:mi mathvariant=
"italic">G
</mml:mi>
1266 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1267 <mml:mi mathvariant=
"italic">d
</mml:mi>
1269 <mml:mo>⁢</mml:mo>
1270 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
1271 <mml:mi mathvariant=
"italic">G
</mml:mi>
1277 </mml:math></inlineequation>
1278 <inlineequation><mml:math>
1279 <!-- eqn: B sub d = min ( k sub B, B sub s s sub B + B sub d d sub B ): -->
1281 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1282 <mml:mi mathvariant=
"italic">d
</mml:mi>
1286 <mml:mi mathvariant=
"italic">min
</mml:mi>
1287 <mml:mo>⁡</mml:mo>
1288 <mml:mfenced open=
"(" close=
")">
1289 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1290 <mml:mi mathvariant=
"italic">B
</mml:mi>
1293 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1294 <mml:mi mathvariant=
"italic">s
</mml:mi>
1296 <mml:mo>⁢</mml:mo>
1297 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
1298 <mml:mi mathvariant=
"italic">B
</mml:mi>
1301 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1302 <mml:mi mathvariant=
"italic">d
</mml:mi>
1304 <mml:mo>⁢</mml:mo>
1305 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
1306 <mml:mi mathvariant=
"italic">B
</mml:mi>
1312 </mml:math></inlineequation>
1313 <inlineequation><mml:math>
1314 <!-- eqn: A sub d = min ( k sub A, A sub s s sub A + A sub d d sub A ): -->
1316 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1317 <mml:mi mathvariant=
"italic">d
</mml:mi>
1321 <mml:mi mathvariant=
"italic">min
</mml:mi>
1322 <mml:mo>⁡</mml:mo>
1323 <mml:mfenced open=
"(" close=
")">
1324 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1325 <mml:mi mathvariant=
"italic">A
</mml:mi>
1328 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1329 <mml:mi mathvariant=
"italic">s
</mml:mi>
1331 <mml:mo>⁢</mml:mo>
1332 <mml:msub><mml:mi mathvariant=
"italic">s
</mml:mi>
1333 <mml:mi mathvariant=
"italic">A
</mml:mi>
1336 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1337 <mml:mi mathvariant=
"italic">d
</mml:mi>
1339 <mml:mo>⁢</mml:mo>
1340 <mml:msub><mml:mi mathvariant=
"italic">d
</mml:mi>
1341 <mml:mi mathvariant=
"italic">A
</mml:mi>
1347 </mml:math></inlineequation>
1351 Despite the apparent precision of the above equations, blending arithmetic
1352 is not exactly specified, because blending operates with imprecise integer
1353 color values. However, a blend factor that should be equal to
1 is
1354 guaranteed not to modify its multiplicand, and a blend factor equal to
0
1355 reduces its multiplicand to
0. For example, when
<parameter>srcRGB
</parameter> is
1356 <constant>GL_SRC_ALPHA
</constant>,
<parameter>dstRGB
</parameter> is
<constant>GL_ONE_MINUS_SRC_ALPHA
</constant>, and
1357 <inlineequation><mml:math>
1358 <!-- eqn: A sub s: -->
1359 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1360 <mml:mi mathvariant=
"italic">s
</mml:mi>
1362 </mml:math></inlineequation>
1365 <inlineequation><mml:math>
1366 <!-- eqn: k sub A: -->
1367 <mml:msub><mml:mi mathvariant=
"italic">k
</mml:mi>
1368 <mml:mi mathvariant=
"italic">A
</mml:mi>
1370 </mml:math></inlineequation>,
1371 the equations reduce to simple replacement:
1375 <inlineequation><mml:math>
1376 <!-- eqn: R sub d = R sub s: -->
1378 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1379 <mml:mi mathvariant=
"italic">d
</mml:mi>
1382 <mml:msub><mml:mi mathvariant=
"italic">R
</mml:mi>
1383 <mml:mi mathvariant=
"italic">s
</mml:mi>
1386 </mml:math></inlineequation>
1387 <inlineequation><mml:math>
1388 <!-- eqn: G sub d = G sub s: -->
1390 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1391 <mml:mi mathvariant=
"italic">d
</mml:mi>
1394 <mml:msub><mml:mi mathvariant=
"italic">G
</mml:mi>
1395 <mml:mi mathvariant=
"italic">s
</mml:mi>
1398 </mml:math></inlineequation>
1399 <inlineequation><mml:math>
1400 <!-- eqn: B sub d = B sub s: -->
1402 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1403 <mml:mi mathvariant=
"italic">d
</mml:mi>
1406 <mml:msub><mml:mi mathvariant=
"italic">B
</mml:mi>
1407 <mml:mi mathvariant=
"italic">s
</mml:mi>
1410 </mml:math></inlineequation>
1411 <inlineequation><mml:math>
1412 <!-- eqn: A sub d = A sub s: -->
1414 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1415 <mml:mi mathvariant=
"italic">d
</mml:mi>
1418 <mml:msub><mml:mi mathvariant=
"italic">A
</mml:mi>
1419 <mml:mi mathvariant=
"italic">s
</mml:mi>
1422 </mml:math></inlineequation>
1428 <refsect1 id=
"notes"><title>Notes
</title>
1430 Incoming (source) alpha is correctly thought of as a material opacity,
1432 (
<inlineequation><mml:math>
1433 <!-- eqn: K sub A: -->
1434 <mml:msub><mml:mi mathvariant=
"italic">K
</mml:mi>
1435 <mml:mi mathvariant=
"italic">A
</mml:mi>
1437 </mml:math></inlineequation>),
1438 representing complete opacity,
1439 to
0.0 (
0), representing complete
1443 When more than one color buffer is enabled for drawing,
1444 the GL performs blending separately for each enabled buffer,
1445 using the contents of that buffer for destination color.
1446 (See
<citerefentry><refentrytitle>glDrawBuffer
</refentrytitle></citerefentry>.)
1449 When dual source blending is enabled (i.e., one of the blend factors requiring
1450 the second color input is used), the maximum number of enabled draw buffers
1451 is given by
<constant>GL_MAX_DUAL_SOURCE_DRAW_BUFFERS
</constant>, which may
1452 be lower than
<constant>GL_MAX_DRAW_BUFFERS
</constant>.
1455 <refsect1 id=
"errors"><title>Errors
</title>
1457 <constant>GL_INVALID_ENUM
</constant> is generated if either
<parameter>srcRGB
</parameter> or
<parameter>dstRGB
</parameter> is not an
1461 <refsect1 id=
"associatedgets"><title>Associated Gets
</title>
1463 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND_SRC_RGB
</constant>
1466 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND_SRC_ALPHA
</constant>
1469 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND_DST_RGB
</constant>
1472 <citerefentry><refentrytitle>glGet
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND_DST_ALPHA
</constant>
1475 <citerefentry><refentrytitle>glIsEnabled
</refentrytitle></citerefentry> with argument
<constant>GL_BLEND
</constant>
1480 <refsect1 id=
"seealso"><title>See Also
</title>
1482 <citerefentry><refentrytitle>glBlendColor
</refentrytitle></citerefentry>,
1483 <citerefentry><refentrytitle>glBlendFunc
</refentrytitle></citerefentry>,
1484 <citerefentry><refentrytitle>glBlendEquation
</refentrytitle></citerefentry>,
1485 <citerefentry><refentrytitle>glClear
</refentrytitle></citerefentry>,
1486 <citerefentry><refentrytitle>glDrawBuffer
</refentrytitle></citerefentry>,
1487 <citerefentry><refentrytitle>glEnable
</refentrytitle></citerefentry>,
1488 <citerefentry><refentrytitle>glLogicOp
</refentrytitle></citerefentry>,
1489 <citerefentry><refentrytitle>glStencilFunc
</refentrytitle></citerefentry>
1492 <refsect1 id=
"Copyright"><title>Copyright
</title>
1494 Copyright
<trademark class=
"copyright"></trademark> 1991-
2006
1495 Silicon Graphics, Inc. This document is licensed under the SGI
1496 Free Software B License. For details, see
1497 <ulink url=
"http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/
</ulink>.