Struct macroquad::prelude::PipelineParams
source · pub struct PipelineParams {
pub cull_face: CullFace,
pub front_face_order: FrontFaceOrder,
pub depth_test: Comparison,
pub depth_write: bool,
pub depth_write_offset: Option<(f32, f32)>,
pub color_blend: Option<BlendState>,
pub alpha_blend: Option<BlendState>,
pub stencil_test: Option<StencilState>,
pub color_write: (bool, bool, bool, bool),
pub primitive_type: PrimitiveType,
}
Fields§
§cull_face: CullFace
§front_face_order: FrontFaceOrder
§depth_test: Comparison
§depth_write: bool
§depth_write_offset: Option<(f32, f32)>
§color_blend: Option<BlendState>
Color (RGB) blend function. If None - blending will be disabled for this pipeline. Usual use case to get alpha-blending:
PipelineParams {
color_blend: Some(BlendState::new(
Equation::Add,
BlendFactor::Value(BlendValue::SourceAlpha),
BlendFactor::OneMinusValue(BlendValue::SourceAlpha))
),
..Default::default()
};
alpha_blend: Option<BlendState>
Alpha blend function. If None - alpha will be blended with same equation than RGB colors. One of possible separate alpha channel blend settings is to avoid blending with WebGl background. On webgl canvas’s resulting alpha channel will be used to blend the whole canvas background. To avoid modifying only alpha channel, but keep usual transparency:
PipelineParams {
color_blend: Some(BlendState::new(
Equation::Add,
BlendFactor::Value(BlendValue::SourceAlpha),
BlendFactor::OneMinusValue(BlendValue::SourceAlpha))
),
alpha_blend: Some(BlendState::new(
Equation::Add,
BlendFactor::Zero,
BlendFactor::One)
),
..Default::default()
};
The same results may be achieved with ColorMask(true, true, true, false)
stencil_test: Option<StencilState>
§color_write: (bool, bool, bool, bool)
§primitive_type: PrimitiveType
Trait Implementations§
source§impl Clone for PipelineParams
impl Clone for PipelineParams
source§fn clone(&self) -> PipelineParams
fn clone(&self) -> PipelineParams
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for PipelineParams
impl Debug for PipelineParams
source§impl Default for PipelineParams
impl Default for PipelineParams
source§fn default() -> PipelineParams
fn default() -> PipelineParams
Returns the “default value” for a type. Read more
source§impl PartialEq for PipelineParams
impl PartialEq for PipelineParams
source§fn eq(&self, other: &PipelineParams) -> bool
fn eq(&self, other: &PipelineParams) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for PipelineParams
impl StructuralPartialEq for PipelineParams
Auto Trait Implementations§
impl RefUnwindSafe for PipelineParams
impl Send for PipelineParams
impl Sync for PipelineParams
impl Unpin for PipelineParams
impl UnwindSafe for PipelineParams
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more