pub enum RtDynamicMode {
Off,
Auto,
Rebuild,
Tlas,
}Expand description
How the scene acceleration structure is kept current when props move.
Selected once at init from the launch’s --rt-dynamic request; Auto is
the shipping behaviour and what an unset request resolves to.
Variants§
Off
Build once, never update. Forces a static BVH even if props move: the
pre-dynamic behaviour, kept as a fast path / diagnostic (off).
Auto
Default. Rebuild the TLAS + table (fresh allocations, static BLAS) only on the frames a participating transform actually changed. Static scenes never rebuild, so they pay only a cheap per-frame matrix compare.
Rebuild
Force a full BVH rebuild every frame, dirty or not. Diagnostic (rebuild);
the most expensive path.
Tlas
Force a fresh TLAS + table rebuild every frame, dirty or not. Diagnostic
(tlas); the same GPU work Auto does, minus the dirty gate.
Implementations§
Source§impl RtDynamicMode
impl RtDynamicMode
Sourcepub fn is_dynamic(self) -> bool
pub fn is_dynamic(self) -> bool
Whether this mode updates the BVH after the initial build at all.
Trait Implementations§
Source§impl Clone for RtDynamicMode
impl Clone for RtDynamicMode
Source§fn clone(&self) -> RtDynamicMode
fn clone(&self) -> RtDynamicMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for RtDynamicMode
Source§impl Debug for RtDynamicMode
impl Debug for RtDynamicMode
Source§impl Default for RtDynamicMode
impl Default for RtDynamicMode
Source§fn default() -> RtDynamicMode
fn default() -> RtDynamicMode
impl Eq for RtDynamicMode
Source§impl PartialEq for RtDynamicMode
impl PartialEq for RtDynamicMode
impl StructuralPartialEq for RtDynamicMode
Auto Trait Implementations§
impl Freeze for RtDynamicMode
impl RefUnwindSafe for RtDynamicMode
impl Send for RtDynamicMode
impl Sync for RtDynamicMode
impl Unpin for RtDynamicMode
impl UnsafeUnpin for RtDynamicMode
impl UnwindSafe for RtDynamicMode
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,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
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.Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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> ⓘ
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> ⓘ
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 moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().