Enum glium::draw_parameters::BlendingFunction [] [src]

pub enum BlendingFunction {
    AlwaysReplace,
    Min,
    Max,
    Addition {
        source: LinearBlendingFactor,
        destination: LinearBlendingFactor,
    },
    Subtraction {
        source: LinearBlendingFactor,
        destination: LinearBlendingFactor,
    },
    ReverseSubtraction {
        source: LinearBlendingFactor,
        destination: LinearBlendingFactor,
    },
}

Function that the GPU will use for blending.

Variants

AlwaysReplace

Simply overwrite the destination pixel with the source pixel.

The alpha channels are simply ignored. This is the default mode.

For example writing (0.5, 0.9, 0.4, 0.2) over (0.9, 0.1, 0.4, 0.3) will result in (0.5, 0.9, 0.4, 0.2).

Min

For each individual component (red, green, blue, and alpha), the minimum value is chosen between the source and the destination.

For example writing (0.5, 0.9, 0.4, 0.2) over (0.9, 0.1, 0.4, 0.3) will result in (0.5, 0.1, 0.4, 0.2).

Max

For each individual component (red, green, blue, and alpha), the maximum value is chosen between the source and the destination.

For example writing (0.5, 0.9, 0.4, 0.2) over (0.9, 0.1, 0.4, 0.3) will result in (0.9, 0.9, 0.4, 0.3).

Addition

For each individual component (red, green, blue, and alpha), a weighted addition between the source and the destination.

The result is equal to source_component * source_factor + dest_component * dest_factor, where source_factor and dest_factor are the values of source and destination of this enum.

Fields

source

The factor to apply to the source pixel.

destination

The factor to apply to the destination pixel.

Subtraction

For each individual component (red, green, blue, and alpha), a weighted substraction of the source by the destination.

The result is equal to source_component * source_factor - dest_component * dest_factor, where source_factor and dest_factor are the values of source and destination of this enum.

Fields

source

The factor to apply to the source pixel.

destination

The factor to apply to the destination pixel.

ReverseSubtraction

For each individual component (red, green, blue, and alpha), a weighted substraction of the destination by the source.

The result is equal to -source_component * source_factor + dest_component * dest_factor, where source_factor and dest_factor are the values of source and destination of this enum.

Fields

source

The factor to apply to the source pixel.

destination

The factor to apply to the destination pixel.

Trait Implementations

Derived Implementations

impl Eq for BlendingFunction

impl PartialEq for BlendingFunction

fn eq(&self, __arg_0: &BlendingFunction) -> bool

fn ne(&self, __arg_0: &BlendingFunction) -> bool

impl Debug for BlendingFunction

fn fmt(&self, __arg_0: &mut Formatter) -> Result

impl Copy for BlendingFunction

impl Clone for BlendingFunction

fn clone(&self) -> BlendingFunction

fn clone_from(&mut self, source: &Self)