Commit graph

100 commits

Author SHA1 Message Date
Unknown W. Brackets
22e46b51c2 GPU: Centralize DestroyAllFBOs().
This cleans up the postshader update code.
2020-05-13 18:15:04 -07:00
Unknown W. Brackets
2faab0e082 GPU: Use postshader for direct VRAM draws again.
Also centralize the pixel texture code while at it.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
762b656ea2 GPU: Use a texture directly for MakePixelTexture.
This makes it easier to do things with it.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
fa6544b737 GPU: Cleanup leftover postshader stuff. 2020-05-13 18:10:09 -07:00
Unknown W. Brackets
cb94487a16 GPU: Move post shader handling to new class.
Currently, Vulkan is not working properly and direct (RAM -> output) is
not hooked up.  But in general, it works.
2020-05-13 18:10:06 -07:00
Unknown W. Brackets
d39b0bdca2 GPU: Split FramebufferCommon into two classes.
Only some things moved over so far.

FramebufferCommon does too much, we want to share it with softgpu without
all the buffer management stuff.
2020-05-13 18:07:22 -07:00
Unknown W. Brackets
16d7a80980 GPU: Clear alpha more consistently from 565.
Before, the backends all did different things.  Now they are more in sync,
but Vulkan still behaves slightly differently.

Fixes #11326.
2018-08-30 21:00:21 -07:00
Unknown W. Brackets
2ab1552f2d D3D9: Use an unordered_map for offscreen.
Also cleanup.  Mostly just for consistent usage.
2018-06-06 05:56:30 -07:00
Unknown W. Brackets
8d07e6d985 GPU: Prevent temp FBOs from overwriting each other.
Sometimes we'd use two temp FBOs in the same draw (e.g. shader blending +
depal.)  This could cause the same temp FBO to get used for two purposes,
causing weird behavior.
2018-05-06 08:57:44 -07:00
Henrik Rydgård
86cfc411a4 Remove the confusing "DisableState" across the codebase 2018-02-08 16:27:36 +01:00
Henrik Rydgård
23f7819329 Unify RebindFramebuffer, mostly. 2017-11-15 20:44:25 +01:00
Henrik Rydgård
d53c88456a Unify GetFramebufferList() (trivial) 2017-10-18 12:49:15 +02:00
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
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
6a1fa728d8 Remove Globals.h 2017-08-31 17:15:22 +02: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
2b14c6b531 Delete obsolete function ClearBuffer 2017-05-31 13:38:22 +02: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
030f803002 Remove unused parameter to DestroyAllFBOs(). 2017-04-13 23:07:21 -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
Henrik Rydgard
700e533622 Minor D3D9 cleanups 2017-03-02 12:29:23 +01:00
Henrik Rydgard
68ba3070bc D3D11: Add enough debug readback support to support savestate thumbnails 2017-02-18 00:27:32 +01:00
Henrik Rydgard
0e8aeaea3a D3D11: Implement basic framebuffer readback.
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
Henrik Rydgard
e83dd2b524 Minor cleanup, elimintate some bind ordering hazards that D3D11 warns about 2017-02-17 14:31:02 +01:00
Henrik Rydgard
68c5a6c517 Unify CopyDisplayToOutput 2017-02-15 23:24:25 +01:00
Henrik Rydgard
23762ef89f Unify DrawFramebufferToOutput 2017-02-15 23:11:46 +01:00
Henrik Rydgard
26f208a212 Unify "DrawPixels" 2017-02-15 23:06:22 +01:00
Henrik Rydgard
84e6054b23 More work towards unifying CopyDisplayToOutput 2017-02-15 22:48:23 +01:00
Henrik Rydgard
cba37e54d0 Preparations for unifying CopyDisplayToOutput 2017-02-15 22:47:50 +01:00
Henrik Rydgard
7652bc2d8b Declare DrawActiveTexture in FramebufferCommon 2017-02-15 22:47:49 +01:00
Henrik Rydgard
5c69878ccb Unify ResizeFramebufFBO 2017-02-07 00:38:12 +01:00
Henrik Rydgard
27d5c5a2d4 Unify NotifyRenderFramebufferSwitched 2017-02-07 00:29:02 +01:00
Henrik Rydgard
19868b5df7 Unify GetTempFBO 2017-02-07 00:24:38 +01:00
Henrik Rydgard
275f9248a1 Preparing to unify the DrawActiveTexture API 2017-02-07 00:08:45 +01:00
Henrik Rydgard
89763efe57 Unify SetNumExtraFBOs 2017-02-07 00:08:45 +01:00
Henrik Rydgard
9e644aa815 Unify NotifyRenderFramebufferUpdated 2017-02-07 00:08:45 +01:00
Henrik Rydgard
85ec96ecf1 Unify NotifyRenderFramebufferCreated 2017-02-07 00:08:45 +01:00
Henrik Rydgard
a0992cce75 Unify DestroyFramebuf() 2017-02-07 00:08:45 +01:00
Henrik Rydgard
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
9c275730c5 Move pD3DDevice into dx_state.h. 2017-02-05 20:46:26 +01:00
Henrik Rydgard
5b49c2f840 DX9 cleanup: Remove more stuff from global.cpp 2017-02-05 20:13:48 +01:00
Henrik Rydgard
d05ef4a859 Pass through the DrawContext to texturecaches and fb managers.
This is preparation for sharing more framebuffer code between the
backends.
2017-02-05 19:51:50 +01:00
Henrik Rydgard
1c5ad71f60 Further minor DX9 code cleanups 2017-02-05 19:42:54 +01:00
Henrik Rydgard
3ceb0a8540 Some simple renaming 2017-02-04 11:47:19 +01:00
Henrik Rydgard
7634ff7f09 Centralize a few more functions, fix DX9 2016-12-21 18:51:19 +01:00
Unknown W. Brackets
4d0c457ddc Cleanup display vs. output screenshot terminology. 2016-09-25 16:35:43 -07:00
Unknown W. Brackets
fa0e88f1b7 Add a flag to use the display vfb for screenshots.
This fixes proportions of reporting, savestate screenshots, and TAS
recording for PS1 ports, mainly.
2016-09-25 16:32:18 -07:00
Unknown W. Brackets
c9a9fc5e44 Allow block transfers to resize framebuffers.
Helps the ending video in Valkyrie Profile.  See #6008.
2016-07-24 15:58:06 -07:00