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
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
Unknown W. Brackets
21ac3ca7a4
Draw: Fix textures and samplers at an offset.
2020-06-12 12:35:37 -07: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
8fdc557040
D3D9: Attempt PS/VS 3.0 if it doesn't work with 2.
...
So that postshaders can work. Downside is, if we write a UI shader that
requires 2.0, we may not notice... but I think the risk is not that high.
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
ddd3af2297
Draw: Actually use the index offset parameter.
...
I'm not sure we need it, but having a param used only on one backend is
confusing.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
c025eab86e
Draw: Add more uniform types.
...
Only because we might have float a[2]; float b[2];...
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
796539ad7f
DarkStalkers: Fix display in the D3D backends. Still broken in OpenGL.
2019-10-27 20:54:36 +01:00
driver1998
21d2008676
Use D3DCompiler_47.dll for D3D9 context.
2019-05-12 11:17:10 +08: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
Henrik Rydgård
ca0fb77080
Assorted cleanups. Don't assert on no clear mask.
2018-04-06 23:29:44 +02: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
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
21d3c54401
Have GetFramebufferDimensions return the backbuffer size for null in all backends.
2017-10-20 11:11:04 +02:00
Henrik Rydgård
16e68aa7c7
Get rid of BindFramebufferForRead
2017-10-10 14:49:07 +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
259af56ee6
SoftGPU: Fix rendering when using Direct3D 9.
...
Since we restore dxstate when setting a framebuffer or backbuffer, we need
something that populates it.
2017-05-20 21:29:09 -07:00
Henrik Rydgård
f4a0c4504f
Fixes to GPU system information. Fixes #9434
2017-03-16 09:48:10 +01:00
Henrik Rydgard
8a8360ef96
Reintroduce mipmaps for images in the UI like screenshots (D3D11, OpenGL, D3D9)
2017-03-12 16:30:53 +01:00
Henrik Rydgard
042d09a049
Fix #9390 , also unbreak D3D11 screenshots
2017-03-05 20:30:39 +01:00
Henrik Rydgard
5de190a45f
D3D11: Move the responsibility for the swapchain out of the DrawContext so it can be used with differently-managed D3D like with UWP.
...
Minor cleanups.
2017-02-27 10:10:24 +01:00
Henrik Rydgard
f24b1495ba
Assorted texture format cleanup, prep for supporting D3D11 on Win7
2017-02-22 16:23:04 +01:00
Henrik Rydgard
b94ad12aea
D3D9: Use D3DLOCK_DISCARD when updating whole textures, may be a small speedup
2017-02-21 11:35:06 +01:00
Henrik Rydgard
fd20788a67
Missing initialization, warning fixes, fix display of tabs in fast text drawing
2017-02-20 11:21:07 +01:00
Henrik Rydgard
eabcb22623
Refactor away SetImageData
2017-02-19 11:02:24 +01:00
Henrik Rydgard
6a09d45aee
D3D11: Add proper checks for B4G4R4A4 format support. Not yet using the checks.
2017-02-18 01:41:08 +01:00
Henrik Rydgard
5c918da774
Minor cleanups (combined two identical enums, misc)
2017-02-15 11:06:59 +01:00
Henrik Rydgård
6033b1ee05
D3D11: Some cleanup. Fix backface culling. Wipeout still looks weird...
2017-02-12 18:29:58 +01:00
Henrik Rydgård
abbd6cb1d1
Fix DrawActiveTexture, now Buffered Rendering is starting to work
2017-02-12 11:20:55 +01:00
Henrik Rydgard
096018a163
Texcache: Unify AttachFramebuffer, misc
2017-02-08 15:37:40 +01:00
Henrik Rydgard
82f8bfeb66
DrawContext: Remove the old way of setting uniforms
2017-02-08 13:07:38 +01:00
Henrik Rydgard
9bdae8f32e
DrawContext: Use uniform buffers on all platforms (simulated where necessary)
2017-02-08 12:55:58 +01:00
Henrik Rydgard
fe1b593c15
DrawContext: Initial implementation of dynamic UBO support
2017-02-08 12:26:48 +01:00
Henrik Rydgard
41fecc8c16
More D3D11 basics. Only dynamic constant buffers left, then it should display the UI.
2017-02-07 19:45:09 +01:00
Henrik Rydgard
d78d3bb25f
Change the API for updating buffers from the CPU to be cleaner
2017-02-07 19:04:44 +01:00