pub struct Time { /* private fields */ }Expand description
Motor genelinde zaman yönetimi.
§Kullanım
ⓘ
let mut time = Time::default();
// Her frame başında:
time.update(raw_dt);
// Okuma:
let dt = time.dt(); // Clamped delta (max 50ms)
let elapsed = time.elapsed(); // Toplam geçen süre
let frame = time.frame(); // Frame sayacı
let raw = time.raw_dt(); // Ham, clamp edilmemiş dt
// Zaman ölçeği:
time.set_time_scale(0.5); // Slow motion
time.set_time_scale(0.0); // PauseImplementations§
Source§impl Time
impl Time
pub fn new() -> Time
Sourcepub fn update(&mut self, raw_dt: f32)
pub fn update(&mut self, raw_dt: f32)
Ham dt’yi alır, clamp + scale uygular ve tüm zamansal değerleri günceller. Her frame başında bir kez çağrılmalıdır.
Sourcepub fn dt(&self) -> f32
pub fn dt(&self) -> f32
Clamped ve scaled delta time (saniye). Fizik, hareket, animasyon gibi sistemler bunu kullanmalıdır.
Sourcepub fn raw_dt(&self) -> f32
pub fn raw_dt(&self) -> f32
Ham (raw) delta time — clamp ve scale uygulanmamış. Gerçek wall-clock zamanına ihtiyaç duyan sistemler için (ör: FPS sayacı).
Sourcepub fn elapsed(&self) -> f64
pub fn elapsed(&self) -> f64
Toplam geçen süre (saniye, f64 hassasiyetinde). Uzun oturumlarda bile hassasiyetini korur.
Sourcepub fn time_scale(&self) -> f32
pub fn time_scale(&self) -> f32
Mevcut zaman ölçeği.
Sourcepub fn set_time_scale(&mut self, scale: f32)
pub fn set_time_scale(&mut self, scale: f32)
Zaman ölçeğini ayarlar. 0.0 = durdur, 0.5 = ağır çekim, 1.0 = normal, 2.0 = hızlı.
Sourcepub fn set_max_dt(&mut self, max: f32)
pub fn set_max_dt(&mut self, max: f32)
Maksimum dt cap’ini ayarlar (saniye).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Time
impl<'de> Deserialize<'de> for Time
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Time, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Time, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for Time
impl Serialize for Time
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Time
Auto Trait Implementations§
impl Freeze for Time
impl RefUnwindSafe for Time
impl Send for Time
impl Sync for Time
impl Unpin for Time
impl UnsafeUnpin for Time
impl UnwindSafe for Time
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Convert
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>
Convert
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)
Convert
&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)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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>
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 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
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>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().