From cb0a603c72cc8b80cfe162f1deebf0aedaa45e0c Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Thu, 29 Dec 2022 15:27:48 +0100 Subject: VideoCommon: De-globalize GeometryShaderManager class. --- Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp') diff --git a/Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp b/Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp index 86b2e361ef..025fa2be29 100644 --- a/Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp +++ b/Source/Core/VideoBackends/Vulkan/VKVertexManager.cpp @@ -222,17 +222,20 @@ void VertexManager::UpdateVertexShaderConstants() void VertexManager::UpdateGeometryShaderConstants() { - if (!GeometryShaderManager::dirty || !ReserveConstantStorage()) + auto& system = Core::System::GetInstance(); + auto& geometry_shader_manager = system.GetGeometryShaderManager(); + + if (!geometry_shader_manager.dirty || !ReserveConstantStorage()) return; StateTracker::GetInstance()->SetGXUniformBuffer( UBO_DESCRIPTOR_SET_BINDING_GS, m_uniform_stream_buffer->GetBuffer(), m_uniform_stream_buffer->GetCurrentOffset(), sizeof(GeometryShaderConstants)); - std::memcpy(m_uniform_stream_buffer->GetCurrentHostPointer(), &GeometryShaderManager::constants, + std::memcpy(m_uniform_stream_buffer->GetCurrentHostPointer(), &geometry_shader_manager.constants, sizeof(GeometryShaderConstants)); m_uniform_stream_buffer->CommitMemory(sizeof(GeometryShaderConstants)); ADDSTAT(g_stats.this_frame.bytes_uniform_streamed, sizeof(GeometryShaderConstants)); - GeometryShaderManager::dirty = false; + geometry_shader_manager.dirty = false; } void VertexManager::UpdatePixelShaderConstants() @@ -293,6 +296,7 @@ void VertexManager::UploadAllConstants() auto& system = Core::System::GetInstance(); auto& pixel_shader_manager = system.GetPixelShaderManager(); auto& vertex_shader_manager = system.GetVertexShaderManager(); + auto& geometry_shader_manager = system.GetGeometryShaderManager(); // Update bindings StateTracker::GetInstance()->SetGXUniformBuffer( @@ -314,7 +318,7 @@ void VertexManager::UploadAllConstants() std::memcpy(m_uniform_stream_buffer->GetCurrentHostPointer() + vertex_constants_offset, &vertex_shader_manager.constants, sizeof(VertexShaderConstants)); std::memcpy(m_uniform_stream_buffer->GetCurrentHostPointer() + geometry_constants_offset, - &GeometryShaderManager::constants, sizeof(GeometryShaderConstants)); + &geometry_shader_manager.constants, sizeof(GeometryShaderConstants)); // Finally, flush buffer memory after copying m_uniform_stream_buffer->CommitMemory(allocation_size); @@ -322,7 +326,7 @@ void VertexManager::UploadAllConstants() // Clear dirty flags vertex_shader_manager.dirty = false; - GeometryShaderManager::dirty = false; + geometry_shader_manager.dirty = false; pixel_shader_manager.dirty = false; } -- cgit v1.2.3