mirror of
https://github.com/RPCS3/rpcs3.git
synced 2026-03-11 07:56:15 +01:00
gl: Move ownership of the global blitter object from texture cache to global
This commit is contained in:
parent
78e90116a3
commit
dc9bf9abda
|
|
@ -398,6 +398,7 @@ void GLGSRender::on_init_thread()
|
|||
m_ui_renderer.create();
|
||||
m_video_output_pass.create();
|
||||
|
||||
gl::init_global_texture_resources();
|
||||
m_gl_texture_cache.initialize();
|
||||
|
||||
m_prog_buffer.initialize
|
||||
|
|
|
|||
|
|
@ -22,6 +22,13 @@ namespace gl
|
|||
legacy_ring_buffer g_upload_transfer_buffer;
|
||||
scratch_ring_buffer g_compute_decode_buffer;
|
||||
scratch_ring_buffer g_deswizzle_scratch_buffer;
|
||||
blitter g_blitter;
|
||||
|
||||
void init_global_texture_resources()
|
||||
{
|
||||
g_blitter.init();
|
||||
g_hw_blitter = &g_blitter;
|
||||
}
|
||||
|
||||
void destroy_global_texture_resources()
|
||||
{
|
||||
|
|
@ -29,6 +36,8 @@ namespace gl
|
|||
g_upload_transfer_buffer.remove();
|
||||
g_compute_decode_buffer.remove();
|
||||
g_deswizzle_scratch_buffer.remove();
|
||||
g_blitter.destroy();
|
||||
g_hw_blitter = nullptr;
|
||||
}
|
||||
|
||||
template <typename WordType, bool SwapBytes>
|
||||
|
|
|
|||
|
|
@ -86,5 +86,6 @@ namespace gl
|
|||
extern std::unique_ptr<texture> g_vis_texture;
|
||||
}
|
||||
|
||||
void init_global_texture_resources();
|
||||
void destroy_global_texture_resources();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -431,9 +431,7 @@ namespace gl
|
|||
using gl::viewable_image::viewable_image;
|
||||
};
|
||||
|
||||
blitter m_hw_blitter;
|
||||
std::vector<std::unique_ptr<temporary_image_t>> m_temporary_surfaces;
|
||||
|
||||
const u32 max_cached_image_pool_size = 256;
|
||||
|
||||
private:
|
||||
|
|
@ -815,16 +813,11 @@ namespace gl
|
|||
using baseclass::texture_cache;
|
||||
|
||||
void initialize()
|
||||
{
|
||||
m_hw_blitter.init();
|
||||
g_hw_blitter = &m_hw_blitter;
|
||||
}
|
||||
{}
|
||||
|
||||
void destroy() override
|
||||
{
|
||||
clear();
|
||||
g_hw_blitter = nullptr;
|
||||
m_hw_blitter.destroy();
|
||||
}
|
||||
|
||||
bool is_depth_texture(u32 rsx_address, u32 rsx_size) override
|
||||
|
|
@ -870,7 +863,7 @@ namespace gl
|
|||
|
||||
bool blit(gl::command_context& cmd, const rsx::blit_src_info& src, const rsx::blit_dst_info& dst, bool linear_interpolate, gl_render_targets& m_rtts)
|
||||
{
|
||||
auto result = upload_scaled_image(src, dst, linear_interpolate, cmd, m_rtts, m_hw_blitter);
|
||||
auto result = upload_scaled_image(src, dst, linear_interpolate, cmd, m_rtts, *g_hw_blitter);
|
||||
|
||||
if (result.succeeded)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue