Commit graph

47 commits

Author SHA1 Message Date
Bram Verweij
cc00a4132d Prevent dlopen collisions between ppsspp_libretro.so and libvulkan.so 2021-08-20 11:22:57 +02:00
Henrik Rydgård
43ae32e5b8
Merge pull request #14713 from amverweij/vulkan-display-khr
First pass on using Display KHR, needs proper init flags
2021-08-11 01:34:38 +02:00
Unknown W. Brackets
4cb6976029 GPU: Use an empty vertex buf for reinterpret.
See #14552.
2021-08-07 22:22:36 -07:00
Henrik Rydgård
3595e092c9 Turn off all 16-bit formats if B5G6R5 format is not available.
Works around #14602 for now.
2021-07-10 23:33:46 +02:00
Unknown W. Brackets
44d2d8a2a3 Draw: Assert sampler bindings are in valid ranges. 2021-06-12 10:10:42 -07:00
Henrik Rydgård
f4a6d291e1 Common: Capitalize setCurrentThreadName(). 2021-04-30 23:02:36 -07:00
Unknown W. Brackets
5119d79082 Build: Remove IOS define. 2021-03-02 21:04:03 -08:00
Unknown W. Brackets
13ec384dbe Build: Explicitly include ppsspp_config.h.
This adds it to all files that use it.  Not all our builds include the
file.
2021-03-02 21:04:03 -08:00
Unknown W. Brackets
e7a3faaa8c Windows: Stop ignoring all deprecated warnings. 2021-02-18 08:56:36 -08:00
Unknown W. Brackets
fe9870bf37 Draw: Auto ref/release bound textures/samplers. 2021-02-16 21:48:43 -08:00
Unknown W. Brackets
e85a8b0f5b Global: Cleanup class init order warnings. 2021-02-15 11:59:45 -08:00
Unknown W. Brackets
f32f89dd90 Global: Remove some unused variables. 2021-02-15 11:59:45 -08:00
Henrik Rydgård
9b13220f49
Merge pull request #13864 from unknownbrackets/vulkan-amd
Vulkan: Remove #10097 hack for newer AMD drivers
2021-02-15 16:31:49 +01:00
Henrik Rydgård
c8dfa091fa Add some checks trying to prevent creation of 0 sized textures.
Saw a crash log with a driver crash in CreateTexture...
2021-02-13 11:33:15 +01:00
Henrik Rydgård
c48bdf7efc Vulkan: Fix image layout issues after compute shader uploads.
We're already in GENERAL so probably not worth to transfer to DST just
to do even more transfers due to the silliness of GenerateMip.

I'm planning to rework the whole texture upload thing to be far more
optimal with some kind of TextureUploadManager

Fixes #13987
2021-01-30 23:09:42 +01:00
Henrik Rydgård
c251d69eab Minimize the Adreno shader compiler bug repro test 2021-01-30 10:21:14 +01:00
Unknown W. Brackets
6ca9acf94b Vulkan: Delete only created swapchain images.
We do other null checks here, same reason.  Create may have failed.
2021-01-16 20:55:34 -08:00
Henrik Rydgård
1acbfb1a52 Never pass a null into QueueDeleteImageView (got a report of that).
Went through them all to see where this could happen, can't find any
other path than this, though it's strange.
2021-01-03 21:46:12 +01:00
Unknown W. Brackets
ca0763c7f1 Vulkan: Remove #10097 hack for newer AMD drivers.
Fixes #10643.  Assumes affected drivers only supported 1.0 due to year 1.1
supporting drivers started coming out.
2021-01-03 09:24:14 -08:00
Conrad Kreyling
e3540ccd17 First pass on using Display KHR, needs proper init flags 2020-12-16 13:15:39 -05:00
Henrik Rydgård
1c925e705f
Merge pull request #13760 from hrydgard/fix-dirt-graphics
Fix car lighting issues in DiRT 2.
2020-12-13 09:19:34 +01:00
Henrik Rydgård
6a5522b185 thin3d: Add a way to query the current render target for debugging. 2020-12-13 00:20:13 +01:00
Halo-Michael
0652d2b52f Change the typo 2020-12-08 14:42:07 +08:00
Halo-Michael
a40674d770 Fix loader 2020-12-08 14:40:29 +08:00
Halo-Michael
277b00dfa0 Bundle libMoltenVK 2020-12-08 13:46:14 +08:00
Henrik Rydgård
032890803e Need to take renderArea into account when merging render passes.
Fixes #13664
2020-11-26 23:29:59 +01:00
Henrik Rydgård
29b2f2c4ef Better GLSL version handling. Now specify the latest version supported by the device.
Correct the version check for our own implementations of packUnorm4x8 etc.
2020-11-16 23:30:07 +01:00
Henrik Rydgård
90cc325b53 Clears didn't always properly set the RenderArea. Should help #13664 2020-11-15 22:30:16 +01:00
Henrik Rydgård
6310af25fa Get shader color write masking going on all backends. 2020-11-08 23:45:47 +01:00
Henrik Rydgård
96c36d5c10 More work on reinterpret. Get Vulkan running 2020-11-08 11:32:55 +01:00
Henrik Rydgård
d9ee06a60d Reorganize the DeviceLost code a little. FramebufferManagerCommon now sees it. 2020-11-07 10:51:54 +01:00
Henrik Rydgård
7a690f177e Move shader language feature detection to the draw context. 2020-11-06 09:11:57 +01:00
Henrik Rydgård
6db943e831 Merge the two ShaderStage enums 2020-11-05 08:34:35 +01:00
Henrik Rydgård
291742535b Safety, comments 2020-11-02 10:02:52 +01:00
Henrik Rydgård
b7d674411e Test parsing of generated OpenGL shaders too (by using glslang). 2020-10-31 18:32:43 +01:00
Henrik Rydgård
b070ed45e9 Evolve the HLSL and GLSL fragment shader generators even closer together. 2020-10-31 18:32:42 +01:00
Henrik Rydgård
d4c02ccc1c Address feedback about recent changes
Thanks unknown.
2020-10-19 22:50:31 +02:00
Henrik Rydgård
6cc8c2ebc1
Merge pull request #13328 from hrydgard/libretro-fixes
Fix libretro with Vulkan
2020-10-14 22:08:11 +02:00
Henrik Rydgård
332bb7feeb VK: Whenever safely possible, shrink the render area.
We just set the render area to the union of the scissor rects used in a pass.

Might help some games on some mobile hardware, a little bit.

Possibly #13464?
2020-10-11 23:23:25 +02:00
Henrik Rydgård
dffc36b854 Get Vulkan going again with libretro. Rendering is the wrong size and crashes on exit, but it's a start.
Only tested on Windows.
2020-10-11 19:06:09 +02:00
Henrik Rydgård
5ece3de8ba Track and accumulate pipeline flags for render passes.
(Information that will later let us make some interesting optimizations)
2020-10-11 12:22:25 +02:00
Henrik Rydgård
9d78ba93e0 Bugfix 2020-10-11 11:17:43 +02:00
Henrik Rydgård
692048fb8b VK: Separate layout transitions from renderpasses again.
According to sage advice from themaister, this is just unnecessary overengineering.

Having them separate reduces the size of the renderpass key - we might be able to just
change that to an array lookup again. Will also make it easier to in the future add
depth-less render passes.
2020-10-11 11:06:54 +02:00
Henrik Rydgård
940611fe65 Remove the USE_GENERAL_LAYOUT_FOR* debug defines. 2020-10-11 11:06:54 +02:00
Henrik Rydgård
dc0f7ca8ee VK: Copy depth buffer if we can't blit. Some GPUs can't blit to depth.
Fixes some recent issues with Intel GPUs on Vulkan.
2020-10-11 10:57:35 +02:00
Henrik Rydgård
886a8b1ac6 Remove Timer.cpp/h. Move various collections into Common/Data/Collections. 2020-10-05 21:05:23 +02:00
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