ColorBlendAttrib¶
-
class
ColorBlendAttrib
¶ Bases:
RenderAttrib
This specifies how colors are blended into the frame buffer, for special effects. This overrides transparency if transparency is also specified.
Inheritance diagram
-
enum
Mode
¶ -
enumerator
M_none
= 0¶ Blending is disabled
-
enumerator
M_add
= 1¶ incoming color * A + fbuffer color * B
-
enumerator
M_subtract
= 2¶ incoming color * A - fbuffer color * B
-
enumerator
M_inv_subtract
= 3¶ fbuffer color * B - incoming color * A
-
enumerator
M_min
= 4¶ min(incoming color, fbuffer color)
-
enumerator
M_max
= 5¶ max(incoming color, fbuffer color)
-
enumerator
-
enum
Operand
¶ -
enumerator
O_zero
= 0¶
-
enumerator
O_one
= 1¶
-
enumerator
O_incoming_color
= 2¶
-
enumerator
O_one_minus_incoming_color
= 3¶
-
enumerator
O_fbuffer_color
= 4¶
-
enumerator
O_one_minus_fbuffer_color
= 5¶
-
enumerator
O_incoming_alpha
= 6¶
-
enumerator
O_one_minus_incoming_alpha
= 7¶
-
enumerator
O_fbuffer_alpha
= 8¶
-
enumerator
O_one_minus_fbuffer_alpha
= 9¶
-
enumerator
O_constant_color
= 10¶
-
enumerator
O_one_minus_constant_color
= 11¶
-
enumerator
O_constant_alpha
= 12¶
-
enumerator
O_one_minus_constant_alpha
= 13¶
-
enumerator
O_incoming_color_saturate
= 14¶ valid only for operand a
-
enumerator
O_incoming1_color
= 15¶ The following are used for dual-source blending, where the fragment shader outputs a second color that will be used for blending.
-
enumerator
O_one_minus_incoming1_color
= 16¶
-
enumerator
O_incoming1_alpha
= 17¶
-
enumerator
O_one_minus_incoming1_alpha
= 18¶
-
enumerator
O_color_scale
= 19¶ These modes are being considered for deprecation.
-
enumerator
O_one_minus_color_scale
= 20¶
-
enumerator
O_alpha_scale
= 21¶
-
enumerator
O_one_minus_alpha_scale
= 22¶
-
enumerator
-
static int
get_class_slot
(void)¶
-
static TypeHandle
get_class_type
(void)¶
-
bool
involves_color_scale
(void) const¶
-
bool
involves_color_scale
(ColorBlendAttrib::Operand operand)¶ Returns true if the this attrib uses the color scale attrib, false otherwise.
Returns true if the indicated operand uses the color scale attrib, false otherwise.
-
bool
involves_constant_color
(void) const¶
-
bool
involves_constant_color
(ColorBlendAttrib::Operand operand)¶ Returns true if the this attrib uses the constant color, false otherwise.
Returns true if the indicated operand uses the constant color, false otherwise.
-
static ConstPointerTo<RenderAttrib>
make
(ColorBlendAttrib::Mode mode)¶
-
static ConstPointerTo<RenderAttrib>
make
(ColorBlendAttrib::Mode mode, Operand a, Operand b, LColor const &color = LColor::zero())¶
-
static ConstPointerTo<RenderAttrib>
make
(ColorBlendAttrib::Mode rgb_mode, Operand rgb_a, Operand rgb_b, Mode alpha_mode, Operand alpha_a, Operand alpha_b, LColor const &color = LColor::zero())¶ Constructs a new
ColorBlendAttrib
object.Deprecated: Use the three- or four-parameter constructor instead.
Constructs a new
ColorBlendAttrib
object that enables special-effect blending. This supercedes transparency. The given mode and operands are used for both the RGB and alpha channels.Constructs a new
ColorBlendAttrib
object that enables special-effect blending. This supercedes transparency. This form is used to specify separate blending parameters for the RGB and alpha channels.
-
static ConstPointerTo<RenderAttrib>
make_default
(void)¶ Returns a
RenderAttrib
that corresponds to whatever the standard default properties for render attributes of this type ought to be.
-
static ConstPointerTo<RenderAttrib>
make_off
(void)¶ Constructs a new
ColorBlendAttrib
object that disables special-effect blending, allowing normal transparency to be used instead.
-
enum