Commit Graph
118 Commits
Author SHA1 Message Date
Henrik Rydgård 506a86300d More explicit invalidation of any cached state in Thin3D. Fixes #13307 2020-08-22 00:30:29 +02:00
Henrik Rydgård 5d64fc5ff1 Switch to PPSSPP's assert functions (don't use the system's) 2020-08-16 10:01:10 +02:00
Henrik Rydgård c41f875df4 Remove base/logging.h in a whole lot more places. 2020-08-15 19:09:00 +02:00
Henrik Rydgård 131a1eedfb Vulkan: Make sure textures/samplers are unbound at the end of PresentationCommon::CopyToOutput.
Validation caught an issue where old stuff lingered in sampler 1 and texture 1.

Bug probably introduced in #12921, but could also be others.
2020-07-13 23:32:37 +02:00
Henrik Rydgård 370678c498 Do a similar thing for D3D (let the backend handle the dirtying). 2020-05-24 20:57:59 +02:00
Henrik Rydgård fabe987c8f Add a name tag for all render steps (GL/Vulkan). Helps with debugging and should be cheap enough (a single pointer per "step"). 2020-05-21 11:24:05 +02:00
Henrik Rydgård e64fdfa0c3 Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932 2020-05-19 20:53:51 +02:00
Henrik Rydgård 4bf92a66c5 Thin3D: use 16-bit indices. Fixes #12898. 2020-05-15 18:07:07 +02:00
Unknown W. Brackets 8b4821bc05 Draw: Small optimization to callback.
This allows the callback to say "I didn't copy, please copy for me."  This
helps when additional conversions will be applied during the copy, or a
copy can be skipped.

Also, fixed a couple cases of the wrong mip level being used.
2020-05-13 20:30:24 -07:00
Unknown W. Brackets cb0f8cb373 D3D11: Allow pixel shader uniforms in Draw. 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 b91b7aaa0a Draw: Enable backwards compat on D3D11 shaders.
To match/support postshaders.
2020-05-13 18:07:25 -07:00
Unknown W. Brackets 9b8157f624 Draw: Allow specifying a tag on shaders.
This way they are not always "thin3d" when using Draw.
2020-05-13 18:07:25 -07:00
Henrik Rydgård 70c0a12b2b Fix name collision on iOS build 2019-10-13 21:25:16 +02:00
Henrik Rydgård 87c1ce6fa2 Vulkan: Move viewport/scissor rotation to the QueueRunner instead of RenderManager. Add some checks. 2019-10-13 21:25:16 +02:00
Henrik Rydgård e943724905 Vulkan: Apply the desired pretransform when drawing to the backbuffer.
This should save a lot of memory bandwidth on mobile devices that can't
rotate images natively in the display engine. Fixes #12099.
2019-06-21 09:38:51 +02:00
Henrik Rydgård 54c6c148fb Detect PCI device ID where available (not in GL?) 2019-02-06 22:43:31 +01:00
Henrik Rydgård c2319cd6d1 thin3d: Make the stencil ref value dynamic state (all APIs support this directly). 2018-12-19 13:48:58 +01:00
Henrik Rydgård a135dc1547 thin3d: Remove unused shader language support 2018-12-18 14:29:48 +01:00
Unknown W. Brackets b7d84926fa D3D11: Enable depth clamping.
Uses the same logic as Vulkan, improving #9545 on most D3D11 devices.
2018-09-18 21:49:17 -07:00
Henrik Rydgård 8ee3cd52e8 D3D11: Allow the user to select rendering device. 2018-06-06 10:20:12 +02:00
Unknown W. Brackets f369086987 D3D11: Fix crash on screenshot. 2018-05-31 00:04:40 -07:00
Henrik Rydgård a3bbe87914 D3D11 CopyFBToMemory: Clamp rect to fb size. Last-minute style fix, should really debug where the bad parameters came from.
Affects MGS Peace Walker intro
2018-05-03 23:12:39 +02:00
aliaspider 808bf8e681 Libretro: add experimental D3D11 support. 2018-03-25 23:07:02 +01:00
aliaspider 54d9406713 fix mingw and msvc cmake builds. 2018-03-23 03:18:13 +01:00
aliaspider 15c4406df7 add missing inclues. 2018-03-22 22:14:19 +01:00
aliaspider a5b5308d88 fix return value / plug leak. 2018-03-22 22:12:19 +01:00
Henrik Rydgård b5e5d72a0a Complete the separation of depth and stencil renderpass flags 2017-12-30 22:52:22 +01:00
Henrik Rydgård e6be86ce74 ARM buildfix 2017-11-22 11:01:42 +01:00
Henrik Rydgård 2c86217552 Cleanup GPU vendor detection a bit, use it to avoid the issue mentioned in #9545 2017-11-21 16:19:28 +01:00
Henrik Rydgård 97dced543e Share the conversion code between vulkan and D3D, fixing the missing format thing. 2017-10-29 14:42:51 +01:00
Henrik Rydgård 613cc46285 Remove a bad check making us use the wrong way to copy depth buffers. Add a cap so we can try to unify BlitFramebufferDepth later. 2017-10-26 10:57:00 +02:00
Henrik Rydgård 0a0494ef8e It builds! With some shortcuts, of course. 2017-10-26 10:56:59 +02:00
Henrik Rydgård 017d3da067 Allow D3D9 context creation to bail if shader compilation fails (D3D9 runtime not installed).
Fixes an issue where after switching to D3D9 on a PC without the D3D9 runtime, it's impossible to start PPSSPP anymore.
2017-10-20 11:53:07 +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 f2ea0ce472 Unify (well, almost) GetOutputFramebuffer (D3D11/GL) 2017-10-18 10:54:26 +02:00
Henrik Rydgård f220c74037 Remove comment, add check. 2017-10-16 16:28:27 +02:00
Henrik Rydgård ad4bc3f9f4 Address review comments. 2017-10-16 14:32:26 +02:00
Henrik Rydgård 4350ee153c D3D11: Fix a bug, add depth/stencil support to CopyFramebufferToMemorySync 2017-10-11 15:12:41 +02:00
Henrik Rydgård 62972cb891 D3D11: Move to CopyFramebufferToSync where easily possible. 2017-10-11 13:34:31 +02:00
Henrik Rydgård 16e68aa7c7 Get rid of BindFramebufferForRead 2017-10-10 14:49:07 +02:00
Henrik Rydgård 5f6e0feacb D3D11: Fix Star Ocean again (wasn't clearing stencil properly) 2017-06-09 14:50:39 +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 35aefe4a2a BindBackBufferAsRenderTarget is now replaced with BindFramebufferAsRT(nullptr) 2017-05-30 09:36:17 +02:00
Unknown W. Brackets 022de0d45a D3D11: Fix initialization of mipmaps. 2017-05-13 17:31:21 -07:00
Henrik Rydgård c899882034 Fix issues with software GPU on D3D11 2017-04-11 12:53:11 +02:00
Henrik Rydgård c0f6a24a21 Fix issue where we were a little too aggressive when eliminating calls to SetRenderTarget 2017-03-23 10:02:28 +01:00
Henrik Rydgard dfc0b32733 More work on UWP upbring 2017-03-23 10:02:27 +01:00
Henrik Rydgård f4a0c4504f Fixes to GPU system information. Fixes #9434 2017-03-16 09:48:10 +01:00
Henrik Rydgård d93e118496 D3D11: Avoid doing redundant framebuffer switch calls 2017-03-13 13:55:29 +01:00