ImGuiOverlays: Frame time history is aligned

pull/3498/head
Stenzek 3 months ago
parent 628e41f849
commit 5c682d2325
No known key found for this signature in database

@ -710,11 +710,11 @@ void ImGuiManager::DrawFrameTimeOverlay(float& position_y, float scale, float ma
{ {
const PerformanceCounters::FrameTimeHistory& history = PerformanceCounters::GetFrameTimeHistory(); const PerformanceCounters::FrameTimeHistory& history = PerformanceCounters::GetFrameTimeHistory();
static_assert((PerformanceCounters::NUM_FRAME_TIME_SAMPLES % 4) == 0); static_assert((PerformanceCounters::NUM_FRAME_TIME_SAMPLES % 4) == 0);
GSVector4 vmin = GSVector4::load<false>(history.data()); GSVector4 vmin = GSVector4::load<true>(history.data());
GSVector4 vmax = vmin; GSVector4 vmax = vmin;
for (size_t i = 4; i < history.size(); i += 4) for (size_t i = 4; i < history.size(); i += 4)
{ {
const GSVector4 v = GSVector4::load<false>(&history[i]); const GSVector4 v = GSVector4::load<true>(&history[i]);
vmin = vmin.min(v); vmin = vmin.min(v);
vmax = vmax.max(v); vmax = vmax.max(v);
} }

@ -7,8 +7,8 @@
class GPUBackend; class GPUBackend;
namespace PerformanceCounters namespace PerformanceCounters {
{
inline constexpr u32 NUM_FRAME_TIME_SAMPLES = 152; inline constexpr u32 NUM_FRAME_TIME_SAMPLES = 152;
using FrameTimeHistory = std::array<float, NUM_FRAME_TIME_SAMPLES>; using FrameTimeHistory = std::array<float, NUM_FRAME_TIME_SAMPLES>;
@ -32,4 +32,4 @@ void Reset();
void Update(GPUBackend* gpu, u32 frame_number, u32 internal_frame_number); void Update(GPUBackend* gpu, u32 frame_number, u32 internal_frame_number);
void AccumulateGPUTime(); void AccumulateGPUTime();
} // namespace Host } // namespace PerformanceCounters

Loading…
Cancel
Save