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
ameerj
6cfd975469
settings: Remove std::chrono usage
...
Alleviates the dependency on chrono for all files that include settings.h
2021-10-17 00:37:49 -04:00
ameerj
20a88d9d62
gpu: Migrate implementation to the cpp file
2021-10-03 00:35:57 -04:00
bunnei
d08fdea916
Merge pull request #7061 from ameerj/dma-buffer-misc
...
buffer_cache, maxwell_dma: Minor refactoring and code fixes
2021-09-30 12:34:28 -07:00
bunnei
d905feb0c0
Merge pull request #7036 from ameerj/ogl-bgr-v2
...
gl_texture_cache: Unify BGR copy passes using PBOs
2021-09-29 16:10:56 -07:00
ameerj
73dd6230aa
buffer_cache: Minor fixes
...
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
2021-09-19 20:35:07 -04:00
ameerj
933b5dff61
host_shaders: Remove opengl_copy_bgra.comp
2021-09-16 19:49:13 -04:00
ameerj
6aaf430d15
gl_texture_cache: Migrate BGRCopyPass from util_shaders
...
The BGR copies no longer use shaders.
2021-09-16 19:49:12 -04:00
ameerj
6af2ea8253
util_shaders: Unify BGRA copy passes
2021-09-15 21:10:52 -04:00
Morph
653acf39e2
renderers: Log total pipeline count
2021-09-14 13:18:26 -04:00