Commit Graph

242 Commits

Author SHA1 Message Date
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 0b16899f67 Windows: Init with OpenGL 4.5 if possible.
Also, try more versions if older.
2017-04-29 17:38:18 -07:00
Unknown W. Brackets ccd9a17235 D3D11: Free swapchain on graphics reset. 2017-04-27 20:04:30 -07: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 db89bced86 Remove unused code 2017-04-06 09:57:55 +02:00
Henrik Rydgård c0f6a24a21 Fix issue where we were a little too aggressive when eliminating calls to SetRenderTarget 2017-03-23 10:02:28 +01:00
Unknown W. Brackets 4514af9d6e Windows: Improve core context init.
This clears the error from glewInit(), and ensures we check GL extensions
only after selecting the desired GL profile.

Also, consistently use the core profile flag to select the context.
2017-03-18 13:47:15 -07:00
Henrik Rydgård f4a0c4504f Fixes to GPU system information. Fixes #9434 2017-03-16 09:48:10 +01:00
Henrik Rydgard 5d5844632a Fix shader issues with D3D11 feature level 9 2017-03-05 22:56:33 +01:00
Henrik Rydgard 042d09a049 Fix #9390, also unbreak D3D11 screenshots 2017-03-05 20:30:39 +01:00
Henrik Rydgard 85717a981c Show feature levels in System Info, allow lower D3D11 feature levels 2017-03-05 11:05:36 +01:00
Henrik Rydgard 7b3f84aae8 More buildfixes for Windows on ARM 2017-03-05 10:52:08 +01:00
Henrik Rydgard 5de190a45f D3D11: Move the responsibility for the swapchain out of the DrawContext so it can be used with differently-managed D3D like with UWP.
Minor cleanups.
2017-02-27 10:10:24 +01:00
Henrik Rydgard fa80cfa4aa Additional UWP preparations 2017-02-25 09:57:14 +01:00
Henrik Rydgard acde17e3ce Improvements to D3D11 detection and error handling. 2017-02-23 10:40:55 +01:00
Henrik Rydgard 5a0ee6cc36 Add some plumbing to be able to reach DX11.1 features. 2017-02-18 01:54:28 +01:00
Henrik Rydgard 522ac5c739 Add an escape route to D3D9 in case D3D11 fails to initialize. Cleanups. 2017-02-17 19:53:24 +01:00
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