Unknown W. Brackets
cb23c0c01d
Vulkan: Create FB compatible pipelines in Draw.
...
The easiest way is just to create both and support both. Perhaps we could
optimize out the creation of the framebuffer one.
Fixes #12928 .
2020-05-18 22:45:20 -07: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
f9697c2c32
Vulkan: Allow frag shader UBO reads.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
e309712fed
Vulkan: Correct missing offsets in Draw.
...
Was silently ignoring them. Caused stretch in postshaders.
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
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
Unknown W. Brackets
61cca61d0c
Vulkan: Fix Draw usage of framebuffers.
2020-05-13 18:07:25 -07:00
Henrik Rydgård
63f06cdd91
Address some feedback, thanks unknown
2020-03-01 18:41:09 +01:00
Henrik Rydgård
0da04f3694
Vulkan: Support devices that don't properly support 16-bit texture (like MoltenVK).
...
Fixes #12615 .
Will make finishing #10654 worthwhile.
2020-03-01 14:07:13 +01: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
4f7c23fe79
DarkStalkers: Fix display on OpenGL ES.
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
c7b3a08cf3
Vulkan: Add checks so we don't try to write NULL objects to a descriptor set.
...
(Shouldn't happen, but bad rendering is better than a crash in descriptor writing)
2019-10-20 17:05:42 +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
1e3711ee66
Vulkan blend factor: Bugfix and minor optimization
2019-10-13 21:17:29 +02:00
Henrik Rydgård
2439c3efb1
Merge pull request #12306 from hrydgard/mali-driver-version-detection
...
Improve Mali driver version detection
2019-09-04 22:45:34 +02:00
Henrik Rydgård
025a9f4dae
Improve Mali driver version detection
2019-09-04 21:46:07 +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
3af7229abc
Bump up the descriptor pool size for the UI. Should fix #12299 .
2019-09-02 18:39:10 +02:00
Henrik Rydgård
5fcac1a9e2
Vulkan: Disable some bad validation. Things are right and work fine.
2019-08-21 10:23:36 +02:00
Henrik Rydgård
653afeb7ab
Vulkan: Implement basic integrated GPU profiling.
...
Currently simply measures the total GPU time of the frame. Will later be
extended to get the execution time of individual render passes.
2019-08-21 00:03:00 +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
06b04f65a0
Vulkan: Narrow down buffer usage flags a little bit.
2019-03-14 12:41:39 +01:00
Henrik Rydgård
c1427f5981
VulkanImage: Fix issue where we'd try to free dedicated allocations from the allocator_ instead of Vulkan directly.
...
Snuck in some minor cleanups.
2019-02-24 22:23:26 +01: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 Rydgard
8e1a5ef3d6
Minor refactor of physical device property/feature detection, to allow for more extension use.
2019-02-05 18:07:17 +01: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
a135dc1547
thin3d: Remove unused shader language support
2018-12-18 14:29:48 +01:00
Henrik Rydgård
637b6ce79a
Remove unused and unfinished SPIRV disassembler
2018-12-18 10:37:49 +01:00
Henrik Rydgård
f2244f789e
VK: Add extra safety checks around font texture creation. Motivated by some Play crashes.
2018-11-21 17:34:54 +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
8e6a1bc849
Set a minimum of 1x1 for Android text bitmap measurement.
...
Should fix some crashes seen on Google Play
2018-08-30 19:49:33 +02:00
Unknown W. Brackets
81f74e4287
Vulkan: Assert on some creates failing.
...
Before was only checking in debug builds.
2018-06-24 07:35:19 -07:00
Unknown W. Brackets
5028486630
thin3d: Cleanup some unused/uninitialized warnings.
2018-06-24 07:34:07 -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
2917f3ffbb
Better return the right pointer.
2018-06-01 22:05:21 +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
Henrik Rydgård
b730d187e8
Add some paranoid checks guided by stack traces from Google Play
2018-05-27 22:12:59 +02:00
Unknown W. Brackets
a85e914f78
Vulkan: Fix use-after-free crash on shutdown.
2018-04-29 09:47:39 -07:00
Unknown W. Brackets
99d16b2202
Vulkan: Add tags to UI textures too.
2018-04-06 21:43:18 -07:00
Henrik Rydgård
ca0fb77080
Assorted cleanups. Don't assert on no clear mask.
2018-04-06 23:29:44 +02:00
Henrik Rydgård
d125fa00e1
Make sure the renderpass cache hashmap is never accessed from the main thread at runtime. Should help #10811
2018-03-27 14:45:41 +02:00
Henrik Rydgård
614cabb115
Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
...
The raw pipeline cache got pretty large. Instead, store IDs like GL.
There's still a disabled option to store the pipeline cache objects.
2018-03-16 21:03:03 +01:00