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
55e9807a53
Separate VulkanContext::CreateDevice into ChooseDevice and CreateDevice to give an opportunity to enable extensions.
2017-08-28 14:12:56 +02:00
Henrik Rydgard
0c70735bc4
Buffered rendering is starting to work, though still kinda broken.
2017-05-30 09:36:17 +02:00
Henrik Rydgard
273c266b78
Silence a perf warning
2017-05-30 09:36:17 +02:00
Henrik Rydgard
fd4ef48971
Windows debug builds: Only break on Vulkan validation warnings if a debugger is attached.
2017-05-07 18:09:09 +02:00
Henrik Rydgard
42a694368e
Vulkan: Remove obsolete warning suppressions. Increase descriptor pool sizes.
2017-05-07 11:14:25 +02:00
Henrik Rydgard
ff6fcc9179
More vulkan fixes
2017-05-07 10:53:04 +02:00
Unknown W. Brackets
bf02f7d98b
Vulkan: Detect swapchain init failure.
...
This seems to be a driver bug, and occurs on NVIDIA when OpenGL has
previously been inited. Or we're not cleaning something up properly...
but there's a driver error logged to debug output.
2017-04-15 16:26:26 -07:00
Henrik Rydgard
ad29974a56
Change when drawcontexts are allocated. Hook up backbuffer events to fix d3d9 resizing.
2017-02-06 11:40:16 +01:00
Henrik Rydgard
20d9e60a67
Just some renaming. Start moving away from the "thin3d" name
2017-01-30 14:38:31 +01:00
Henrik Rydgård
1ed7f0d7fd
More modern way to specify vertex data format (inputlayout)
2016-12-27 11:59:10 +01:00
Henrik Rydgård
f86b9f7900
Guess what? More renaming
2016-12-27 11:59:06 +01:00
Henrik Rydgård
10393f5d4e
Move Thin3D into the Draw namespace.
2016-12-27 11:58:03 +01:00
Henrik Rydgård
1c0c755b03
Extract RasterState from thin3d, for easier d3d11 porting
2016-12-25 11:31:33 +01:00
Henrik Rydgard
a2b49fd0e0
Update Vulkan headers. Hack around another validation check (which I beleive to be bugged).
2016-12-15 18:12:53 +01:00
Florent Castelli
f02e2b59b0
qt: Build Qt frontend with CMake. Requires Qt5.
2016-10-17 23:45:21 +02:00
Henrik Rydgard
210cd4b52d
New vulkan validation issues...
2016-07-24 15:55:05 +02:00
Henrik Rydgard
b560038b3d
Work around a new false positive from the latest Vulkan validation layers
2016-06-30 16:11:50 +02:00
Henrik Rydgard
fd0af5b271
Vulkan: Mostly pass the validation layers in SDK 1.0.13
2016-05-24 21:41:35 +02:00
Henrik Rydgard
51bcb02921
Minor vulkan updates to match the latest SDK/validator
2016-05-14 16:29:40 +02:00
Henrik Rydgard
37616a6f95
Update the Vulkan validator workarounds to match the 1.0.8 validator... gah.
2016-04-07 23:45:38 +02:00
Henrik Rydgard
32f5930e15
Move clear handling to FramebufferVulkan, center the clear properly in non-buffered. more cleanup.
2016-03-31 00:50:50 +02:00
Unknown W. Brackets
aec117d8ea
Vulkan: Allow resizing window/backbuffer.
...
Not tested much on Android. Fixes #8656 .
2016-03-21 19:45:27 -07:00
Unknown W. Brackets
2461a849f9
Correct some warnings reported by clang.
2016-03-20 23:13:28 -07:00
Henrik Rydgard
d0659f0deb
No need to align vertex/index data. Will only be harmful for an upcoming optimization.
2016-03-20 19:35:03 +01:00
Henrik Rydgard
c2775d4dfa
Default validation on in Debug and off in Release
2016-03-20 19:31:02 +01:00
Henrik Rydgard
1f1e679aa0
Silence another validation warning
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
82205a4660
Handle Vulkan init errors more gracefully.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
76b17a4912
Revert "Replace ugly workaround with VK_LAYER_LUNARG_unique_objects which prevents handle reuse."
...
This reverts commit 6342c07a19d5ab410cbc233a570488214923a9f8.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
b0098f7961
Replace ugly workaround with VK_LAYER_LUNARG_unique_objects which prevents handle reuse.
...
See https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/121
2016-03-20 19:31:02 +01:00
Henrik Rydgard
575cc890b7
Turn off annoying "debug flicker" I used to see if we were swapping buffers properly early on
...
Also minor logging changes, refine the false-positive debug layer check
2016-03-20 19:31:02 +01:00
Henrik Rydgard
79fd828d16
Work around what seems like a validation layer bug (trigger by scrolling
...
around the UI a bit)
2016-03-20 19:31:02 +01:00
Henrik Rydgard
5ca012e83d
Fix a bunch of new vulkan validation layer failures.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
c92790c5a8
Specify a useful app version when loading Vulkan.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
76d8a87b2f
Vulkan: Attempt at fixing dual source blending. Should work but doesn't.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
d325aa2b30
Hook up Vulkan on Android, no idea if it works. Move VulkanContext to Common.
2016-03-20 19:30:11 +01:00
Henrik Rydgard
2481714a8e
Load Vulkan dynamically. Fix Android build (though - Vulkan is not working on Android yet)
2016-03-20 19:30:11 +01:00
Henrik Rydgard
ca63cca9a2
WIP: Start work on getting the Vulkan code to compile for Android
2016-03-20 19:30:11 +01:00
Henrik Rydgard
b51b38f97c
Switch to "Mailbox" frame submission if available, lets us go beyond 60hz for unthrottle
2016-03-20 19:30:11 +01:00
Henrik Rydgard
4063f7e0db
Fill out GPU_Vulkan.cpp with what's mostly a copy of GLES_GPU.cpp
2016-03-20 19:30:11 +01:00
Henrik Rydgard
cfbecf5071
More progress
2016-03-20 19:26:41 +01:00
Henrik Rydgard
4ddca8607f
Further vulkan stuff
2016-03-20 19:26:12 +01:00
Henrik Rydgard
73d6d2dc72
More vulkan in thin3d
2016-03-20 19:25:53 +01:00
Henrik Rydgard
2a71e164f5
Enable vulkan validation
2016-03-20 19:25:30 +01:00
Henrik Rydgard
2a449f78bb
More vulkan fixing
2016-03-20 19:25:30 +01:00
Henrik Rydgard
c64064024d
Initial vulkan code.
...
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00