pub enum DrawLayer {
Opaque,
Cutout,
Decal,
Sky,
Transparent,
}Expand description
What a surface is, for the draw order: it drives depth bias, shadows and a target’s material class, not the
sequence (that is DrawOrder::queue).
Variants§
Opaque
Cutout
Alpha tested.
Decal
Drawn over the surface beneath it, coplanar or nearly so (a game’s decal bucket): a consumer biases its depth and does not cast its shadow.
Sky
The sky: a dome, the moon’s or the sun’s disc, far backdrops and cloud layers. It is drawn after the opaque
surfaces are lit and before the blended surfaces, depth tested against the scene so that it shows only where
nothing nearer was drawn, and it casts no shadow. The sky’s own programs give its colour: a consumer adds no
fog or lighting of its own to it. Whether the source’s own fog composite (a volumetric fog laid over the lit
picture) comes before the sky or over it is the source’s: its core.render_graph states it by the order of its
passes (Sekiro composites it before the sky, Elden Ring over it, in a recorded frame of each).
Where it stands is often relative to the view (crate::SkyAnchor).
Transparent
Blended.
Trait Implementations§
impl Copy for DrawLayer
impl Eq for DrawLayer
Source§impl Ord for DrawLayer
impl Ord for DrawLayer
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialOrd for DrawLayer
impl PartialOrd for DrawLayer
impl StructuralPartialEq for DrawLayer
Auto Trait Implementations§
impl Forget for DrawLayer
impl Freeze for DrawLayer
impl RefUnwindSafe for DrawLayer
impl Send for DrawLayer
impl Sync for DrawLayer
impl Unpin for DrawLayer
impl UnsafeUnpin for DrawLayer
impl UnwindSafe for DrawLayer
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<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> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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
key and return true if they are equal.