Commit Graph
189 Commits
Author SHA1 Message Date
Unknown W. Brackets 469d8a6a41 GPU: Screenshot output in BGRA if that's native.
This is a decent chunk faster.
2018-06-16 13:48:50 -07:00
Unknown W. Brackets c97023568c thin3d: Fix requesting BGRA buffers.
Should be fine to request BGRA->BGRA.

Also, the reverse flags were wrong/ignored on the format.
2018-06-16 13:31:08 -07:00
Unknown W. Brackets 2f859425a8 GPU: Use unordered_map for tempFBOs. 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
LunaMoo ffac542f95 Change to int to allow higher supersampling scale. 2018-04-02 13:44:28 +02:00
LunaMoo 199106cad6 Add SSAA flag for post process shaders,
enforces 2x auto resolution, to be used with blurry effects
Also includes a perf. friendly example using simplified gauss filter
2018-04-01 17:00:10 +02:00
Henrik Rydgård 0ee058320a Pass new vulkan validation layers. Fix math in FindTransferFramebuffers. 2018-03-17 23:39:02 +01:00
Henrik Rydgård 4ee941dab1 Vulkan: Fix bug where we didn't always reset dynamic state after readbacks. 2018-03-16 15:52:43 +01:00
Henrik Rydgård 07afda1db0 Add an extra check to FindTransferFramebuffers to avoid misdetecting fb blits that end up out of bounds when we perform them.
Affected Burnout Legends (which would crash the Vulkan device)
2018-02-28 01:01:45 +01:00
Henrik Rydgård 7421f2aff6 Postprocessing: Fix bug where scissor cut off the image if render resolution > display resolution 2018-02-12 14:10:54 +01:00
Henrik Rydgård 86cfc411a4 Remove the confusing "DisableState" across the codebase 2018-02-08 16:27:36 +01:00
Henrik Rydgård 982a1710ae gl-render-manager: Fix postprocessing shaders. Fixes #10566. Live switching is broken though for some reason. 2018-01-31 17:23:24 +01:00
Unknown W. BracketsandHenrik Rydgård f6260c75c9 GLES: Reset blend state on clear.
Because now that resets blending parameters.
2018-01-27 15:10:17 +01:00
Unknown W. BracketsandHenrik Rydgård 4f1b8d80a9 GLES: Bind texture on MakePixelTexture().
This is currently necessary because callers expect it.  Also, move inside
render passes.
2018-01-27 15:10:17 +01:00
Henrik Rydgård 5c7c7ce192 Move GL sampler state tracking into GLRenderManager/QueueRunner. 2018-01-27 15:10:17 +01:00
Henrik Rydgård 43ebbbcdb6 More state dirtying, a comment 2018-01-27 15:10:17 +01:00
Henrik Rydgård 8a1e7347b9 GL render manager: Various fixes and cleanup including a buffered rendering fix, rect primitive fix 2018-01-27 15:10:17 +01:00
Henrik Rydgård 376d92fcc9 Start messing with the draw engine... 2018-01-27 15:10:17 +01:00
Henrik Rydgård b5e5d72a0a Complete the separation of depth and stencil renderpass flags 2017-12-30 22:52:22 +01:00
Unknown W. Brackets 0151c5e649 GPU: Track stats on uploads.
A lot can lead to slowdown, so it's useful when logging frame drops.
2017-12-28 19:27:45 -08:00
Henrik RydgårdandGitHub c1a23658d1 Merge pull request #10456 from unknownbrackets/gpu-flips
Display: Avoid limiting FPS without a clear
2017-12-27 10:14:12 +01:00
Unknown W. Brackets f9750dd137 Display: Avoid limiting FPS without a clear.
A bit of a dirty heuristic to avoid the slowdown in #8538.
2017-12-26 19:37:40 -08:00
Unknown W. Brackets d6da758ed3 GPU: Remove duplicate BACKEND constants. 2017-12-26 15:55:24 -08:00
Unknown W. Brackets 025a806ab4 GPU: Remove FBO auto-download hack.
See #6261.  This should be replaced now with block transfer detection,
which is faster and doesn't cause crashes.

Games that previously required this setting should use block transfer
instead.  If that doesn't work, it's a bug.
2017-12-25 11:17:59 -08:00
Henrik RydgårdandGitHub 138cd9e851 Merge pull request #10442 from unknownbrackets/depth-clear
GPU: Reduce depth blits when not updated
2017-12-24 22:52:35 +01:00
Unknown W. Brackets 0956fa3ff6 GPU: Reduce depth blits when not updated.
If the game initially clears the depth in a buffer, but then never uses
that depth again, don't keep blitting depth.

Improves #8538, by preventing the depth blits in this case.
2017-12-24 11:52:15 -08:00
Unknown W. Brackets 2031b2ef98 GE Debugger: Fix some crashes while stepping.
Mostly on Vulkan, but possibly on other backends.
2017-12-22 12:29:08 -08:00
Unknown W. Brackets f9ce1587cb Reporting: Skip reporting reused depthbuffers.
Basically all games do it, no longer interesting.
2017-12-01 09:38:37 -08:00
Unknown W. Brackets 0b61ffad08 GPU: Try to avoid FB download without an FBO. 2017-11-30 15:37:43 -08:00
Henrik Rydgård bc959470e5 Loosen up some asserts that seem to trigger unexpectedly... need investigation. 2017-11-29 19:07:07 +01:00
Henrik Rydgård 6ea669368c Crash reports from 5% rollout of 1.5: Make some asserts dbg_asserts for now, try to fix an issue with framebuffers when postproc is enabled. 2017-11-29 18:53:52 +01:00
Henrik Rydgård 23f7819329 Unify RebindFramebuffer, mostly. 2017-11-15 20:44:25 +01:00
Henrik Rydgård 05930ea32e MotoGP: Compat hack to disable framebuffer readbacks.
This is the only known game to copy its framebufer to RAM before display on every frame and we already have a
hack so we can display the high resolution framebuffer, but we still did the readback for no good reason.

This eliminates the readback.
2017-11-10 16:32:56 +01:00
Henrik Rydgård d618b3673b Count readbacks in a frame and show in GPU debug stats. 2017-11-08 11:57:53 +01:00
Henrik Rydgård 4f4eb6f024 Vulkan: The validation layers don't like zero-size blits. 2017-11-06 23:49:27 +01:00
Unknown W. Brackets 78b5565035 GPU: Properly Release() FBOs.
In case we end up wanting to use those reference counts, let's use the
right API.
2017-11-05 12:45:02 -08:00
Henrik RydgårdandGitHub 2f305f9841 Merge pull request #10049 from unknownbrackets/vulkan-minor
Vulkan threading tweaks and minor
2017-11-05 19:39:43 +01:00
Unknown W. Brackets efbba31608 GPU: Restore initial readback on output.
Needed when the last rendered FB needs to be downloaded.
2017-11-05 08:44:13 -08:00
Unknown W. Brackets 2ad9eb047e Vulkan: Refcount framebuffer deletes.
Fixes crash in GoW when using a thread.
2017-11-05 08:44:12 -08:00
Henrik Rydgård fc60a2692c Buildfix again. Should fix #10046 this time. 2017-11-05 13:44:23 +01:00
Henrik Rydgård eb300d715c Add <cmath> include. Will hopefully help #10046 2017-11-05 10:14:45 +01:00
Henrik Rydgård b991dd5bd3 Should be bufferWidth here, not width. Thanks unknown.
Get rid of Source.cpp, oops.
2017-11-05 10:14:33 +01:00
Henrik Rydgård 9e65ae1cef Fix issue in framebuffer size calculation when viewport is bogus in through mode. Fixes #10043. 2017-11-04 11:43:19 +01:00
Henrik Rydgård b9443e54e3 Vulkan: Minor fixes. 2017-11-03 00:03:35 +01:00
Henrik Rydgård 8d0209c7e4 Stop leaking framebuffers on shutdown. Fix other shutdown issues. 2017-11-01 21:43:08 +01:00
Henrik Rydgård 41089ca284 Small fix for a bad block transfer in Soul Calibur 2017-11-01 14:43:00 +01:00
Henrik Rydgård 6253280fba Delete superfluous bind of temporary render target on creation. 2017-10-31 12:34:31 +01:00
Henrik Rydgård 12f8580984 Assorted fixes 2017-10-26 10:57:00 +02:00
Henrik Rydgård 85cb604a24 Fix (some) crashes on blits. Validation issues remain. 2017-10-26 10:57:00 +02:00
Henrik Rydgård 02f76ae4a8 Rendering basics now works. 2017-10-26 10:56:59 +02:00