pub struct SamplerFilterMinmaxProperties {
pub image_component_mapping: bool,
pub single_component_formats: bool,
}
Expand description
Properties of the physical device for min/max sampler filtering.
Fields§
§image_component_mapping: bool
When false
the component mapping of the image view used with min/max filtering must have
been created with the r component set to the identity swizzle. Only the r component of the
sampled image value is defined and the other component values are undefined.
When true
this restriction does not apply and image component mapping works as normal.
single_component_formats: bool
When true
the following formats support the
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT
feature with VK_IMAGE_TILING_OPTIMAL
,
if they support VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
:
vk::Format::R8_UNORM
vk::Format::R8_SNORM
vk::Format::R16_UNORM
vk::Format::R16_SNORM
vk::Format::R16_SFLOAT
vk::Format::R32_SFLOAT
vk::Format::D16_UNORM
vk::Format::X8_D24_UNORM_PACK32
vk::Format::D32_SFLOAT
vk::Format::D16_UNORM_S8_UINT
vk::Format::D24_UNORM_S8_UINT
vk::Format::D32_SFLOAT_S8_UINT
If the format is a depth/stencil format, this bit only specifies that the depth aspect (not the stencil aspect) of an image of this format supports min/max filtering, and that min/max filtering of the depth aspect is supported when depth compare is disabled in the sampler.
Trait Implementations§
source§impl From<PhysicalDeviceSamplerFilterMinmaxProperties> for SamplerFilterMinmaxProperties
impl From<PhysicalDeviceSamplerFilterMinmaxProperties> for SamplerFilterMinmaxProperties
source§fn from(value: PhysicalDeviceSamplerFilterMinmaxProperties) -> Self
fn from(value: PhysicalDeviceSamplerFilterMinmaxProperties) -> Self
Auto Trait Implementations§
impl Freeze for SamplerFilterMinmaxProperties
impl RefUnwindSafe for SamplerFilterMinmaxProperties
impl Send for SamplerFilterMinmaxProperties
impl Sync for SamplerFilterMinmaxProperties
impl Unpin for SamplerFilterMinmaxProperties
impl UnwindSafe for SamplerFilterMinmaxProperties
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
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.