Browse Source

TextureCache: Flush linear textures after finishing rendering.

nce_cpp
Fernando Sahmkow 6 years ago
parent
commit
3d2b5222df
  1. 10
      src/video_core/texture_cache/texture_cache.h

10
src/video_core/texture_cache/texture_cache.h

@ -233,8 +233,14 @@ public:
auto surface_view = GetSurface(gpu_addr, *cpu_addr,
SurfaceParams::CreateForFramebuffer(system, index), true);
if (render_targets[index].target)
render_targets[index].target->MarkAsRenderTarget(false, NO_RT);
if (render_targets[index].target) {
auto& surface = render_targets[index].target;
surface->MarkAsRenderTarget(false, NO_RT);
const auto& cr_params = surface->GetSurfaceParams();
if (!cr_params.is_tiled) {
FlushSurface(surface);
}
}
render_targets[index].target = surface_view.first;
render_targets[index].view = surface_view.second;
if (render_targets[index].target)

Loading…
Cancel
Save