10 double Blend(
double average,
double sample,
double weight) {
11 return average <= 0.0 ? sample : average + (sample - average) * weight;
40 if (gpuMilliseconds <= 0.0)
47 const double frameMilliseconds = 1000.0 /
m_settings.targetFps;
55 return measured > 0.0 ? measured : budgetMilliseconds;
64 const bool startsTick =
m_cursor.unit == 0;
78 if (count > 0 && used + estimate > budget)
void ReportUnitTime(uint32_t unit, double gpuMilliseconds)
void ReportRenderTime(double gpuMilliseconds)
double BudgetMilliseconds() const
SimScheduler(uint32_t unitsPerTick, const SimSchedulerSettings &settings={})
std::vector< double > m_unitMilliseconds
SimSchedulerSettings m_settings
void AddRealTime(double seconds, double speedScale=1.0)
double m_renderMilliseconds
double EstimateMilliseconds(uint32_t unit, double budgetMilliseconds) const
double Blend(double average, double sample, double weight)