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 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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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
.§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
.§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.§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.