diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-01-18 18:05:44 +0100 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-03-25 03:05:56 +0100 |
commit | 9872d4bc4f78fea478e7db4d5a04208cb8a871fa (patch) | |
tree | d61944d1a7a5e03b5d00da43a92acee848f7bd4e /src/video_core/renderer_opengl/gl_texture_cache.cpp | |
parent | Garbage Collection: Final tuning. (diff) | |
download | yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar.gz yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar.bz2 yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar.lz yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar.xz yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.tar.zst yuzu-9872d4bc4f78fea478e7db4d5a04208cb8a871fa.zip |
Diffstat (limited to 'src/video_core/renderer_opengl/gl_texture_cache.cpp')
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp index 63586d9d5..8f9a65beb 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.cpp +++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp @@ -485,11 +485,9 @@ TextureCacheRuntime::TextureCacheRuntime(const Device& device_, ProgramManager& } } - device_access_memory = []() -> u64 { - if (GLAD_GL_NVX_gpu_memory_info) { - GLint cur_avail_mem_kb = 0; - glGetIntegerv(GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX, &cur_avail_mem_kb); - return static_cast<u64>(cur_avail_mem_kb) * 1_KiB; + device_access_memory = [this]() -> u64 { + if (device.CanReportMemoryUsage()) { + return device.GetCurrentDedicatedVideoMemory() + 512_MiB; } return 2_GiB; // Return minimum requirements }(); @@ -510,10 +508,8 @@ ImageBufferMap TextureCacheRuntime::DownloadStagingBuffer(size_t size) { } u64 TextureCacheRuntime::GetDeviceMemoryUsage() const { - if (GLAD_GL_NVX_gpu_memory_info) { - GLint cur_avail_mem_kb = 0; - glGetIntegerv(GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX, &cur_avail_mem_kb); - return device_access_memory - static_cast<u64>(cur_avail_mem_kb) * 1_KiB; + if (device.CanReportMemoryUsage()) { + return device_access_memory - device.GetCurrentDedicatedVideoMemory(); } return 2_GiB; } |