From ed69da0fff145e61588c95821dc835d13578b1c7 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Fri, 13 Dec 2019 11:58:09 +0100 Subject: [PATCH] [hud] Remove legacy code --- src/dxvk/hud/dxvk_hud.cpp | 29 +--- src/dxvk/hud/dxvk_hud.h | 14 +- src/dxvk/hud/dxvk_hud_config.cpp | 59 -------- src/dxvk/hud/dxvk_hud_config.h | 49 ------- src/dxvk/hud/dxvk_hud_devinfo.cpp | 45 ------ src/dxvk/hud/dxvk_hud_devinfo.h | 32 ----- src/dxvk/hud/dxvk_hud_fps.cpp | 128 ----------------- src/dxvk/hud/dxvk_hud_fps.h | 56 -------- src/dxvk/hud/dxvk_hud_stats.cpp | 223 ------------------------------ src/dxvk/hud/dxvk_hud_stats.h | 78 ----------- src/dxvk/meson.build | 4 - 11 files changed, 5 insertions(+), 712 deletions(-) delete mode 100644 src/dxvk/hud/dxvk_hud_config.cpp delete mode 100644 src/dxvk/hud/dxvk_hud_config.h delete mode 100644 src/dxvk/hud/dxvk_hud_devinfo.cpp delete mode 100644 src/dxvk/hud/dxvk_hud_devinfo.h delete mode 100644 src/dxvk/hud/dxvk_hud_fps.cpp delete mode 100644 src/dxvk/hud/dxvk_hud_fps.h delete mode 100644 src/dxvk/hud/dxvk_hud_stats.cpp delete mode 100644 src/dxvk/hud/dxvk_hud_stats.h diff --git a/src/dxvk/hud/dxvk_hud.cpp b/src/dxvk/hud/dxvk_hud.cpp index 5ceb06788..26b4c46bc 100644 --- a/src/dxvk/hud/dxvk_hud.cpp +++ b/src/dxvk/hud/dxvk_hud.cpp @@ -5,15 +5,10 @@ namespace dxvk::hud { Hud::Hud( - const Rc& device, - const HudConfig& config) - : m_config (config), - m_device (device), + const Rc& device) + : m_device (device), m_uniformBuffer (createUniformBuffer()), - m_renderer (device), - m_hudDeviceInfo (device), - m_hudFramerate (config.elements), - m_hudStats (config.elements) { + m_renderer (device) { // Set up constant state m_rsState.polygonMode = VK_POLYGON_MODE_FILL; m_rsState.cullMode = VK_CULL_MODE_BACK_BIT; @@ -55,8 +50,6 @@ namespace dxvk::hud { void Hud::update() { m_hudItems.update(); - m_hudFramerate.update(); - m_hudStats.update(m_device); } @@ -71,16 +64,7 @@ namespace dxvk::hud { Rc Hud::createHud(const Rc& device) { - std::string hudElements = env::getEnvVar("DXVK_HUD"); - - if (hudElements.empty()) - hudElements = device->config().hud; - - HudConfig config(hudElements); - - return !config.elements.isClear() - ? new Hud(device, config) - : nullptr; + return new Hud(device); } @@ -97,11 +81,6 @@ namespace dxvk::hud { void Hud::renderHudElements(const Rc& ctx) { m_hudItems.render(m_renderer); - - HudPos position = { 8.0f, 24.0f }; - - position = m_hudFramerate.render(m_renderer, position); - position = m_hudStats .render(m_renderer, position); } diff --git a/src/dxvk/hud/dxvk_hud.h b/src/dxvk/hud/dxvk_hud.h index 3f4e5e4f7..c5d07c779 100644 --- a/src/dxvk/hud/dxvk_hud.h +++ b/src/dxvk/hud/dxvk_hud.h @@ -2,14 +2,8 @@ #include "../dxvk_device.h" -#include "../util/util_env.h" - -#include "dxvk_hud_config.h" -#include "dxvk_hud_devinfo.h" #include "dxvk_hud_item.h" -#include "dxvk_hud_fps.h" #include "dxvk_hud_renderer.h" -#include "dxvk_hud_stats.h" namespace dxvk::hud { @@ -31,9 +25,7 @@ namespace dxvk::hud { public: - Hud( - const Rc& device, - const HudConfig& config); + Hud(const Rc& device); ~Hud(); @@ -81,7 +73,6 @@ namespace dxvk::hud { private: - const HudConfig m_config; const Rc m_device; Rc m_uniformBuffer; @@ -91,9 +82,6 @@ namespace dxvk::hud { HudUniformData m_uniformData; HudRenderer m_renderer; - HudDeviceInfo m_hudDeviceInfo; - HudFps m_hudFramerate; - HudStats m_hudStats; HudItemSet m_hudItems; void setupRendererState( diff --git a/src/dxvk/hud/dxvk_hud_config.cpp b/src/dxvk/hud/dxvk_hud_config.cpp deleted file mode 100644 index fe1745bd3..000000000 --- a/src/dxvk/hud/dxvk_hud_config.cpp +++ /dev/null @@ -1,59 +0,0 @@ -#include "dxvk_hud_config.h" - -#include - -namespace dxvk::hud { - - const std::unordered_map g_hudElements = {{ - { "devinfo", HudElement::DeviceInfo }, - { "fps", HudElement::Framerate }, - { "frametimes", HudElement::Frametimes }, - { "drawcalls", HudElement::StatDrawCalls }, - { "submissions", HudElement::StatSubmissions }, - { "pipelines", HudElement::StatPipelines }, - { "memory", HudElement::StatMemory }, - { "gpuload", HudElement::StatGpuLoad }, - { "version", HudElement::DxvkVersion }, - { "api", HudElement::DxvkClientApi }, - { "compiler", HudElement::CompilerActivity }, - }}; - - - HudConfig::HudConfig() { - - } - - - HudConfig::HudConfig(const std::string& configStr) { - if (configStr == "1") { - this->elements.set( - HudElement::DeviceInfo, - HudElement::Framerate); - } else if (configStr == "full") { - for (auto pair : g_hudElements) - this->elements.set(pair.second); - } else { - std::string::size_type pos = 0; - std::string::size_type end = 0; - - while (pos < configStr.size()) { - end = configStr.find(',', pos); - - if (end == std::string::npos) - end = configStr.size(); - - std::string configPart = configStr.substr(pos, end - pos); - - auto element = g_hudElements.find(configPart); - - if (element != g_hudElements.cend()) { - this->elements.set(element->second); - Logger::debug(str::format("Hud: Enabled ", configPart)); - } - - pos = end + 1; - } - } - } - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_config.h b/src/dxvk/hud/dxvk_hud_config.h deleted file mode 100644 index 05a1e4b6f..000000000 --- a/src/dxvk/hud/dxvk_hud_config.h +++ /dev/null @@ -1,49 +0,0 @@ -#pragma once - -#include "../dxvk_include.h" - -namespace dxvk::hud { - - /** - * \brief HUD element - * - * These flags can be used to enable - * or disable HUD elements on demand. - */ - enum class HudElement { - DeviceInfo = 0, - Framerate = 1, - Frametimes = 2, - StatDrawCalls = 3, - StatSubmissions = 4, - StatPipelines = 5, - StatMemory = 6, - StatGpuLoad = 7, - DxvkVersion = 8, - DxvkClientApi = 9, - CompilerActivity = 10, - }; - - using HudElements = Flags; - - - /** - * \brief HUD configuration - */ - struct HudConfig { - HudConfig(); - HudConfig(const std::string& configStr); - - HudElements elements; - }; - - - /** - * \brief Gets HUD configuration from config strnig - * - * \param [in] configStr Configuration string - * \returns HUD configuration struct - */ - HudConfig parseHudConfigStr(const std::string& configStr); - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_devinfo.cpp b/src/dxvk/hud/dxvk_hud_devinfo.cpp deleted file mode 100644 index 811d19c1e..000000000 --- a/src/dxvk/hud/dxvk_hud_devinfo.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include "dxvk_hud_devinfo.h" - -namespace dxvk::hud { - - HudDeviceInfo::HudDeviceInfo(const Rc& device) { - VkPhysicalDeviceProperties props = device->adapter()->deviceProperties(); - m_deviceName = props.deviceName; - m_driverVer = str::format("Driver: ", - VK_VERSION_MAJOR(props.driverVersion), ".", - VK_VERSION_MINOR(props.driverVersion), ".", - VK_VERSION_PATCH(props.driverVersion)); - m_vulkanVer = str::format("Vulkan: ", - VK_VERSION_MAJOR(props.apiVersion), ".", - VK_VERSION_MINOR(props.apiVersion), ".", - VK_VERSION_PATCH(props.apiVersion)); - } - - - HudDeviceInfo::~HudDeviceInfo() { - - } - - - HudPos HudDeviceInfo::render( - HudRenderer& renderer, - HudPos position) { - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - m_deviceName); - - renderer.drawText(16.0f, - { position.x, position.y + 24 }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - m_driverVer); - - renderer.drawText(16.0f, - { position.x, position.y + 44 }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - m_vulkanVer); - - return HudPos { position.x, position.y + 68 }; - } - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_devinfo.h b/src/dxvk/hud/dxvk_hud_devinfo.h deleted file mode 100644 index 7036d3c28..000000000 --- a/src/dxvk/hud/dxvk_hud_devinfo.h +++ /dev/null @@ -1,32 +0,0 @@ -#pragma once - -#include "dxvk_hud_renderer.h" - -namespace dxvk::hud { - - /** - * \brief Device info display for the HUD - * - * Displays the name of the device, as well as - * the driver version and Vulkan API version. - */ - class HudDeviceInfo { - - public: - - HudDeviceInfo(const Rc& device); - ~HudDeviceInfo(); - - HudPos render( - HudRenderer& renderer, - HudPos position); - - private: - - std::string m_deviceName; - std::string m_driverVer; - std::string m_vulkanVer; - - }; - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_fps.cpp b/src/dxvk/hud/dxvk_hud_fps.cpp deleted file mode 100644 index dc3a42d60..000000000 --- a/src/dxvk/hud/dxvk_hud_fps.cpp +++ /dev/null @@ -1,128 +0,0 @@ -#include "dxvk_hud_fps.h" - -#include -#include - -namespace dxvk::hud { - - HudFps::HudFps(HudElements elements) - : m_elements (elements), - m_fpsString ("FPS: "), - m_prevFpsUpdate(Clock::now()), - m_prevFtgUpdate(Clock::now()) { - - } - - - HudFps::~HudFps() { - - } - - - void HudFps::update() { - m_frameCount += 1; - - TimePoint now = Clock::now(); - TimeDiff elapsedFps = std::chrono::duration_cast(now - m_prevFpsUpdate); - TimeDiff elapsedFtg = std::chrono::duration_cast(now - m_prevFtgUpdate); - m_prevFtgUpdate = now; - - // Update FPS string - if (elapsedFps.count() >= UpdateInterval) { - const int64_t fps = (10'000'000ll * m_frameCount) / elapsedFps.count(); - m_fpsString = str::format("FPS: ", fps / 10, ".", fps % 10); - - m_prevFpsUpdate = now; - m_frameCount = 0; - } - - // Update frametime stuff - m_dataPoints[m_dataPointId] = float(elapsedFtg.count()); - m_dataPointId = (m_dataPointId + 1) % NumDataPoints; - } - - - HudPos HudFps::render( - HudRenderer& renderer, - HudPos position) { - if (m_elements.test(HudElement::Framerate)) - position = this->renderFpsText(renderer, position); - - if (m_elements.test(HudElement::Frametimes)) - position = this->renderFrametimeGraph(renderer, position); - - return position; - } - - - HudPos HudFps::renderFpsText( - HudRenderer& renderer, - HudPos position) { - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - m_fpsString); - - return HudPos { position.x, position.y + 24 }; - } - - - HudPos HudFps::renderFrametimeGraph( - HudRenderer& renderer, - HudPos position) { - std::array vData; - - // 60 FPS = optimal, 10 FPS = worst - const float targetUs = 16'666.6f; - const float minUs = 5'000.0f; - const float maxUs = 100'000.0f; - - // Ten times the maximum/minimum number - // of milliseconds for a single frame - uint32_t minMs = 0xFFFFFFFFu; - uint32_t maxMs = 0x00000000u; - - // Paint the time points - for (uint32_t i = 0; i < NumDataPoints; i++) { - float us = m_dataPoints[(m_dataPointId + i) % NumDataPoints]; - - minMs = std::min(minMs, uint32_t(us / 100.0f)); - maxMs = std::max(maxMs, uint32_t(us / 100.0f)); - - float r = std::min(std::max(-1.0f + us / targetUs, 0.0f), 1.0f); - float g = std::min(std::max( 3.0f - us / targetUs, 0.0f), 1.0f); - float l = std::sqrt(r * r + g * g); - - HudNormColor color = { - uint8_t(255.0f * (r / l)), - uint8_t(255.0f * (g / l)), - uint8_t(0), uint8_t(255) }; - - float x = position.x + float(i); - float y = position.y + 24.0f; - - float hVal = std::log2(std::max((us - minUs) / targetUs + 1.0f, 1.0f)) - / std::log2((maxUs - minUs) / targetUs); - float h = std::min(std::max(40.0f * hVal, 2.0f), 40.0f); - - vData[2 * i + 0] = HudLineVertex { { x, y }, color }; - vData[2 * i + 1] = HudLineVertex { { x, y - h }, color }; - } - - renderer.drawLines(vData.size(), vData.data()); - - // Paint min/max frame times in the entire window - renderer.drawText(14.0f, - { position.x, position.y + 44.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - str::format("min: ", minMs / 10, ".", minMs % 10)); - - renderer.drawText(14.0f, - { position.x + 150.0f, position.y + 44.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - str::format("max: ", maxMs / 10, ".", maxMs % 10)); - - return HudPos { position.x, position.y + 66.0f }; - } - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_fps.h b/src/dxvk/hud/dxvk_hud_fps.h deleted file mode 100644 index e3db750f5..000000000 --- a/src/dxvk/hud/dxvk_hud_fps.h +++ /dev/null @@ -1,56 +0,0 @@ -#pragma once - -#include "../util/util_time.h" - -#include "dxvk_hud_config.h" -#include "dxvk_hud_renderer.h" - -namespace dxvk::hud { - - /** - * \brief FPS display for the HUD - * - * Displays the current frames per second. - */ - class HudFps { - using Clock = dxvk::high_resolution_clock; - using TimeDiff = std::chrono::microseconds; - using TimePoint = typename Clock::time_point; - - constexpr static uint32_t NumDataPoints = 300; - constexpr static int64_t UpdateInterval = 500'000; - public: - - HudFps(HudElements elements); - ~HudFps(); - - void update(); - - HudPos render( - HudRenderer& renderer, - HudPos position); - - private: - - const HudElements m_elements; - - std::string m_fpsString; - - TimePoint m_prevFpsUpdate; - TimePoint m_prevFtgUpdate; - int64_t m_frameCount = 0; - - std::array m_dataPoints = {}; - uint32_t m_dataPointId = 0; - - HudPos renderFpsText( - HudRenderer& renderer, - HudPos position); - - HudPos renderFrametimeGraph( - HudRenderer& renderer, - HudPos position); - - }; - -} \ No newline at end of file diff --git a/src/dxvk/hud/dxvk_hud_stats.cpp b/src/dxvk/hud/dxvk_hud_stats.cpp deleted file mode 100644 index e714e58ac..000000000 --- a/src/dxvk/hud/dxvk_hud_stats.cpp +++ /dev/null @@ -1,223 +0,0 @@ -#include "dxvk_hud_stats.h" - -namespace dxvk::hud { - - HudStats::HudStats(HudElements elements) - : m_elements(filterElements(elements)), - m_compilerShowTime(dxvk::high_resolution_clock::now()) { } - - - HudStats::~HudStats() { - - } - - - void HudStats::update(const Rc& device) { - if (m_elements.isClear()) - return; - - // For some counters, we'll display the absolute value, - // for others, the average counter increment per frame. - DxvkStatCounters nextCounters = device->getStatCounters(); - m_diffCounters = nextCounters.diff(m_prevCounters); - m_prevCounters = nextCounters; - - // GPU load is a bit more complex than that since - // we don't want to update this every frame - if (m_elements.test(HudElement::StatGpuLoad)) - this->updateGpuLoad(); - } - - - HudPos HudStats::render( - HudRenderer& renderer, - HudPos position) { - if (m_elements.test(HudElement::StatSubmissions)) - position = this->printSubmissionStats(renderer, position); - - if (m_elements.test(HudElement::StatDrawCalls)) - position = this->printDrawCallStats(renderer, position); - - if (m_elements.test(HudElement::StatPipelines)) - position = this->printPipelineStats(renderer, position); - - if (m_elements.test(HudElement::StatMemory)) - position = this->printMemoryStats(renderer, position); - - if (m_elements.test(HudElement::StatGpuLoad)) - position = this->printGpuLoad(renderer, position); - - if (m_elements.test(HudElement::CompilerActivity)) { - this->printCompilerActivity(renderer, - { position.x, float(renderer.surfaceSize().height) - 20.0f }); - } - - return position; - } - - - void HudStats::updateGpuLoad() { - auto now = dxvk::high_resolution_clock::now(); - uint64_t ticks = std::chrono::duration_cast(now - m_gpuLoadUpdateTime).count(); - - if (ticks >= 500'000) { - m_gpuLoadUpdateTime = now; - - m_diffGpuIdleTicks = m_prevCounters.getCtr(DxvkStatCounter::GpuIdleTicks) - m_prevGpuIdleTicks; - m_prevGpuIdleTicks = m_prevCounters.getCtr(DxvkStatCounter::GpuIdleTicks); - - uint64_t busyTicks = ticks > m_diffGpuIdleTicks - ? uint64_t(ticks - m_diffGpuIdleTicks) - : uint64_t(0); - - m_gpuLoadString = str::format("GPU: ", (100 * busyTicks) / ticks, "%"); - } - } - - - HudPos HudStats::printDrawCallStats( - HudRenderer& renderer, - HudPos position) { - const uint64_t frameCount = std::max(m_diffCounters.getCtr(DxvkStatCounter::QueuePresentCount), 1); - - const uint64_t gpCalls = m_diffCounters.getCtr(DxvkStatCounter::CmdDrawCalls) / frameCount; - const uint64_t cpCalls = m_diffCounters.getCtr(DxvkStatCounter::CmdDispatchCalls) / frameCount; - const uint64_t rpCalls = m_diffCounters.getCtr(DxvkStatCounter::CmdRenderPassCount) / frameCount; - - const std::string strDrawCalls = str::format("Draw calls: ", gpCalls); - const std::string strDispatchCalls = str::format("Dispatch calls: ", cpCalls); - const std::string strRenderPasses = str::format("Render passes: ", rpCalls); - - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strDrawCalls); - - renderer.drawText(16.0f, - { position.x, position.y + 20.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strDispatchCalls); - - renderer.drawText(16.0f, - { position.x, position.y + 40.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strRenderPasses); - - return { position.x, position.y + 64 }; - } - - - HudPos HudStats::printSubmissionStats( - HudRenderer& renderer, - HudPos position) { - const uint64_t frameCount = std::max(m_diffCounters.getCtr(DxvkStatCounter::QueuePresentCount), 1); - const uint64_t numSubmits = m_diffCounters.getCtr(DxvkStatCounter::QueueSubmitCount) / frameCount; - - const std::string strSubmissions = str::format("Queue submissions: ", numSubmits); - - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strSubmissions); - - return { position.x, position.y + 24.0f }; - } - - - HudPos HudStats::printPipelineStats( - HudRenderer& renderer, - HudPos position) { - const uint64_t gpCount = m_prevCounters.getCtr(DxvkStatCounter::PipeCountGraphics); - const uint64_t cpCount = m_prevCounters.getCtr(DxvkStatCounter::PipeCountCompute); - - const std::string strGpCount = str::format("Graphics pipelines: ", gpCount); - const std::string strCpCount = str::format("Compute pipelines: ", cpCount); - - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strGpCount); - - renderer.drawText(16.0f, - { position.x, position.y + 20.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strCpCount); - - return { position.x, position.y + 44.0f }; - } - - - HudPos HudStats::printMemoryStats( - HudRenderer& renderer, - HudPos position) { - constexpr uint64_t mib = 1024 * 1024; - - const uint64_t memAllocated = m_prevCounters.getCtr(DxvkStatCounter::MemoryAllocated); - const uint64_t memUsed = m_prevCounters.getCtr(DxvkStatCounter::MemoryUsed); - - const std::string strMemAllocated = str::format("Memory allocated: ", memAllocated / mib, " MB"); - const std::string strMemUsed = str::format("Memory used: ", memUsed / mib, " MB"); - - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strMemAllocated); - - renderer.drawText(16.0f, - { position.x, position.y + 20.0f }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - strMemUsed); - - return { position.x, position.y + 44.0f }; - } - - - HudPos HudStats::printGpuLoad( - HudRenderer& renderer, - HudPos position) { - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - m_gpuLoadString); - - return { position.x, position.y + 24.0f }; - } - - - HudPos HudStats::printCompilerActivity( - HudRenderer& renderer, - HudPos position) { - auto now = dxvk::high_resolution_clock::now(); - bool doShow = m_prevCounters.getCtr(DxvkStatCounter::PipeCompilerBusy); - - if (m_prevCounters.getCtr(DxvkStatCounter::PipeCompilerBusy) - && m_diffCounters.getCtr(DxvkStatCounter::PipeCompilerBusy)) - m_compilerShowTime = now; - - if (!doShow) { - doShow |= std::chrono::duration_cast(now - m_compilerShowTime) - < std::chrono::milliseconds(1000); - } - - if (doShow) { - renderer.drawText(16.0f, - { position.x, position.y }, - { 1.0f, 1.0f, 1.0f, 1.0f }, - "Compiling shaders..."); - } - - return { position.x, position.y + 24.0f }; - } - - - HudElements HudStats::filterElements(HudElements elements) { - return elements & HudElements( - HudElement::StatDrawCalls, - HudElement::StatSubmissions, - HudElement::StatPipelines, - HudElement::StatMemory, - HudElement::StatGpuLoad, - HudElement::CompilerActivity); - } - -} diff --git a/src/dxvk/hud/dxvk_hud_stats.h b/src/dxvk/hud/dxvk_hud_stats.h deleted file mode 100644 index 50311c09a..000000000 --- a/src/dxvk/hud/dxvk_hud_stats.h +++ /dev/null @@ -1,78 +0,0 @@ -#pragma once - -#include "../util/util_time.h" - -#include "../dxvk_stats.h" - -#include "dxvk_hud_config.h" -#include "dxvk_hud_renderer.h" - -namespace dxvk::hud { - - /** - * \brief Statistics display for the HUD - * - * Displays some stat counters for the device - * if enabled. Certain groups of counters can - * be enabled inidividually. - */ - class HudStats { - - public: - - HudStats(HudElements elements); - ~HudStats(); - - void update( - const Rc& device); - - HudPos render( - HudRenderer& renderer, - HudPos position); - - private: - - const HudElements m_elements; - - DxvkStatCounters m_prevCounters; - DxvkStatCounters m_diffCounters; - - dxvk::high_resolution_clock::time_point m_gpuLoadUpdateTime; - dxvk::high_resolution_clock::time_point m_compilerShowTime; - - uint64_t m_prevGpuIdleTicks = 0; - uint64_t m_diffGpuIdleTicks = 0; - - std::string m_gpuLoadString = "GPU: "; - - void updateGpuLoad(); - - HudPos printDrawCallStats( - HudRenderer& renderer, - HudPos position); - - HudPos printSubmissionStats( - HudRenderer& renderer, - HudPos position); - - HudPos printPipelineStats( - HudRenderer& renderer, - HudPos position); - - HudPos printMemoryStats( - HudRenderer& renderer, - HudPos position); - - HudPos printGpuLoad( - HudRenderer& renderer, - HudPos position); - - HudPos printCompilerActivity( - HudRenderer& renderer, - HudPos position); - - static HudElements filterElements(HudElements elements); - - }; - -} \ No newline at end of file diff --git a/src/dxvk/meson.build b/src/dxvk/meson.build index 09730b84b..1dc113c30 100644 --- a/src/dxvk/meson.build +++ b/src/dxvk/meson.build @@ -102,13 +102,9 @@ dxvk_src = files([ 'platform/dxvk_win32_exts.cpp', 'hud/dxvk_hud.cpp', - 'hud/dxvk_hud_config.cpp', - 'hud/dxvk_hud_devinfo.cpp', 'hud/dxvk_hud_font.cpp', - 'hud/dxvk_hud_fps.cpp', 'hud/dxvk_hud_item.cpp', 'hud/dxvk_hud_renderer.cpp', - 'hud/dxvk_hud_stats.cpp', ]) thread_dep = dependency('threads')