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();
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;
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);
vmax = vmax.max(v);
}

@ -7,8 +7,8 @@
class GPUBackend;
namespace PerformanceCounters
{
namespace PerformanceCounters {
inline constexpr u32 NUM_FRAME_TIME_SAMPLES = 152;
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 AccumulateGPUTime();
} // namespace Host
} // namespace PerformanceCounters

Loading…
Cancel
Save