Commit Graph

29555 Commits

Author SHA1 Message Date
Hans-Kristian Arntzen 5542427246 Try to use cached memory for readbacks.
Speeds up nVidia readbacks by order of magnitude.
2016-02-20 12:04:53 +01:00
Twinaphex 452898c0f8 Merge pull request #2736 from Themaister/master
Use vkCmdCopyImage for readbacks.
2016-02-20 11:49:36 +01:00
Hans-Kristian Arntzen 459c55989a Use vkCmdCopyImage for readbacks.
Blits often imply render targets.
2016-02-20 11:21:39 +01:00
Twinaphex 9108ee773f Merge pull request #2735 from Themaister/master
Before unloading game, make sure we stop the threaded audio driver.
2016-02-20 10:33:55 +01:00
Hans-Kristian Arntzen 9c21c9ea1f Before unloading game, make sure we stop the threaded audio driver. 2016-02-20 10:28:39 +01:00
twinaphex dbe6bc5cfb Move wayland context driver up the context driver foodchain,
should hopefully have Gnome Wayland default to it instead of the
slower X11/XCB context
2016-02-20 09:23:17 +01:00
twinaphex 481fa56f2c Move some code 2016-02-20 06:36:32 +01:00
twinaphex fde9f1ce2c Start making GL optional (previously we assumed pretty much - hardware
context = GL) Still have the issue where the menu driver auto-switches
back to rgui instead of glui/xmb
2016-02-20 06:16:34 +01:00
twinaphex 9bc889b908 Add improved preprocessor conditionals for x context 2016-02-20 05:50:37 +01:00
twinaphex 11c1535fe3 Rename glx context driver to x 2016-02-20 05:48:45 +01:00
Twinaphex b1c614f1ca Merge pull request #2734 from Themaister/vulkan
Vulkan: X11 backend
2016-02-20 03:33:41 +01:00
Hans-Kristian Arntzen 4540369fcb Use correct cast for WSI_XLIB. 2016-02-19 22:25:51 +01:00
Hans-Kristian Arntzen 0bcdf6ebe0 More properly enumerate GPUs.
Just pick the first one for now.
2016-02-19 21:55:11 +01:00
Hans-Kristian Arntzen 88ec0f522b Vulkan: Add Vulkan backend to GLX context.
Also fixes some snags with libretro-test-vulkan.
2016-02-19 21:37:24 +01:00
Hans-Kristian Arntzen 1b5cc1ca9c Fix some types for WSI. 2016-02-19 19:50:04 +01:00
twinaphex 4e510247f5 Cleanups 2016-02-19 15:44:03 +01:00
twinaphex d6906ee7df (xcb) Buildfix 2016-02-19 15:43:12 +01:00
twinaphex 575cd4e3be Add xcb detection 2016-02-19 15:08:23 +01:00
twinaphex 11831a8b47 move shareable vulkan initialization code to vulkan_common.c 2016-02-19 14:38:15 +01:00
twinaphex 5cb0aa51c0 Add includes to vulkan_common.h 2016-02-19 14:26:45 +01:00
twinaphex e1a1843edc Start moving code to vulkan_common.h 2016-02-19 14:23:51 +01:00
twinaphex 2d5e10e840 Fix this 2016-02-19 13:17:03 +01:00
twinaphex 140d65b994 Setup specific WSI extensions 2016-02-19 13:11:30 +01:00
twinaphex 7ec1a6836c (Vulkan WSI) Add Mir bits (we don't have Mir context driver yet
but whatever, add them all)
2016-02-19 13:06:38 +01:00
twinaphex 50efe142b9 Go through function pointers 2016-02-19 13:03:35 +01:00
twinaphex eb1fe0476d Start implementing xlib/xcb bits (for when these context drivers
get added)
2016-02-19 12:46:42 +01:00
twinaphex 14d39be698 Move code around 2016-02-19 12:30:18 +01:00
twinaphex 72fed0d871 Add VULKAN_WSI_MIR (for when we ever get around to adding Mir support) 2016-02-19 12:24:20 +01:00
twinaphex cebefa6ae1 Refactor vulkan_surface_create 2016-02-19 12:23:16 +01:00
twinaphex db074e1c1a Start implementing more WSI variants 2016-02-19 12:15:16 +01:00
twinaphex 353c421a5c Add function pointer for vkCreateAndroidSurfaceKHR 2016-02-19 12:08:34 +01:00
twinaphex 6fcd097e4c Start setting up vulkan_init_context for multiple WSI types 2016-02-19 12:04:56 +01:00
twinaphex 1c412eea5a Start adding preliminary implementation for vulkan_surface_create 2016-02-19 12:00:52 +01:00
twinaphex 96c9687a8a Create vulkan_surface_create 2016-02-19 11:55:57 +01:00
twinaphex 98990d6afc Add more WSI enum types 2016-02-19 11:50:25 +01:00
twinaphex 7205d76ab0 Cleanups 2016-02-19 11:36:46 +01:00
twinaphex c105fb22f3 Style nits 2016-02-19 11:29:15 +01:00
twinaphex a61536ffdc More refactors - create vulkan_destroy_context 2016-02-19 11:12:43 +01:00
twinaphex 6be1453d9c Create vulkan_init_context 2016-02-19 11:04:51 +01:00
twinaphex 50a605e9db Cleanups 2016-02-19 10:54:00 +01:00
twinaphex 1165d1c0b7 Create gfx_ctx_vulkan_data_t 2016-02-19 10:35:59 +01:00
twinaphex 02e3d6eba7 Only one Wayland context driver now 2016-02-19 07:58:14 +01:00
twinaphex acf4931ad1 (Testcore Vulkan) Hook up one button - makes input response work 2016-02-19 05:53:25 +01:00
Twinaphex 7e9f66ad39 Merge pull request #2733 from Themaister/vulkan
Vulkan: Workaround broken push constant support on Ivy Bridge
2016-02-19 01:32:10 +01:00
Hans-Kristian Arntzen c74c7ae053 Vulkan: Work around broken push constants on Ivy Bridge.
Use UBOs instead, should be more compatible with early drivers.
2016-02-18 18:36:49 +01:00
Hans-Kristian Arntzen a1ae86a808 Remove obsolete shaders. 2016-02-18 18:36:49 +01:00
twinaphex 0b85951abe (Wayland context) Cleanup some defines 2016-02-18 07:40:13 +01:00
twinaphex a21444fc9a (Wayland ctx) More improvements to Vulkan support 2016-02-18 07:29:20 +01:00
twinaphex f5c5c82729 Add extra conditionals for all possible usecases (HAVE_EGL/HAVE_OPENGL/HAVE_OPENGLES/etc) 2016-02-18 07:18:58 +01:00
twinaphex bd672b8b72 Add vulkan path in registry_handle_global 2016-02-18 05:31:24 +01:00