ameerj
c81ced43ae
externals: Add only included ffx-fsr headers
...
The submodule adds a lot of unneeded bloat due its addition of samples that contain large media files that are difficult to compress.
2021-11-16 22:11:31 +01:00
Marshall Mohror
2173534da5
vulkan: Implement FidelityFX Super Resolution
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
d644a3780c
vulkan: Fix rescaling push constant usage
2021-11-16 22:11:31 +01:00
Fernando Sahmkow
7bb52ad3a7
Texture Cahe: Fix downscaling on SMO.
2021-11-16 22:11:31 +01:00
ameerj
4cbb1d0799
texture_cache_base: Remove unused function declarations
2021-11-16 22:11:31 +01:00
ameerj
4290f2101d
yuzu: Fix build errors
2021-11-16 22:11:31 +01:00
ameerj
3c0e8a57e6
vk_texture_cache: Use 3D to scale images when blit is unsupported
2021-11-16 22:11:31 +01:00
ameerj
1efc65f2d3
texture_cache: Fix infinitely recursive ImageCanRescale check
2021-11-16 22:11:31 +01:00
ameerj
311b2327cb
vk_texture_cache: Fix BlitScale of non-2D images
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
d4f9388875
texture_cache: Fix image resolves when src/dst are not both scaled
2021-11-16 22:11:30 +01:00
lat9nq
0fe6ef6109
yuzu_cmd: Read resolution_setup and scaling_filter from config
...
Also adds descriptions and the settings to the default config.
2021-11-16 22:11:30 +01:00
lat9nq
c89adcb342
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
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
83aec496da
vk_texture_cache: Fix unsupported blit format error checking
2021-11-16 22:11:30 +01:00
ameerj
52cc6f51aa
vk_texture_cache: Fix early returns on unsupported scales
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
0b0403b779
texture_cache: Refactor scaled image size calculation
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
d4f803a81b
Texture Cache: Fix calculations when scaling.
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
1ce6cd119d
rescaling_pass: Fix IR errors when unscalable texture types are encountered
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
6ca801276b
Texture Cache: Fix Rescaling on Multisample
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
fc21f37496
TextureCache: Base fixes on rescaling.
2021-11-16 22:11:30 +01:00
ameerj
63465c24e1
rescaling_pass: Logic simplification and minor style cleanup
2021-11-16 22:11:30 +01:00
ameerj
746d27372f
rescaling_pass: Scale ImageFetch offset if it exists
...
Plus some code deduplication
2021-11-16 22:11:30 +01:00
ameerj
b5ba8bec0e
rescaling_pass: Enable PatchImageQueryDimensions on fragment stages
2021-11-16 22:11:30 +01:00
ameerj
abe81f73ef
vk_texture_cache: Simplify scaled image management
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
c2174cbb8f
vk_rasterizer: Fix scaling on Y_NEGATE
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
3beae9ae77
vk_texture_cache: Minor cleanup
2021-11-16 22:11:30 +01:00
ameerj
54ecf7c8c1
rescaling_pass: Fix and simplify shuffle/fragcoord pass
2021-11-16 22:11:30 +01:00
Fernando Sahmkow
4535feac87
Shader: Don't rescale FragCoord if used by Shuffle
2021-11-16 22:11:30 +01:00
ameerj
355343d57c
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
4919d2d00f
bootmanager: Fix screenshot resolution factor usage
...
Fixes screenshots at non integer scaling
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
Fernando Sahmkow
cdbe98a4d0
Texture Cache: fix scaling on upload and stop scaling on base resolution.
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
ameerj
92bb068ad5
emit_spirv: Fix RescalingLayout alignment
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
674b073744
TextureCache: Fix Buffer Views Scaling.
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
2549ee33ee
RescalingPass: Agregate pixels on texelFetch while on Fragment Shader
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
6933f82023
Texture Cache: Correctly fix Blits Rescaling.
2021-11-16 22:11:29 +01:00
Fernando Sahmkow
dc6f13060b
shader: Fix TextureSize check on rescaling.
2021-11-16 22:11:29 +01:00