pub enum SurfaceFormat {
Bgra8Srgb,
Rgba16FloatLinearP3,
}Expand description
Pixel storage and color interpretation of every slot in a surface.
Variants§
Bgra8Srgb
BGRA8, straight alpha, sRGB-encoded channels. Works in every window.
Rgba16FloatLinearP3
RGBA16 float, associated alpha, linear Display P3/D65. Shown in wide
gamut in a window that negotiated WindowColorMode::WideGamutSdr
(macOS and Windows), and as a mapped sRGB preview in any other window
and on Linux (#146). Slots also allow storage (compute) writes.
Implementations§
Source§impl SurfaceFormat
impl SurfaceFormat
Sourcepub fn bytes_per_pixel(self) -> u32
pub fn bytes_per_pixel(self) -> u32
Bytes per pixel.
Sourcepub fn color_mode(self, wide: bool) -> ImageColorMode
pub fn color_mode(self, wide: bool) -> ImageColorMode
The color interpretation the host applies when compositing into a
window whose effective color mode is (wide) or is not wide-gamut SDR.
Sourcepub fn supports_storage(self) -> bool
pub fn supports_storage(self) -> bool
Whether engines may bind slots as storage textures (compute writes).
Trait Implementations§
Source§impl Clone for SurfaceFormat
impl Clone for SurfaceFormat
impl Copy for SurfaceFormat
Source§impl Debug for SurfaceFormat
impl Debug for SurfaceFormat
impl Eq for SurfaceFormat
Source§impl PartialEq for SurfaceFormat
impl PartialEq for SurfaceFormat
impl StructuralPartialEq for SurfaceFormat
Auto Trait Implementations§
impl Forget for SurfaceFormat
impl Freeze for SurfaceFormat
impl Move for SurfaceFormat
impl RefUnwindSafe for SurfaceFormat
impl Send for SurfaceFormat
impl Sync for SurfaceFormat
impl Unpin for SurfaceFormat
impl UnsafeUnpin for SurfaceFormat
impl UnwindSafe for SurfaceFormat
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more