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
Henrik Rydgård
c1d32e8b3e
D3D11: Better set current texture to null first, otherwise we can run into another issue.
2020-05-10 23:42:52 +02:00
Henrik Rydgård
73c253e2ac
D3D11: Fix a bind ordering issue in depal (only a problem with debug layer enabled)
2020-05-10 23:10:57 +02:00
Unknown W. Brackets
ef43ec5f33
GPU: Split up software transform into phases.
2020-05-08 23:09:24 -07:00
Unknown W. Brackets
4ea5d165f5
D3D11: Always use accurate depth.
...
The Direct3D APIs use a "min" and "max" value, and it's required that min
must be less than or equal to max. If this requirement is not met, the
viewport parameters are not updated.
We forced accurate depth on for NVIDIA and AMD, but this just meant Intel
was still broken and less people were reporting bugs about it.
Although the PSP GE has depth viewport transform, this is not used for
clipping and is not actually the depth range. The minz and maxz GE
registers are the depth range, and minz must be less than or equal to maxz
for drawing to occur.
2020-04-18 22:34:33 -07:00
Unknown W. Brackets
ac60e2ecd4
GPU: Track HW tess at start of frame too.
...
This also makes it so we don't force the setting off when you change
backends, and just ignore it if unsupported.
2020-04-04 11:52:32 -07:00
Unknown W. Brackets
c42fb72419
GPU: Update uniforms w/ consistent render mode too.
2020-04-04 11:03:07 -07:00
Unknown W. Brackets
ad98609819
GPU: Use consistent buffered rendering state.
...
The setting can be changed in Qt and Windows between frames, so let's
track the current setting in most places. This is everywhere fbman is
easily accessible.
2020-04-04 10:51:47 -07:00
Unknown W. Brackets
cebcfb1bbd
GPU: Use old frame when presenting a skip.
...
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets
3c1e8abcfe
GPU: Centralize vsync interval logic.
...
We already do unthrottle checking here.
2020-02-29 22:27:00 -08:00
Henrik Rydgård
767b1e45b2
Fix the build - there's a Vec3 name collision, fixed it using a namespace.
2019-10-22 22:58:10 +02:00
vnctdj
0ec0c6eb92
Remove the related #include
...
Following https://github.com/hrydgard/ppsspp/pull/12030
Oops, I forgot to check if it was still needed...
2019-05-12 16:38:37 +02:00
vnctdj
80807675f1
Delete 2 unused i18n category pointer declarations
2019-05-11 23:47:37 +02:00
driver1998
010b07b2df
Fix a crash on DirextX 11 with Feature Level <= 9_3 hardware
...
Mobile usually uses 9_3 or lower hardware.
The same issue happens on x64 as well, so it might be a universal one, not limited to ARM or UWP.
2019-05-04 22:45:16 +08:00
Unknown W. Brackets
c5b844cc98
GPU: Respect stencil write mask on clear.
...
Actually identified this for the softgpu in #11319 , but applying it for
RGBA is a problem in most renderers. Forgot to at least apply it to
stencil.
Fixes #11901 .
2019-03-16 19:42:18 -07:00
Henrik Rydgård
8e7da3fef4
Disable vertex range culling when the depthrange hack is enabled. Temporary workaround for #11576 .
2019-02-26 16:07:11 +01:00
Henrik Rydgard
5aed2a2cee
Gate fewer effects behind "Disable slow framebuffer effects".
2019-02-08 15:02:31 +01:00
Henrik Rydgard
9736bc431a
The block transfer setting should not affect clearing memory behind a render target, especially since that's already gated behind a compat flag.
2019-02-08 14:46:16 +01:00
Henrik Rydgard
fdd0d7acb4
More Vulkan validation fixes
...
NVIDIA no longer uses nVidia capitalization.
2019-02-05 18:07:11 +01:00
Henrik Rydgård
8e17caf351
Merge pull request #11694 from unknownbrackets/draw-bugs
...
Vulkan: Limit stencil workaround to Adreno 5xx
2018-12-26 20:46:09 +01:00