4e2071b6d9
texture_cache: Correct premature texceptions
...
Due to our current infrastructure, it is possible for a mipmap to be set
on as a render target before a texception of that mipmap's superset be
set afterwards. This is problematic as we rely on texture views to set
up texceptions and protecting render targets targets for 3D texture
rendering.
One simple solution is to configure framebuffers after texture setup but
this brings other problems. This solution, forces a reconfiguration of
the framebuffers after such event happens.
2019-06-20 21:36:12 -03:00
ba677ccb5a
texture_cache: Implement guest flushing
2019-06-20 21:36:12 -03:00
de0b1cb2b2
Fixes to mipmap's process and reconstruct process
2019-06-20 21:36:12 -03:00
e0002599ac
surface_base: Add parenthesis to EmplaceOverview's predicate
2019-06-20 21:36:12 -03:00
324e470879
Texture Cache: Implement Blitting and Fermi Copies
2019-06-20 21:36:12 -03:00
549fd18ac4
surface_view: Add constructor for ViewParams
2019-06-20 21:36:12 -03:00
16e8625a30
surface_base: Split BreakDown into layered and non-layered variants
2019-06-20 21:36:12 -03:00
2b30000a1e
surface_base: Silence truncation warnings and minor renames and reordering
2019-06-20 21:36:12 -03:00
03d10ea3b4
copy_params: Use constructor instead of C-like initialization
2019-06-20 21:36:12 -03:00
1af4414861
Correct Mipmaps View method in Texture Cache
2019-06-20 21:36:12 -03:00
d86f9cd709
Change texture_cache chaching from GPUAddr to CacheAddr
...
This also reverses the changes to make invalidation and flushing through
the GPU address.
2019-06-20 21:36:12 -03:00
b711cdce78
Corrections to Structural Matching
...
The texture will now be reconstructed if the width only matches on GoB
alignment.
2019-06-20 21:36:12 -03:00
bc930754cc
Implement Texture Cache V2
2019-06-20 21:36:12 -03:00
3d471e732d
Correct Surface Base and Views for new Texture Cache
2019-06-20 21:36:12 -03:00
6c410104f4
texture_cache: Remove execution context copies from the texture cache
...
This is done to simplify the OpenGL implementation, it is needed for
Vulkan.
2019-06-20 21:36:11 -03:00
1b4503c571
texture_cache: Split texture cache into different files
2019-06-20 21:36:11 -03:00