ameerj
ebf36f23dd
vk_texture_cache: Use 3D to scale images when blit is unsupported
2021-11-16 22:11:31 +01:00
ameerj
4de584005f
texture_cache: Fix infinitely recursive ImageCanRescale check
2021-11-16 22:11:31 +01:00
ameerj
b1ae935f11
vk_texture_cache: Fix BlitScale of non-2D images
2021-11-16 22:11:31 +01:00
ameerj
abd07e4158
video_core: Refactor resolution scale function
2021-11-16 22:11:31 +01:00
ameerj
b14f2c7c82
texture_cache: Fix image resolves when src/dst are not both scaled
2021-11-16 22:11:30 +01:00
lat9nq
1c93476a80
video_core,yuzu: Move UpdateRescalingInfo call to video_core
...
This only needs to happen once per game boot, so we can just call it
during CreateGPU and be done with it, avoiding the need to call it in
the frontends.
2021-11-16 22:11:30 +01:00
ameerj
3233fa5dc8
gl_texture_cache: Disable scissor test when scaling textures
...
Fixes a bug on BOTW where some objects were no longer being rendered after blitting
2021-11-16 22:11:30 +01:00
ameerj
89a7e566c7
vk_texture_cache: Fix unsupported blit format error checking
2021-11-16 22:11:30 +01:00
ameerj
f8339cd703
vk_texture_cache: Fix early returns on unsupported scales
2021-11-16 22:11:30 +01:00
ameerj
31478c6c1b
video_core: Misc resolution scaling related refactoring
2021-11-16 22:11:30 +01:00
ameerj
88ef04dbaf
texture_cache: Refactor scaled image size calculation
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
237a43004f
Texture Cache: Fix calculations when scaling.
2021-11-16 22:11:30 +01:00
ameerj
e0a3830855
gl_texture_cache: Fix BGR pbo size for scaled textures
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
ea82bd4b7e
Texture Cache: Fix Rescaling on Multisample
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
19ca0c9ab5
TextureCache: Base fixes on rescaling.
2021-11-16 22:11:30 +01:00
ameerj
36f261edef
vk_texture_cache: Simplify scaled image management
2021-11-16 22:11:30 +01:00
ameerj
8183142cd4
gl_texture_cache: Fix scaling backup logic
2021-11-16 22:11:30 +01:00
ameerj
122ddeb7ff
vk_rasterizer: Fix scaling on Y_NEGATE
2021-11-16 22:11:30 +01:00
ameerj
16017ac450
vk_texture_cache: Use nearest neighbor scaling when available
2021-11-16 22:11:30 +01:00
ameerj
27af298e78
gl_texture_cache: Fix depth and integer format scaling blits
2021-11-16 22:11:30 +01:00
ameerj
b027fac794
gl_texture_cache/rescaling_pass: minor cleanup
2021-11-16 22:11:30 +01:00
ameerj
c8a971be91
vk_texture_cache: Minor cleanup
2021-11-16 22:11:30 +01:00
ameerj
6000fe69a4
image_info: Mark MSAA textures as non-rescalable
...
Blitting or resolving multisampled images requires the dimensions of the src and dst to be equal for valid usage, making them difficult for resolution scaling using the current implementation.
2021-11-16 22:11:30 +01:00
ameerj
fcf2b2c78a
gl_texture_cache: Simplify scaling
...
We don't need to reconstruct new textures every time we ScaleUp/ScaleDown. We can scale up once, and revert to the original texture whenever scaling down.
Fixes memory leaks due to glDeleteTextures being deferred for later handling on some drivers
2021-11-16 22:11:29 +01:00
ameerj
ae8d19d17e
Renderers: Unify post processing filter shaders
2021-11-16 22:11:29 +01:00
ameerj
29710f3250
gl_texture_cache: fix scaling on upload
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
a6b88e85bf
Renderer: Implement Bicubic and ScaleForce filters.
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
c5bbbf3902
Texture Cache: fix scaling on upload and stop scaling on base resolution.
2021-11-16 22:11:29 +01:00
ameerj
68e038404c
shader, video_core: Fix GCC build errors
2021-11-16 22:11:29 +01:00
ameerj
65781f88f8
emit_spirv: Fix RescalingLayout alignment
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
d7c9792169
TextureCache: Fix Buffer Views Scaling.
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
4b1393a691
Texture Cache: Correctly fix Blits Rescaling.
2021-11-16 22:11:29 +01:00
ameerj
ed675cfd8c
texture_cache: Disable dst_image scaling in BlitImage
...
Fixes scaling in Super Mario Party
2021-11-16 22:11:29 +01:00
ameerj
dc28284437
emit_spirv: Fix RescalingLayout alignment
2021-11-16 22:11:29 +01:00
ReinUsesLisp
e66d5b88a6
shader: Properly scale image reads and add GL SPIR-V support
...
Thanks for everything!
2021-11-16 22:11:29 +01:00
ReinUsesLisp
fc9bb3c3fe
shader: Properly blacklist and scale image loads
2021-11-16 22:11:29 +01:00
ReinUsesLisp
c7a1cbad44
texture_cache: Add getter to query if image view is rescaled
2021-11-16 22:11:29 +01:00
ReinUsesLisp
526e47f148
vk_rasterizer: Minor style change
2021-11-16 22:11:29 +01:00
ReinUsesLisp
c9238555f7
gl_texture_cache: Fix scaling blits
2021-11-16 22:11:29 +01:00
ReinUsesLisp
cfeb161c7e
glsl/glasm: Pass and use scaling parameters in shaders
2021-11-16 22:11:29 +01:00
ReinUsesLisp
4a512d6827
gl_rasterizer: Properly scale viewports and scissors
2021-11-16 22:11:29 +01:00
ameerj
05d98d9bbf
gl_texture_cache: Fix multi layered texture Scale
2021-11-16 22:11:29 +01:00
ameerj
b6060873ce
gl_compute_pipeline: Add downscale factor to shader uniforms
2021-11-16 22:11:29 +01:00
ameerj
9bc7b04ca5
gl_rasterizer: Fix rescale dirty state checking
2021-11-16 22:11:29 +01:00
ameerj
f086c82e1f
gl_graphics_pipeline: Add downscale factor to shader uniforms
2021-11-16 22:11:28 +01:00
ReinUsesLisp
2182d25750
texture_cache: Fix blacklists on compute
2021-11-16 22:11:28 +01:00
ReinUsesLisp
56ccda1d99
texture_cache: Simplify image view queries and blacklisting
2021-11-16 22:11:28 +01:00
Fernando Sahmkow
48d81506a3
Vulkan: Fix downscaling Blit.
2021-11-16 22:11:28 +01:00
Fernando Sahmkow
07c564f38b
Texture Cache: Implement Rating System.
2021-11-16 22:11:28 +01:00
Fernando Sahmkow
cee7eba64e
OpenGL: set linear mag filter when blitting a downscaled image.
2021-11-16 22:11:28 +01:00