inexorgame / vulkan-renderer

A new 3D game engine for Linux and Windows using C++20 and Vulkan API 1.3, in very early but ongoing development
https://inexor.org
MIT License
756 stars 33 forks source link

Use new memory statistics API from Vulkan Memory Allocator 3 #538

Open IAmNotHanni opened 1 year ago

IAmNotHanni commented 1 year ago

Is your feature request related to a problem?

Quoting from the release of Vulkan Memory Allocator 3.0.0:

Redesigned API for statistics, replacing the old one. See structures: VmaStatistics, VmaDetailedStatistics, VmaTotalStatistics. VmaBudget, functions: vmaGetHeapBudgets, vmaCalculateStatistics, vmaGetPoolStatistics, vmaCalculatePoolStatistics, vmaGetVirtualBlockStatistics, vmaCalculateVirtualBlockStatistics.

A description of the new API can be found in the VMA3 docs.

Description

We should query this information and display it in ImGui somewhere, maybe even display some sort of loading bar to show how much vram is used. Maybe we could also display in ImGui which types of memory are available and so on (discussion needed).

Alternatives

Do not use any VMA memory statistics (not recommended)

Affected Code

All

Operating System

All

Additional Context

None