Henrik Rydgård
0e3a84b4a8
Move most GPU things to Common.
...
It works after the move, on Windows and Android at least.
Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
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
fbf6008a03
Set debug names for more framebuffers and textures
2020-08-09 09:36:54 +02:00
Henrik Rydgård
2f5de1987e
Allow passing in an object name tag when creating framebuffers
2020-08-09 09:36:45 +02:00
Unknown W. Brackets
5c1bb52ce6
Merge pull request #13221 from hrydgard/android-minor-cleanup
...
Android: Various minor cleanup
2020-07-29 02:51:50 -04:00
Henrik Rydgård
06d57b1656
GL: Add some paranoid checks. Remove a useless option.
2020-07-28 14:24:36 +02:00
Henrik Rydgård
51f080dfd0
Remove unnecessary vector from thin3d_gl texture handling.
2020-07-27 18:22:23 +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
Unknown W. Brackets
2e05d22eb7
Vulkan: Move Harvest Moon fix to Draw::Bugs.
...
Also, make it so you can skip using ini settings.
2020-05-19 22:12:30 -07: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
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
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
6c8186d046
Remove unused textureswizzle support (we use shaders instead). Universally support presenting 5551 format directly.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
796539ad7f
DarkStalkers: Fix display in the D3D backends. Still broken in OpenGL.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
58568632e8
Software renderer: Use hardware color conversion on Vulkan in 5551 16-bit mode
2019-10-27 20:54:36 +01: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
Henrik Rydgård
ab3c9fc21f
Vulkan: Move scissor/viewport rotation into the VulkanRenderManager. Fixes #12303 .
2019-09-03 23:26:44 +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 Rydgard
e30daa8027
Remove unused API, assorted cleanup.
...
No longer enable the geometry shader feature, no plans to use it.
2019-02-05 21:31:43 +01:00
Henrik Rydgård
12f295c4a5
GLES: Detect Vivante GPU, disable vertex range culling
...
Should work-around #11703
2019-01-03 12:43:32 +01:00
Unknown W. Brackets
adeca2c3ba
GLES: Move some vendor bug checks to Draw.
2018-12-23 20:27:22 -08:00
Unknown W. Brackets
9a3de5cb1c
GPU: Move dual source blending bug check to Draw.
...
This also allows the ini setting to avoid it on Intel.
2018-12-23 14:11:57 -08:00
Unknown W. Brackets
f8ce9b08ba
Vulkan: Limit stencil workaround to Adreno 5xx.
2018-12-23 14:11:57 -08: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
df98721e73
Write rough framework for GPU discard test screen
2018-12-19 13:48:54 +01:00
Henrik Rydgård
a135dc1547
thin3d: Remove unused shader language support
2018-12-18 14:29:48 +01:00
Henrik Rydgård
956af61ff5
Fix ridiculous bug in thin3d.h. Only worked by accidental matchup between shader IDs..
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
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
Henrik Rydgård
b037efdb55
If there are multiple Vulkan devices, show a setting to allow the user to choose.
2018-06-06 10:20:12 +02:00
Henrik Rydgård
9485b04914
Never bind a NULL image view in Vulkan no matter what.
2018-06-01 18:51:37 +02:00
Henrik Rydgård
b1df7b2cd0
Thin3D: Handle binding a null texture better.
2018-05-29 23:35:27 +02:00
Unknown W. Brackets
99d16b2202
Vulkan: Add tags to UI textures too.
2018-04-06 21:43:18 -07:00
Henrik Rydgård
5f8118b82b
Separate T3DCreate* into its own header to avoid including Windows.h etc in some cases.
2018-02-25 10:27:59 +01:00
Henrik Rydgård
8438defb24
Fix some memory leaks
2018-02-04 13:39:10 +01:00
Henrik Rydgård
22e28e218b
Merge pull request #10411 from hrydgard/gl-render-manager
...
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00
Henrik Rydgård
c60c8ed68a
Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour.
2018-01-29 19:38:10 +01:00
Henrik Rydgård
51f467a7b3
Kill off the GL state cache
2018-01-27 15:10:17 +01:00
Henrik Rydgård
9babdb712c
More gl-render-manager
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
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
e6be86ce74
ARM buildfix
2017-11-22 11:01:42 +01:00
Henrik Rydgård
b6911d2764
Add a hidden debug option [Graphics]GfxDebugSplitSubmit to try to narrow down some Vulkan issues, see #10163 . Also improve some asserts.
2017-11-22 10:47:04 +01:00