#[non_exhaustive]
pub struct SamplerInfo {
Show 17 fields pub flags: SamplerCreateFlags, pub mag_filter: Filter, pub min_filter: Filter, pub mipmap_mode: SamplerMipmapMode, pub address_mode_u: SamplerAddressMode, pub address_mode_v: SamplerAddressMode, pub address_mode_w: SamplerAddressMode, pub mip_lod_bias: OrderedFloat<f32>, pub anisotropy_enable: bool, pub max_anisotropy: OrderedFloat<f32>, pub compare_enable: bool, pub compare_op: CompareOp, pub min_lod: OrderedFloat<f32>, pub max_lod: OrderedFloat<f32>, pub border_color: BorderColor, pub unnormalized_coordinates: bool, pub reduction_mode: SamplerReductionMode,
}
Expand description

Information used to create a vk::Sampler instance.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§flags: SamplerCreateFlags

Bitmask specifying additional parameters of a sampler.

§mag_filter: Filter

Specify the magnification filter to apply to texture lookups.

The default value is vk::Filter::NEAREST

§min_filter: Filter

Specify the minification filter to apply to texture lookups.

The default value is vk::Filter::NEAREST

§mipmap_mode: SamplerMipmapMode

A value specifying the mipmap filter to apply to lookups.

The default value is vk::SamplerMipmapMode::NEAREST

§address_mode_u: SamplerAddressMode

A value specifying the addressing mode for U coordinates outside [0, 1).

The default value is vk::SamplerAddressMode::REPEAT

§address_mode_v: SamplerAddressMode

A value specifying the addressing mode for V coordinates outside [0, 1).

The default value is vk::SamplerAddressMode::REPEAT

§address_mode_w: SamplerAddressMode

A value specifying the addressing mode for W coordinates outside [0, 1).

The default value is vk::SamplerAddressMode::REPEAT

§mip_lod_bias: OrderedFloat<f32>

The bias to be added to mipmap LOD calculation and bias provided by image sampling functions in SPIR-V, as described in the LOD Operation section.

§anisotropy_enable: bool

Enables anisotropic filtering, as described in the Texel Anisotropic Filtering section

§max_anisotropy: OrderedFloat<f32>

The anisotropy value clamp used by the sampler when anisotropy_enable is true.

If anisotropy_enable is false, max_anisotropy is ignored.

§compare_enable: bool

Enables comparison against a reference value during lookups.

§compare_op: CompareOp

Specifies the comparison operator to apply to fetched data before filtering as described in the Depth Compare Operation section.

§min_lod: OrderedFloat<f32>§max_lod: OrderedFloat<f32>

Used to clamp the maximum of the computed LOD value.

To avoid clamping the maximum value, set maxLod to the constant vk::LOD_CLAMP_NONE.

§border_color: BorderColor

Secifies the predefined border color to use.

The default value is vk::BorderColor::FLOAT_TRANSPARENT_BLACK

§unnormalized_coordinates: bool

Controls whether to use unnormalized or normalized texel coordinates to address texels of the image.

When set to true, the range of the image coordinates used to lookup the texel is in the range of zero to the image size in each dimension.

When set to false the range of image coordinates is zero to one.

See requirements.

§reduction_mode: SamplerReductionMode

Specifies sampler reduction mode.

Setting magnification filter (mag_filter) to vk::Filter::NEAREST disables sampler reduction mode.

The default value is vk::SamplerReductionMode::WEIGHTED_AVERAGE

See requirements.

Implementations§

source§

impl SamplerInfo

source

pub const LINEAR: SamplerInfoBuilder = _

Default sampler information with mag_filter, min_filter and mipmap_mode set to linear.

source

pub const NEAREST: SamplerInfoBuilder = _

Default sampler information with mag_filter, min_filter and mipmap_mode set to nearest.

source

pub fn to_builder(self) -> SamplerInfoBuilder

Converts a SamplerInfo into a SamplerInfoBuilder.

Trait Implementations§

source§

impl Clone for SamplerInfo

source§

fn clone(&self) -> SamplerInfo

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for SamplerInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for SamplerInfo

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl From<SamplerInfoBuilder> for SamplerInfo

source§

fn from(info: SamplerInfoBuilder) -> Self

Converts to this type from the input type.
source§

impl Hash for SamplerInfo

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for SamplerInfo

source§

fn eq(&self, other: &SamplerInfo) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for SamplerInfo

source§

impl Eq for SamplerInfo

source§

impl StructuralPartialEq for SamplerInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more