[][src]Struct gfx_hal::pso::SpecializationConstant

pub struct SpecializationConstant {
    pub id: u32,
    pub range: Range<u16>,
}

Specialization constant for pipelines.

Specialization constants allow for easy configuration of multiple similar pipelines. For example, there may be a boolean exposed to the shader that switches the specularity on/off provided via a specialization constant. That would produce separate PSO's for the "on" and "off" states but they share most of the internal stuff and are fast to produce. More importantly, they are fast to execute, since the driver can optimize out the branch on that other PSO creation.

Fields

id: u32

Constant identifier in shader source.

range: Range<u16>

Value to override specialization constant.

Trait Implementations

impl Clone for SpecializationConstant[src]

impl PartialEq<SpecializationConstant> for SpecializationConstant[src]

impl Debug for SpecializationConstant[src]

impl Hash for SpecializationConstant[src]

impl StructuralPartialEq for SpecializationConstant[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]