Commit Graph

220 Commits

Author SHA1 Message Date
Henrik Rydgard
e83dd2b524 Minor cleanup, elimintate some bind ordering hazards that D3D11 warns about 2017-02-17 14:31:02 +01:00
Henrik Rydgard
77d087776c D3D11: Support window resize 2017-02-14 11:21:53 +01:00
Henrik Rydgård
bbdb0ee195 Fix the stencil buffer initialization stuff (not sure it's 100% working et) 2017-02-12 13:55:49 +01:00
Henrik Rydgård
6efdde9ea4 D3D11: Fix build issue in Release mode. Triangle fan workaround. 2017-02-12 12:12:36 +01:00
Henrik Rydgård
f7717063a8 Assorted fixes for memory leaks etc 2017-02-10 14:41:32 +01:00
Henrik Rydgard
3f4e14f504 D3D11: Lumines is now playable in non-buffered, with reverse colors. 2017-02-10 11:25:24 +01:00
Henrik Rydgard
5ee3b534ed More D3D11 improvements 2017-02-10 10:26:18 +01:00
Henrik Rydgard
aba669c3e6 D3D11: Cube now visible 2017-02-10 00:30:42 +01:00
Henrik Rydgard
6b193e7434 Break on D3D11 validation errors in _DEBUG mode 2017-02-10 00:01:34 +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
abc80ae770 Enough D3D11 to stumble to the first thin3d draw call. Buffers not implemented yet. 2017-02-07 11:44:44 +01: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
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
41f770d815 Move dx_state into gfx/d3d9_state 2017-02-05 20:54:24 +01:00
Henrik Rydgard
9c275730c5 Move pD3DDevice into dx_state.h. 2017-02-05 20:46:26 +01:00
Henrik Rydgard
4dd96d6993 Remove dx_fbo dependency on global.h 2017-02-05 20:19:43 +01:00
Henrik Rydgard
5b49c2f840 DX9 cleanup: Remove more stuff from global.cpp 2017-02-05 20:13:48 +01:00
Henrik Rydgard
0b3ebbddf4 Minor DX9 code cleanup 2017-02-05 19:38:52 +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
8bcb5f01eb Remove accidental hard dependency on d3d11. when it works, we'll load it dynamically. Fixes #9204 2017-01-03 23:39:57 +08:00
Henrik Rydgård
674937a520 Extend some enums with potentially useful values 2016-12-27 11:59:12 +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
9658c8dd5c Basic D3D11 context setup code 2016-12-25 11:37:26 +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
Unknown W. Brackets
2e2674be21 Properly allow triggering a core context.
This will be useful on Mac.
2016-08-08 17:56:09 -07: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
Henrik Rydgard
58b07e00d7 Assorted fixes and cleanups. 2016-03-06 11:46:41 -08:00
Unknown W. Brackets
095624867a d3d9: Enable GPU info in D3D9 reporting. 2016-02-13 09:51:09 -08:00
Unknown W. Brackets
e5b4051211 Don't attempt pause while stepping.
We'll just hang in that case.
2016-01-17 15:47:44 -08:00
Unknown W. Brackets
481be1cd34 Fix GL feature detection. 2016-01-06 20:26:53 -08:00
Henrik Rydgard
3398288bd0 Some cleanup around input_state 2016-01-01 14:40:18 +01:00
Henrik Rydgard
15de6e6b98 GraphicsContext: Abstract away things like swapbuffers etc before adding even more backends.
Needed to prevent clutter all over the codebase.

Does not go all the way yet, goal would be a common render loop between platforms but not there yet.
2016-01-01 14:40:16 +01:00
Henrik Rydgård
716d7a38f5 Merge pull request #8292 from unknownbrackets/opengl-core
Improve VAO core profile performance
2015-12-30 22:03:04 +01:00
Unknown W. Brackets
e898043249 Remove unused variable. 2015-12-30 11:02:50 -08:00
Unknown W. Brackets
cbf149b0b4 Display types at different log levels.
Just to make errors stand out more, mainly.
2015-12-28 14:13:22 -08:00
Unknown W. Brackets
4d041c9ffe Try to add support for GL_KHR_debug.
For some reason I'm still not seeing this work in a core profile...
2015-12-28 14:13:19 -08:00
Henrik Rydgard
44be9f2a50 Move Windows GPU init code into Windows/GPU 2015-11-03 23:22:09 +01:00