diff --git a/include/bgfx/bgfx.h b/include/bgfx/bgfx.h index 46d7a3df1..857a3f042 100644 --- a/include/bgfx/bgfx.h +++ b/include/bgfx/bgfx.h @@ -912,6 +912,7 @@ namespace bgfx uint32_t numDraw; //!< Number of draw calls submitted. uint32_t numCompute; //!< Number of compute calls submitted. + uint32_t numBlit; //!< Number of blit calls submitted. uint32_t maxGpuLatency; //!< GPU driver latency. uint16_t numDynamicIndexBuffers; //!< Number of used dynamic index buffers. diff --git a/include/bgfx/c99/bgfx.h b/include/bgfx/c99/bgfx.h index e9b5a13b9..a15edbebb 100644 --- a/include/bgfx/c99/bgfx.h +++ b/include/bgfx/c99/bgfx.h @@ -374,6 +374,7 @@ typedef struct bgfx_stats_s uint32_t numDraw; uint32_t numCompute; + uint32_t numBlit; uint32_t maxGpuLatency; uint16_t numDynamicIndexBuffers; diff --git a/include/bgfx/defines.h b/include/bgfx/defines.h index 3b5802e81..963252b89 100644 --- a/include/bgfx/defines.h +++ b/include/bgfx/defines.h @@ -6,7 +6,7 @@ #ifndef BGFX_DEFINES_H_HEADER_GUARD #define BGFX_DEFINES_H_HEADER_GUARD -#define BGFX_API_VERSION UINT32_C(86) +#define BGFX_API_VERSION UINT32_C(87) /// Color RGB/alpha/depth write. When it's not specified write will be disabled. #define BGFX_STATE_WRITE_R UINT64_C(0x0000000000000001) //!< Enable R write. diff --git a/src/renderer_d3d11.cpp b/src/renderer_d3d11.cpp index 9449d410a..fab9b467f 100644 --- a/src/renderer_d3d11.cpp +++ b/src/renderer_d3d11.cpp @@ -6148,6 +6148,7 @@ namespace bgfx { namespace d3d11 perfStats.gpuTimerFreq = result.m_frequency; perfStats.numDraw = statsKeyType[0]; perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); m_nvapi.getMemoryInfo(perfStats.gpuMemoryUsed, perfStats.gpuMemoryMax); diff --git a/src/renderer_d3d12.cpp b/src/renderer_d3d12.cpp index f52d7220c..ea593a480 100644 --- a/src/renderer_d3d12.cpp +++ b/src/renderer_d3d12.cpp @@ -6435,6 +6435,7 @@ namespace bgfx { namespace d3d12 perfStats.gpuTimerFreq = m_gpuTimer.m_frequency; perfStats.numDraw = statsKeyType[0]; perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); perfStats.gpuMemoryMax = -INT64_MAX; diff --git a/src/renderer_d3d9.cpp b/src/renderer_d3d9.cpp index 772e95a5b..5c6a423e4 100644 --- a/src/renderer_d3d9.cpp +++ b/src/renderer_d3d9.cpp @@ -4401,6 +4401,7 @@ namespace bgfx { namespace d3d9 perfStats.gpuTimerFreq = result.m_frequency; perfStats.numDraw = statsKeyType[0]; perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); m_nvapi.getMemoryInfo(perfStats.gpuMemoryUsed, perfStats.gpuMemoryMax); diff --git a/src/renderer_gl.cpp b/src/renderer_gl.cpp index 50d4f6775..f181fc594 100644 --- a/src/renderer_gl.cpp +++ b/src/renderer_gl.cpp @@ -7423,6 +7423,7 @@ BX_TRACE("%d, %d, %d, %s", _array, _srgb, _mipAutogen, getName(_format) ); perfStats.gpuTimerFreq = 1000000000; perfStats.numDraw = statsKeyType[0]; perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); perfStats.gpuMemoryMax = -INT64_MAX; diff --git a/src/renderer_mtl.mm b/src/renderer_mtl.mm index 9d4236918..347b17a2f 100644 --- a/src/renderer_mtl.mm +++ b/src/renderer_mtl.mm @@ -4103,6 +4103,7 @@ namespace bgfx { namespace mtl perfStats.gpuTimerFreq = m_gpuTimer.m_frequency; perfStats.numDraw = statsKeyType[0]; perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); perfStats.gpuMemoryMax = -INT64_MAX; diff --git a/src/renderer_vk.cpp b/src/renderer_vk.cpp index 156a5058d..5e6d03a4b 100644 --- a/src/renderer_vk.cpp +++ b/src/renderer_vk.cpp @@ -4407,6 +4407,7 @@ BX_UNUSED(presentMin, presentMax); // perfStats.gpuTimerFreq = m_gpuTimer.m_frequency; // perfStats.numDraw = statsKeyType[0]; // perfStats.numCompute = statsKeyType[1]; + perfStats.numBlit = _render->m_numBlitItems; // perfStats.maxGpuLatency = maxGpuLatency; bx::memCopy(perfStats.numPrims, statsNumPrimsRendered, sizeof(perfStats.numPrims) ); perfStats.gpuMemoryMax = -INT64_MAX;