Commit graph

2643 commits

Author SHA1 Message Date
FernandoS27
74ce2f4f6f OpenGL: Fix viewport/Scissor scaling on downscaling. 2021-11-16 22:11:33 +01:00
Marshall Mohror
c2f855fb98 Presentation: Only use FP16 in scaling shaders on supported devices in Vulkan 2021-11-16 22:11:32 +01:00
ameerj
572315d46b gl_rasterizer: Fix ScissorTest and Clear when scaling 2021-11-16 22:11:32 +01:00
ameerj
904f32975e gl_texture_cache: Simplify scaling procedures 2021-11-16 22:11:32 +01:00
Fernando Sahmkow
1ecaca64b4 OpenGlTextureCache: Fix state invalidation on rescaling. 2021-11-16 22:11:32 +01:00
Marshall Mohror
598aaf3d74 OpenGL: fix FXAA with scaling 2021-11-16 22:11:32 +01:00
Marshall Mohror
be286aaa66 OpenGL: Implement FXAA 2021-11-16 22:11:32 +01:00
FernandoS27
9fa06bcc03 QtGUI: Add buttton to toggle the filter. 2021-11-16 22:11:32 +01:00
FernandoS27
f54d6dee54 VideoCore: Add gaussian filtering. 2021-11-16 22:11:32 +01:00
Fernando Sahmkow
00a337fe07 Texture Cache: fix memory managment and optimize scaled downloads, uploads. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow
c8785738b0 Texture Cache: Fix downscaling and correct memory comsumption. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow
d20bfdd9a3 Presentation: add Nearest Neighbor filter. 2021-11-16 22:11:31 +01:00
FernandoS27
a75a56e998 Texture Cache: Rescale conversions between depth and color 2021-11-16 22:11:31 +01:00
Fernando Sahmkow
2ea2bc9f01 Texture cache: Fix memory consumption and ignore rating when a depth texture is rendered. 2021-11-16 22:11:31 +01:00
ameerj
b4742306d8 video_core: Refactor resolution scale function 2021-11-16 22:11:31 +01:00
ameerj
b15c9a406f 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
d99a6e8e47 video_core: Misc resolution scaling related refactoring 2021-11-16 22:11:30 +01:00
ameerj
3efb140439 gl_texture_cache: Fix BGR pbo size for scaled textures 2021-11-16 22:11:30 +01:00
ameerj
226aeeec04 gl_texture_cache: Fix scaling backup logic 2021-11-16 22:11:30 +01:00
ameerj
0213e5353d vk_texture_cache: Use nearest neighbor scaling when available 2021-11-16 22:11:30 +01:00
ameerj
5cef89d424 gl_texture_cache: Fix depth and integer format scaling blits 2021-11-16 22:11:30 +01:00
ameerj
e2f0f51295 gl_texture_cache/rescaling_pass: minor cleanup 2021-11-16 22:11:30 +01:00
ameerj
1e67e6c225 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
8539edc252 Renderers: Unify post processing filter shaders 2021-11-16 22:11:29 +01:00
ameerj
f6e3e6651c gl_texture_cache: fix scaling on upload 2021-11-16 22:11:29 +01:00
Fernando Sahmkow
bca25d2a0f Renderer: Implement Bicubic and ScaleForce filters. 2021-11-16 22:11:29 +01:00
ameerj
02f27b1992 shader, video_core: Fix GCC build errors 2021-11-16 22:11:29 +01:00
ReinUsesLisp
d04e2dac6c shader: Properly scale image reads and add GL SPIR-V support
Thanks for everything!
2021-11-16 22:11:29 +01:00
ReinUsesLisp
928ff21aae shader: Properly blacklist and scale image loads 2021-11-16 22:11:29 +01:00
ReinUsesLisp
0100b5e700 texture_cache: Add getter to query if image view is rescaled 2021-11-16 22:11:29 +01:00
ReinUsesLisp
6e61089164 gl_texture_cache: Fix scaling blits 2021-11-16 22:11:29 +01:00
ReinUsesLisp
0d12e498ab glsl/glasm: Pass and use scaling parameters in shaders 2021-11-16 22:11:29 +01:00
ReinUsesLisp
d7178ad04e gl_rasterizer: Properly scale viewports and scissors 2021-11-16 22:11:29 +01:00
ameerj
e2a7f219e1 gl_texture_cache: Fix multi layered texture Scale 2021-11-16 22:11:29 +01:00
ameerj
650b57386a gl_compute_pipeline: Add downscale factor to shader uniforms 2021-11-16 22:11:29 +01:00
ameerj
d891de0664 gl_rasterizer: Fix rescale dirty state checking 2021-11-16 22:11:29 +01:00
ameerj
b83c3e7182 gl_graphics_pipeline: Add downscale factor to shader uniforms 2021-11-16 22:11:28 +01:00
ReinUsesLisp
dacd5da998 texture_cache: Simplify image view queries and blacklisting 2021-11-16 22:11:28 +01:00
Fernando Sahmkow
13c8573186 OpenGL: set linear mag filter when blitting a downscaled image. 2021-11-16 22:11:28 +01:00
ReinUsesLisp
7c4cd0eb06 opengl: Use Shader::NumDescriptors when possible 2021-11-16 22:11:28 +01:00
ameerj
99659cf491 gl_texture_cache: Simplify rescaling 2021-11-16 22:11:28 +01:00
ameerj
e1f1b85d64 gl_texture_cache: Implement ScaleDown 2021-11-16 22:11:27 +01:00
ameerj
7d1f24e490 gl_texture_cache: Rescale fixes for multi-layered textures 2021-11-16 22:11:27 +01:00
ameerj
e7867b26ff renderer_gl: Resolution scaling fixes 2021-11-16 22:11:27 +01:00
Fernando Sahmkow
835110d72c Texture Cache: More rescaling fixes. 2021-11-16 22:11:27 +01:00
ameerj
b3cedc87b9 gl_texture_cache: WIP texture rescale 2021-11-16 22:11:27 +01:00
Fernando Sahmkow
256c4b28c4 Texture Cache: Implement Vulkan UpScaling & DownScaling 2021-11-16 22:11:27 +01:00
Fernando Sahmkow
7a957d501f VideoCore: Initial Setup for the Resolution Scaler. 2021-11-16 22:11:27 +01:00
Morph
c5b0836c96 gl_rasterizer: Remove unused includes
This removes unused includes, especially the core includes which were causing this file to be recompiled every time files included by those headers are modified.
2021-10-31 23:57:51 -04:00
lat9nq
5167b19cd6 gl_device: Force GLASM on NVIDIA drivers 495-496
GLSL shaders currently do not render correctly on the recent NVIDIA
drivers. This adds a check that forces assembly shaders for these
drivers since they seem unaffected and adds a warning informing of the
decision.

Developers can disable the check by enabling graphics debugging.
2021-10-28 19:38:49 -04:00