summaryrefslogtreecommitdiffstats
path: root/servers/rendering/rendering_device.h
diff options
context:
space:
mode:
authorreduz <reduzio@gmail.com>2021-07-02 20:14:19 -0300
committerreduz <reduzio@gmail.com>2021-07-03 10:15:04 -0300
commit6c55d2aad22cd5fc3a7f1499c4cb85779613a394 (patch)
tree13e55bfba5921dfa904b93830be058b2ca9cc175 /servers/rendering/rendering_device.h
parentecf9ea740ef99afbfac94fc5da50988279fd9b9b (diff)
downloadredot-engine-6c55d2aad22cd5fc3a7f1499c4cb85779613a394.tar.gz
Fix Render Info
* Fixed and redone the process to obtain render information from a viewport * Some stats, such as material changes are too difficult to guess on Vulkan, were removed. * Separated visible and shadow stats, which causes confusion. * Texture, buffer and general video memory can be queried now. * Fixed the performance metrics too.
Diffstat (limited to 'servers/rendering/rendering_device.h')
-rw-r--r--servers/rendering/rendering_device.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/servers/rendering/rendering_device.h b/servers/rendering/rendering_device.h
index be7e127491..ed5e73c16a 100644
--- a/servers/rendering/rendering_device.h
+++ b/servers/rendering/rendering_device.h
@@ -1128,7 +1128,13 @@ public:
virtual void submit() = 0;
virtual void sync() = 0;
- virtual uint64_t get_memory_usage() const = 0;
+ enum MemoryType {
+ MEMORY_TEXTURES,
+ MEMORY_BUFFERS,
+ MEMORY_TOTAL
+ };
+
+ virtual uint64_t get_memory_usage(MemoryType p_type) const = 0;
virtual RenderingDevice *create_local_device() = 0;
@@ -1200,6 +1206,7 @@ VARIANT_ENUM_CAST(RenderingDevice::PipelineDynamicStateFlags)
VARIANT_ENUM_CAST(RenderingDevice::InitialAction)
VARIANT_ENUM_CAST(RenderingDevice::FinalAction)
VARIANT_ENUM_CAST(RenderingDevice::Limit)
+VARIANT_ENUM_CAST(RenderingDevice::MemoryType)
typedef RenderingDevice RD;