From b066d51dfa03b960028fc6f88c8de133eb6db1da Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 22 Oct 2016 20:50:36 +1000 Subject: Vulkan: Remove parameters/members of single-instance classes There's not a lot of point in passing these around or storing them (texture cache/state tracker mainly) as there will only ever be a single instance of the class. Also adds downcast helpers such as Vulkan::Renderer::GetInstance(). --- Source/Core/VideoBackends/Vulkan/TextureEncoder.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'Source/Core/VideoBackends/Vulkan/TextureEncoder.h') diff --git a/Source/Core/VideoBackends/Vulkan/TextureEncoder.h b/Source/Core/VideoBackends/Vulkan/TextureEncoder.h index daea8b59ff..c1863a04b2 100644 --- a/Source/Core/VideoBackends/Vulkan/TextureEncoder.h +++ b/Source/Core/VideoBackends/Vulkan/TextureEncoder.h @@ -15,7 +15,6 @@ namespace Vulkan { class StagingTexture2D; -class StateTracker; class Texture2D; class TextureEncoder @@ -29,10 +28,10 @@ public: // Uses an encoding shader to copy src_texture to dest_ptr. // Assumes that no render pass is currently in progress. // WARNING: Executes the current command buffer. - void EncodeTextureToRam(StateTracker* state_tracker, VkImageView src_texture, u8* dest_ptr, - u32 format, u32 native_width, u32 bytes_per_row, u32 num_blocks_y, - u32 memory_stride, PEControl::PixelFormat src_format, bool is_intensity, - int scale_by_half, const EFBRectangle& source); + void EncodeTextureToRam(VkImageView src_texture, u8* dest_ptr, u32 format, u32 native_width, + u32 bytes_per_row, u32 num_blocks_y, u32 memory_stride, + PEControl::PixelFormat src_format, bool is_intensity, int scale_by_half, + const EFBRectangle& source); private: // From OGL. -- cgit v1.2.3 From 5182e6b549f6b25379de840ee639cb8969423c8b Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 22 Oct 2016 22:41:42 +1000 Subject: Vulkan: Implement virtual/real XFB support --- Source/Core/VideoBackends/Vulkan/TextureEncoder.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Source/Core/VideoBackends/Vulkan/TextureEncoder.h') diff --git a/Source/Core/VideoBackends/Vulkan/TextureEncoder.h b/Source/Core/VideoBackends/Vulkan/TextureEncoder.h index c1863a04b2..c3fa68c752 100644 --- a/Source/Core/VideoBackends/Vulkan/TextureEncoder.h +++ b/Source/Core/VideoBackends/Vulkan/TextureEncoder.h @@ -23,6 +23,10 @@ public: TextureEncoder(); ~TextureEncoder(); + VkRenderPass GetEncodingRenderPass() const { return m_encoding_render_pass; } + Texture2D* GetEncodingTexture() const { return m_encoding_texture.get(); } + VkFramebuffer GetEncodingTextureFramebuffer() const { return m_encoding_texture_framebuffer; } + StagingTexture2D* GetDownloadTexture() const { return m_download_texture.get(); } bool Initialize(); // Uses an encoding shader to copy src_texture to dest_ptr. -- cgit v1.2.3