diff --git a/examples/common/example-glue.cpp b/examples/common/example-glue.cpp index 61eba601b..1c7bdc05e 100644 --- a/examples/common/example-glue.cpp +++ b/examples/common/example-glue.cpp @@ -246,6 +246,11 @@ void showExampleDialog(entry::AppI* _app, const char* _errorText) ImGui::Text("%3d", pos); ImGui::SameLine(64.0f); + if (encoderStats.cpuTimeEnd-encoderStats.cpuTimeBegin < 0) + { + DBG("x"); + } + const float maxWidth = 30.0f*scale; const float cpuMs = float( (encoderStats.cpuTimeEnd-encoderStats.cpuTimeBegin)*toCpuMs); const float cpuWidth = bx::fclamp(cpuMs*scale, 1.0f, maxWidth); diff --git a/src/bgfx_p.h b/src/bgfx_p.h index a3e45ec43..78f7ef707 100644 --- a/src/bgfx_p.h +++ b/src/bgfx_p.h @@ -4396,15 +4396,15 @@ namespace bgfx } } - BX_NO_INLINE void encoderApiWait() + void encoderApiWait() { + for (uint32_t ii = 1, num = m_numEncoders; ii < num; ++ii) + { + m_encoderApiSem.wait(); + } + for (uint32_t ii = 0, num = m_numEncoders; ii < num; ++ii) { - if (0 != ii) - { - m_encoderApiSem.wait(); - } - m_encoderStats[ii].cpuTimeBegin = m_encoder[ii].m_cpuTimeBegin; m_encoderStats[ii].cpuTimeEnd = m_encoder[ii].m_cpuTimeEnd; }