Henrik Rydgård
898716cc26
Unify DownloadFramebufferForClut
2017-10-18 12:34:01 +02:00
Henrik Rydgård
981c49615c
Unify FlushBeforeCopy. Remove old dummy methods from Vulkan framebuffer manager.
2017-10-18 12:26:02 +02:00
Henrik Rydgård
0d85f86e2d
Add some safety checks. Fix some inadvertent Y-flips (bit hacky).
2017-10-18 11:40:07 +02:00
Henrik Rydgård
4e3a9bc3e3
Unify some more framebuffer functions. Leave the GL stuff alone for now due to async.
2017-10-18 11:20:58 +02:00
Henrik Rydgård
f2ea0ce472
Unify (well, almost) GetOutputFramebuffer (D3D11/GL)
2017-10-18 10:54:26 +02:00
Henrik Rydgård
214270d192
Unify GetDepthBuffer/GetStencilBuffer in GL/D3D11
2017-10-18 10:54:26 +02:00
Henrik Rydgård
9b1ee6fce6
Unify GetFramebuffer in GLES and D3D11.
...
D3D9 is left behind for now, and Vulkan still needs implementation - got a branch with initial work towards that.
2017-10-11 13:39:34 +02:00
LunaMoo
5b75d2af20
Add uniform to make post process aware of videos.
...
And an example effect ~ subtle AA in-game/heavy smoothing for videos.
2017-09-13 08:13:51 +02:00
Unknown W. Brackets
55ef501739
GPU: Dirty viewport on RT width/height change.
...
Fixes #9959 .
2017-09-09 20:46:03 -07:00
Unknown W. Brackets
96ed8564ab
Add some missing fragment shader state changes.
2017-08-14 11:36:07 +02:00
Henrik Rydgard
078e1151f9
Dirty-flag the fragment shader ID.
2017-08-14 11:36:07 +02:00
Henrik Rydgard
4e55654522
Add some missing VIEWPORTSCISSOR dirtying.
2017-08-14 11:35:11 +02:00
Unknown W. Brackets
aa2269020a
Dirty viewport state on framebuf resize.
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e439055a32
All: Only convert raster state if dirty
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e2b179d6e2
All: Only convert depth stencil state if dirty
2017-08-14 11:14:26 +02:00
Henrik Rydgard
e4567c694c
All: Only convert blend state if "dirty"
2017-08-14 11:14:26 +02:00
Unknown W. Brackets
d6affac72d
GPU: Correct 1080p/720p crop for ultrawide/similar.
...
If the display is 1280x1080 or 2560x1080, we don't want to stretch width.
2017-07-30 08:32:49 -07:00
Unknown W. Brackets
41b485aa0a
Core: Refactor repeating disc id homebrew code.
2017-06-03 15:29:08 -07:00
Henrik Rydgård
0ac979505c
Fixes for D3D11 postprocessing
2017-06-02 17:04:08 +02:00
Unknown W. Brackets
f1e9180676
Vulkan: Fix Cardboard rendering.
...
Mostly the Viewport2D flush issue, which may possibly have broken
something else.
2017-05-31 23:26:38 -07:00
Henrik Rydgård
6bd1a16c35
Merge pull request #9748 from hrydgard/delete-clearbuffer
...
Delete obsolete function ClearBuffer
2017-05-31 14:11:12 +02:00
Henrik Rydgård
cb9b63e75a
Fix scaling post-shaders on OpenGL. See #9742
2017-05-31 13:57:57 +02:00
Henrik Rydgård
2b14c6b531
Delete obsolete function ClearBuffer
2017-05-31 13:38:22 +02:00
Henrik Rydgård
3e76863b8a
Postprocessing fix after the Vulkan refactor. Should help #9742 .
2017-05-30 17:11:30 +02:00
LunaMoo
939b26475d
Fix a bunch of emu features for Homebrew by better identification.
2017-05-30 12:20:29 +02:00
Henrik Rydgård
4c8dc24834
Vulkan: Implement depth buffer copies. Not sure all the barriers are right..
2017-05-30 09:38:08 +02:00
Henrik Rydgård
e8890e3c4a
Address a bunch of review comments.
2017-05-30 09:36:17 +02:00
Henrik Rydgard
0c70735bc4
Buffered rendering is starting to work, though still kinda broken.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
2b93338255
Vulkan backend: Fix various issues, can almost run in buffered now (except the final blit)
2017-05-30 09:36:17 +02:00
Henrik Rydgard
32728553bd
Further steps towards Vulkan framebuffer support
2017-05-30 09:36:17 +02:00
Henrik Rydgård
a7dd6d6085
Further steps towards Vulkan framebuffer support
2017-05-30 09:36:17 +02:00
Henrik Rydgård
6bcfe539f7
Use vulkan-style clear-on-bind when switching render targets. Not optimally used yet.
...
Also removes a bunch of redundant render target binds.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
ce9e864e4b
Remove some unnecessary framebuffer binding
2017-05-30 09:36:17 +02:00
Henrik Rydgård
35aefe4a2a
BindBackBufferAsRenderTarget is now replaced with BindFramebufferAsRT(nullptr)
2017-05-30 09:36:17 +02:00
Henrik Rydgård
3b6fa9be87
Start work on separating frame from backbuffer renderpass
2017-05-30 09:36:17 +02:00
Unknown W. Brackets
d7ca05b6b5
GPU: Fix black screen on buffered render enable.
...
We were never clearing the skip flag. Has been a bug since before v1.0.
2017-04-24 12:10:08 -07:00
Unknown W. Brackets
fd4399e108
GPU: Centralize fb resize, move to begin of frame.
...
It makes more sense here, because otherwise when you change it from the UI
settings, it takes a frame to "kick in".
2017-04-24 12:02:52 -07:00
Unknown W. Brackets
6c2f87b1df
GPU: Consistently use useBufferedRendering_.
2017-04-24 11:57:16 -07:00
Unknown W. Brackets
c29f70e5e9
GPU: Attempt recreate of FBOs if failed.
2017-04-24 09:41:41 -07:00
Unknown W. Brackets
97620d4cca
GPU: Rebuild FBOs when they now have storage.
2017-04-24 09:37:54 -07:00
Unknown W. Brackets
98ba7afa83
Destroy FBOs only on actual resize.
...
As a side effect, this means going to settings won't reset all FBOs
anymore. The behavior can still be obtained by changing render resolution
or rendering mode.
This makes resizing the window faster on Windows, and resumes quicker from
pause.
2017-04-13 23:36:17 -07:00
Henrik Rydgård
0cb4344da1
Merge pull request #9603 from unknownbrackets/fb-resize
...
Fix framebuffer size flopping back and forth
2017-04-12 09:54:03 +02:00
Unknown W. Brackets
5a7ad5b176
Fix largest framebuf size in throughmode.
...
This was probably always meant to be <=, since it logically makes sense
for them to be equal.
Might fix cases of resizing down a framebuf in throughmode, where viewport
isn't as good a heuristic.
2017-04-12 00:20:50 -07:00
Unknown W. Brackets
088ced7261
Fix framebuffer size flopping back and forth.
...
If block transfers are keeping it larger, keep it larger.
2017-04-12 00:19:02 -07:00
Henrik Rydgård
a85b76e671
Merge pull request #9585 from unknownbrackets/gpu-clear
...
Skip VRAM clears when no download has been made
2017-04-10 00:51:01 +02:00
Unknown W. Brackets
4a8c661c00
Skip downloads of cleared VRAM.
...
If we've just cleared VRAM, make sure we don't also download that clear.
2017-04-09 15:19:06 -07:00
Unknown W. Brackets
fe07b14a22
Cleanup 16-bit VRAM clearing.
2017-04-09 15:12:56 -07:00
Unknown W. Brackets
70d17d1bc7
Track flags to reduce unnecessary VRAM zeroing.
...
If we haven't downloaded to RAM since the last zero, no need to zero
again. This is the most common case.
2017-04-09 15:10:07 -07:00
Unknown W. Brackets
ff14495511
Fix out-of-bounds framebuffer blit on color bind.
...
This corrects a crash reported in Persona 3 using D3D11.
2017-04-06 18:49:48 -07:00
Unknown W. Brackets
3fbb545451
Allow MakePixelTexture to use a subrange.
...
For example, if it has a larger texture it wants to reuse, it can control
this via texcoords. Let's keep it at top left, though.
2017-03-22 20:56:26 -07:00