Commit Graph

644 Commits

Author SHA1 Message Date
twinaphex
3e9df72123 Try to fix ARM build 2016-09-06 03:14:20 +02:00
twinaphex
075aea2289 Header include cleanups 2016-09-06 00:56:00 +02:00
twinaphex
266a06ffb1 Revert "Expose GPU Hard Sync for GLES 3 too"
This reverts commit a74813c9ea.
2016-09-05 21:43:02 +02:00
twinaphex
a74813c9ea Expose GPU Hard Sync for GLES 3 too 2016-09-05 21:16:30 +02:00
twinaphex
86d2a36407 (Win32) Buildfixes 2016-09-05 18:43:32 +02:00
twinaphex
f30deb9cd0 Header cleanup 2016-09-05 07:47:11 +02:00
twinaphex
e6ef3662ac Header include changes 2016-09-05 07:44:17 +02:00
twinaphex
1a241fa9ce Rewrite this 2016-09-05 07:22:44 +02:00
Brad Parker
0eb1777a1f remove extra semicolons 2016-09-03 10:30:21 -04:00
twinaphex
467451fccc Cleanup more header includes 2016-09-01 18:18:55 +02:00
twinaphex
aff2812fde Try to get rid of double definition of type 2016-09-01 06:08:06 +02:00
twinaphex
815c0eb3ee Remove header includes 2016-09-01 05:46:10 +02:00
twinaphex
ba7d638b99 Use string_is_equal 2016-08-29 18:46:41 +02:00
Francisco José García García
4221374072 (VITA) Add XMB support 2016-08-23 02:49:53 +02:00
twinaphex
9777e9d9ef (MSVC 2003) Add MSVC 2003 compatibility 2006-01-17 04:36:32 +01:00
Logan McNaughton
47227c829b GLES3 fixes 2016-08-06 21:45:35 -06:00
twinaphex
fb9a2eea95 Remove one useless HAVE_OPENGLES2 ifdef, and remove some wrong
defines
2016-08-07 04:35:38 +02:00
Hans-Kristian Arntzen
96818a297c Vulkan: Fix validation errors with OriginalHistory.
For some reason, OriginalHistory blit happened inside a render pass.
Also add more TRANSFER_SRC_BIT caps to images as they might have to be
copied to history.
2016-08-07 01:09:15 +02:00
twinaphex
563842945c (gl_common.h) Start catering towards GLES3/GLES3.1/GLES3.2 too 2016-08-01 18:15:14 +02:00
twinaphex
09ea570dcb Create GL_CAPS_FP_FBO 2016-08-01 17:33:50 +02:00
twinaphex
76c021df09 Create GL_CAPS_SRGB_FBO 2016-08-01 17:28:43 +02:00
Hans-Kristian Arntzen
4ac9ebd579 Vulkan: Allow configuring mip/wrap/filter for LUTs.
LUTs are feature complete with CGP now.
2016-07-31 16:16:47 +02:00
Hans-Kristian Arntzen
0eca956789 Vulkan: Create image views with right amount of mip levels. 2016-07-31 14:01:39 +02:00
Hans-Kristian Arntzen
4e8e79eabd Vulkan: Add mipmapping support. 2016-07-31 13:47:10 +02:00
Hans-Kristian Arntzen
7813d40c9e Log if Vulkan debug layers are enabled. 2016-07-31 12:54:10 +02:00
twinaphex
2be127c04a Start wrapping settings->path.libretro 2016-07-24 11:12:26 +02:00
Hans-Kristian Arntzen
f54b0c0ff0 Vulkan: Implement swap_interval > 1.
We have to fake it by duping since Vulkan has no native support for
this.
2016-07-24 00:34:48 +02:00
Hans-Kristian Arntzen
8c1b935969 Vulkan: Implement BFI. 2016-07-24 00:07:32 +02:00
twinaphex
4e68bc0b53 CXX_BUILD fix 2016-07-21 21:54:43 +02:00
twinaphex
a8de87576e (windows) Fixes drag and drop - we have to call this
function directly since the UI companion driver interface at
this point has not yet been initialized
2016-07-16 23:49:44 +02:00
twinaphex
c6e6e300b9 CLeanup 2016-07-16 23:16:30 +02:00
twinaphex
8b4dd98d4b (drag and drop) Try to make some code more understandable 2016-07-16 23:13:24 +02:00
twinaphex
8b29ad1fee Add early return in case this is NULL 2016-07-16 23:00:35 +02:00
twinaphex
f308997465 DragFinish releases memory allocations - so always call it at the end 2016-07-16 22:39:21 +02:00
twinaphex
ce6f3f955c Doubleclick on titlebar should no longer trigger button press
in RA window
2016-07-16 17:56:07 +02:00
twinaphex
616b9f7471 (Win32) Test 2016-07-16 17:44:21 +02:00
Alcaro
d7dbc45c6b That's a weird way to check versions. Won't even work for 7.0. 2016-07-16 16:51:28 +02:00
Hans-Kristian Arntzen
8569028189 Vulkan: Use manual memory management for cached/incoherent devices. 2016-07-15 16:12:30 +00:00
Hans-Kristian Arntzen
f5bddd45e8 Vulkan: Don't query layout if we have optimal tiling. 2016-07-14 23:15:39 +02:00
twinaphex
b580599710 (X11) Fix 'quit' button not working 2016-07-09 12:09:39 +02:00
twinaphex
76cc6fd8ec Start implementing signal handler code once in frontend driver code 2016-07-08 02:38:33 +02:00
Hans-Kristian Arntzen
d382e1069e Basic VK_KHR_display integration works! :) 2016-07-07 19:28:27 +02:00
Hans-Kristian Arntzen
d2fafc5451 Sketch out vulkan_create_display_surface. 2016-07-06 20:27:39 +02:00
Hans-Kristian Arntzen
e9046dd06f Begin implementing VK_KHR_display. 2016-07-06 19:37:47 +02:00
twinaphex
9fab75c4b5 Cleanups; 80-char width limit 2016-06-30 07:40:25 +02:00
Hans-Kristian Arntzen
c80127d29d Vulkan: Hook up async compute test more properly.
Supports multiple queues and queues from different families.
2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen
4abb0ef331 Vulkan: Cache destroy device callback. 2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen
6841b5ad00 Vulkan: Keep dylib around if caching instance. 2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen
4729ec9e1b Add support for signalling semaphores from frontend.
Useful for conserving framebuffer memory.
2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen
54c1759f45 Vulkan: Make a more general purpose symbol loader.
Avoids painful manual loading and wrapping function pointers everywhere
...

Reusable for cores, so move to libretro-common.
Also update built-in Vulkan headers.
2016-06-26 13:10:58 +02:00
Hans-Kristian Arntzen
1da2e2dbab Vulkan: Hook up negotiation interface device creation. 2016-06-26 10:40:07 +02:00
Hans-Kristian Arntzen
10a6d7a458 Vulkan: Begin hooking up negotiation interface. 2016-06-25 21:01:36 +02:00
Hans-Kristian Arntzen
972a5db7ae Vulkan: Fix shader module leak. 2016-06-25 14:06:14 +02:00
Hans-Kristian Arntzen
de36f572d1 Vulkan: Fix more validation issues. 2016-06-25 14:01:10 +02:00
Hans-Kristian Arntzen
07880e3f45 Vulkan: Begin hooking up validation layers.
Found lots of regressions due to bad reformatting.
2016-06-25 13:52:33 +02:00
Hans-Kristian Arntzen
d043123f71 Vulkan: Add support for queue transfers in HW rendering. 2016-06-25 11:39:52 +02:00
Hans-Kristian Arntzen
82c7aa0e6f Use max swapchain image setting when creating swapchain. 2016-06-25 09:52:46 +02:00
twinaphex
b434f0863a CXX_BUILD buildfix 2016-06-23 07:44:56 +02:00
Alcaro
90dd86a66a Fix #3129 again 2016-06-19 22:09:52 +02:00
Hans-Kristian Arntzen
21be54501b Log which present modes are supported. 2016-06-13 22:00:32 +02:00
Hans-Kristian Arntzen
e7b4f4fd4d Fix various Android Vulkan issues.
Was getting bogus swapchain width/height causing weird issues.
Also, create swapchain after swap interval is correctly set.
2016-06-13 19:51:44 +02:00
twinaphex
f4c3a41f84 (Win32) Implement application process events 2016-06-07 17:28:51 +02:00
twinaphex
ee8277b31c Rename ui_win32_window.h to ui_win32.h 2016-06-07 16:33:55 +02:00
Hans-Kristian Arntzen
c374c9853d Some potential fixes for Android Vulkan. 2016-06-07 01:43:14 +02:00
twinaphex
ea5f458fbd Go through function pointer 2016-06-06 08:01:26 +02:00
twinaphex
2f7bc8760c Turn win32_browser into static function 2016-06-04 18:43:03 +02:00
twinaphex
cfc3b97808 Use ui_window_win32_focused 2016-06-04 17:30:06 +02:00
twinaphex
b5830de236 Create stub GetForegroundWindow function for Xbox 2016-06-04 17:18:20 +02:00
twinaphex
abbd39fc6e Might want to use GetForegroundWindow instead for window focus 2016-06-04 17:17:10 +02:00
twinaphex
c63f11f6fd Use ui_window_win32_set_droppable 2016-06-04 08:50:43 +02:00
twinaphex
b4c340ca88 (win32_common.cpp) Cleanup 2016-06-04 06:21:58 +02:00
twinaphex
d739e4771e Use set_title function from wgl_ctx.cpp 2016-06-04 06:02:15 +02:00
twinaphex
24688469b0 Buildfix 2016-06-04 05:58:03 +02:00
twinaphex
2d649f5147 Reimplement win32_monitor_from_window 2016-06-04 05:56:46 +02:00
twinaphex
f490b2b58a Simplify win32_monitor_from_window 2016-06-04 05:54:33 +02:00
twinaphex
0c3bc35be1 (Win32) Buildfix 2016-06-04 05:45:39 +02:00
twinaphex
745b204a8f Start using ui_window_win32_t 2016-06-04 05:44:06 +02:00
twinaphex
94e16e638d Cleanup WndProcCommon 2016-06-04 05:09:58 +02:00
mudlord
d75fc24ad7 update 2016-06-04 12:36:05 +10:00
twinaphex
b88db89b89 (Win32) Buildfix 2016-06-04 03:22:31 +02:00
twinaphex
45d6b4a228 Create win32_drag_query_file 2016-06-04 03:20:55 +02:00
twinaphex
d7d5f29c90 (win32_common.cpp) Buildfix 2016-06-03 19:46:09 +02:00
twinaphex
6628da2646 Create CONTENT_MODE_LOAD_CONTENT_WITH_NEW_CORE_FROM_COMPANION_UI 2016-06-03 18:43:05 +02:00
mudlord
1ab94a2c9a updates to dragndrop 2016-06-03 18:25:45 +10:00
twinaphex
30d3cf8a4e Indenting nits 2016-06-03 08:23:43 +02:00
twinaphex
4cfe09faed Nits 2016-06-03 08:21:56 +02:00
twinaphex
59413e0289 (win32_common.cpp) Cleanups/get rid of warning 2016-06-03 08:20:36 +02:00
twinaphex
01390f8ceb Use retro_common_api.h 2016-06-03 08:06:49 +02:00
mudlord
bcf636283b Updates to drag and drop:
* Now recognises old core used, if compatible.
* If not compatible, compatibile cores are scanned and used.
* Different compatible cores are now enumerated to be selected at will.
2016-06-03 16:00:08 +10:00
mudlord
4c53bdf4f9 add drag and drop 2016-06-03 09:14:53 +10:00
twinaphex
7d12408f24 x11_create_input_context - prevent memleak 2016-05-26 07:34:25 +02:00
twinaphex
6bd7fd482c Performance counters got function name changes 2016-05-21 13:14:25 +02:00
Twinaphex
72e1a33715 Merge pull request #3016 from Themaister/master
Add perf counter to fence waits.
2016-05-21 12:36:25 +02:00
Hans-Kristian Arntzen
218ecc07c1 Add perf counter to fence waits.
Makes it easy to check if we're GPU bound or not.
2016-05-21 12:13:46 +02:00
Twinaphex
e133ce31e8 (QNX) Buildfixes 2016-05-19 20:10:10 +02:00
twinaphex
0d833c903a Merge remote-tracking branch 'origin/vulkan-windows' 2016-05-16 07:51:01 +02:00
twinaphex
e2cc3bc08d Create gl_query_core_context_in_use 2016-05-16 05:55:42 +02:00
twinaphex
fc56f6ebdb Add some HAVE_THREADS ifdefs 2016-05-11 10:10:30 +02:00
twinaphex
4a7ab8366b Move libretro.h headers to libretro-common/include 2016-05-10 19:03:53 +02:00
twinaphex
b79b2dca13 Create performance_counters 2016-05-10 08:53:14 +02:00
twinaphex
dde471e001 Rename gfx_ structs 2016-05-10 02:39:09 +02:00
twinaphex
2ebb92834c Rename gfx_fbo_rect to video_fbo_rect 2016-05-10 02:34:36 +02:00
twinaphex
0e08dbe931 Rename gfx_coord to video_coord 2016-05-10 02:32:59 +02:00
twinaphex
ca976aeda9 Make gl_load_texture_data a static function 2016-05-09 03:44:46 +02:00
twinaphex
9c1885a46e Fix Display FPS 2016-05-08 22:00:30 +02:00
Torsten Paul
1979ea52d2 Suppress screensaver only if requested by user settings. 2016-05-08 19:22:45 +02:00
Hans-Kristian Arntzen
d723411436 De ioctl video_driver. 2016-05-08 14:00:51 +02:00
Hans-Kristian Arntzen
464a4add66 XMB ribbon works in Vulkan. 2016-05-08 11:11:28 +02:00
Torsten Paul
ccb224043b Initialize window name at window creation time (fixes #1521).
The protocol error reported in #1521 is caused by two different issues.
First xdg-screensaver fails to parse decimal values for the window id
(https://bugzilla.redhat.com/show_bug.cgi?id=1274931). Using the hex
notation fixes this part.

Second, the script reads the WM_NAME property from the window which is
not yet available at this time. Calling x11_update_window_title() early
ensures the property is set when xdg-screensaver is run.
2016-05-06 00:17:47 +02:00
twinaphex
a34ce90940 (d3d_common.cpp) Include d3dx9tex.h instead 2016-04-23 19:09:15 +02:00
twinaphex
6083f850aa (D3D) Buildfix 2016-04-23 19:04:19 +02:00
twinaphex
cc7f661f9c (D3D) Buildfixes 2016-04-23 19:02:40 +02:00
twinaphex
3902a6715a (D3D) Buildfix 2016-04-23 10:22:23 +02:00
twinaphex
38bc378c4d (D3D) Some buildfixes 2016-04-23 10:18:46 +02:00
twinaphex
61a71e91e0 (D3D common) Add C versions of functions 2016-04-23 09:26:38 +02:00
twinaphex
d9ddb92a90 (egl_common.c) Silence warning 2016-04-22 07:56:32 +02:00
twinaphex
641a37ce06 Change some function parameters for gl_ff_matrix/gl_ff_vertex 2016-04-17 05:00:42 +02:00
Hans-Kristian Arntzen
e04bbfbae2 Vulkan: Add more logging ... 2016-03-29 17:57:13 +02:00
Hans-Kristian Arntzen
c7b96b75b8 Vulkan: Add more error logging. 2016-03-29 17:36:13 +02:00
Hans-Kristian Arntzen
38a305bb6e Vulkan: Add proc address query functions to HW interface.
Allows cores to avoid linking directly against any extra library.
Update HW interface version to 2 to signal ABI change.

Note that the interface is still experimental and can change at any time.
2016-03-29 16:35:31 +02:00
Hans-Kristian Arntzen
02736963bc Vulkan: Implement get_context_data callback in Win32.
Also fix some potential crashes with dinput handling.
2016-03-29 15:50:12 +02:00
Hans-Kristian Arntzen
8ade7fb274 Vulkan: Attempt Windows backend support.
Completely bind since I cannot test myself, but compiles.
2016-03-29 15:50:12 +02:00
Hans-Kristian Arntzen
87a5fd2e44 win32_set_style: Fix broken pointer-to-pointer.
This can't possibly have worked in any sensible way before ...
2016-03-29 15:36:08 +02:00
Hans-Kristian Arntzen
1ff4445ba0 Remove dead code with full_x/full_y.
Very confusing and no longer serves any purpose anyways.
2016-03-29 15:28:13 +02:00
Hans-Kristian Arntzen
ca62f342b0 Vulkan: Fix original history.
Verified to work now.
2016-03-25 18:50:49 +01:00
Hans-Kristian Arntzen
83ab0d799f Vulkan: Begin implementing history and feedback. 2016-03-25 14:51:37 +01:00
twinaphex
e1c47a68fe Take prototype declaration out of video_driver.h 2016-03-23 06:57:29 +01:00
twinaphex
ca63357b54 (X11) Do not keep appending to suspend screensaver if not available 2016-03-21 19:12:16 +01:00
Hans-Kristian Arntzen
f1a5725f66 Vulkan: Host writes are implicitly flushed on submit.
Use TOP_OF_PIPE/0 access instead to work
around spammy asserts on Anvil.

We still have to invalidate the caches however.
2016-03-21 16:57:04 +01:00
Hans-Kristian Arntzen
fa7eeb57b8 Vulkan: Use 1.0.6.
1.0.2 is pre public release version I think ...
2016-03-21 10:03:15 +01:00
Hans-Kristian Arntzen
84923a0465 Vulkan: Tighten up pipeline barrier usage.
Lots of memory barriers used with TOP_OF_PIPE which is not valid.
2016-03-21 10:02:00 +01:00
twinaphex
34958ec39a (Vulkan) Don't use VK_API_VERSION any more 2016-03-20 03:04:52 +01:00
twinaphex
f79418459f Ability to compile now with --enable-wayland and --disable-x11
defined
2016-03-09 09:21:07 +01:00
Hans-Kristian Arntzen
f02faeea27 Vulkan: Fix segfault on nVidia. 2016-03-06 12:33:46 +01:00
Hans-Kristian Arntzen
ebdb7168ed Vulkan: Clean up symbol loading.
Should use GetDeviceProcAddr when appropriate.
2016-03-06 11:27:36 +01:00
twinaphex
eebcde721b Rename video_coord_array 2016-03-05 07:28:02 +01:00
twinaphex
418c5cbb76 (Win32) Buildfix 2016-03-04 05:01:49 +01:00
twinaphex
6d4212ca06 Check OS version before going down screensaver path 2016-03-04 04:51:57 +01:00
twinaphex
7d0205deac (vulkan_common.c) Add log error when vkCreateInstance fails 2016-03-02 03:13:31 +01:00
twinaphex
6f80e09ce1 Change MIN/MAX to upper-case 2016-03-02 00:07:31 +01:00
twinaphex
77001a5577 (Android) More preparation for Vulkan 2016-03-01 18:59:12 +01:00
twinaphex
86a8899b0f (Android) Start preparing Android JNI Makefiles for Android 2016-03-01 18:46:40 +01:00
twinaphex
e938be3747 Have to rewrite EGL context code 2016-03-01 06:49:05 +01:00
twinaphex
de27720044 We don't need to link against libvulkan.so implicitly anymore 2016-03-01 02:47:16 +01:00
twinaphex
b79edb6095 Reimplement function pointers 2016-03-01 02:21:53 +01:00
twinaphex
937230564d move more code to vksym.h 2016-03-01 01:53:48 +01:00
twinaphex
a6048b4218 Add vksym.h 2016-02-29 23:38:49 +01:00
twinaphex
7a907a97a7 Start preparing to split this code up 2016-02-29 23:31:51 +01:00
twinaphex
9a10ef5591 (Vulkan) Add more Vulkan function pointers 2016-02-29 23:28:12 +01:00
twinaphex
860b7fde62 (Vulkan) Add DeviceWaitIdle function pointer 2016-02-29 23:25:25 +01:00
twinaphex
1d9220d9d1 (Vulkan) Add vkCmdBindVertexBuffers function pointer 2016-02-29 23:22:56 +01:00
twinaphex
c8b9bb609f (Vulkan) More image function pointers 2016-02-29 23:19:23 +01:00
twinaphex
30eac5b778 (Vulkan) Add vkDestroyDescriptorPool fp 2016-02-29 23:13:13 +01:00
twinaphex
6023a5f06e Add vkAllocateDescriptorSets fp 2016-02-29 23:11:00 +01:00
twinaphex
4a1a623099 (Vulkan) Add more funcptrs 2016-02-29 23:09:05 +01:00
twinaphex
0e60d20705 Add Command Function pointers 2016-02-29 23:04:17 +01:00
twinaphex
67ea4e1d6b (Vulkan) Pipeline function pointers 2016-02-29 22:55:31 +01:00
twinaphex
1fbac78e35 (Vulkan) Go through function pointer for vkDestroyPipelineCache 2016-02-29 22:38:58 +01:00
twinaphex
a7df7be64b Add vkAllocateMemory/vkFreeMemory 2016-02-29 22:36:53 +01:00
twinaphex
a53e7a5437 (Vulkan) Add pipeline barrier function pointer 2016-02-29 22:30:23 +01:00
twinaphex
bd96ab3585 (vulkan_common.c) Cleanups 2016-02-29 22:26:20 +01:00
twinaphex
1b85ee442f Go through funcptr for vkAllocateCommandBuffers 2016-02-29 22:23:35 +01:00
twinaphex
83dc7db6c7 (Vulkan) Add descriptor set layout function callbacks 2016-02-29 22:04:23 +01:00
twinaphex
caed6c61cb (Vulkan) Function pointer for vkFreeCommandBuffers 2016-02-29 21:58:10 +01:00
twinaphex
1e407079e4 Add function pointers for image view functions 2016-02-29 21:55:54 +01:00
twinaphex
a6eb40b3d2 Add funcptr for vkAllocateCommandBuffers 2016-02-29 21:51:42 +01:00
twinaphex
4771c45ed3 Add render pass command function pointers 2016-02-29 21:43:04 +01:00
twinaphex
7f5d0f2763 (Vulkan) More function pointers for command buffer functions 2016-02-29 21:37:35 +01:00
twinaphex
860ffff3c9 (Vulkan) Go through funcptr for vkEndCommandBuffer 2016-02-29 21:31:51 +01:00
twinaphex
a1c8a47665 (Vulkan) Go through funcptr for vkDestroyInstance 2016-02-29 21:27:18 +01:00
twinaphex
c62971042d (Vulkan) Cleanups 2016-02-29 21:20:36 +01:00
twinaphex
eae652d6a5 Go through funcptr for vkDestroyCommandPool 2016-02-29 21:17:21 +01:00
twinaphex
f0458495f4 Go through funcptr for vkDestroyPipeline 2016-02-29 19:41:25 +01:00
twinaphex
d45f0e0946 Some cleanups 2016-02-29 19:39:49 +01:00
twinaphex
670eede306 Go through function pointer for vkCmdClearAttachments 2016-02-29 19:34:40 +01:00
twinaphex
fc7a972466 Go through function pointers for vkMapMemory/vkUnmapMemory 2016-02-29 19:20:42 +01:00
twinaphex
b660fb8878 Create sampler function pointers 2016-02-29 19:11:09 +01:00
twinaphex
0e91bb6852 Go through more function pointers 2016-02-29 19:03:18 +01:00
twinaphex
dfde6f833a (Vulkan) Nits 2016-02-29 18:46:17 +01:00
twinaphex
1d96e80b05 (Vulkan) More funcptrs 2016-02-29 18:40:30 +01:00
twinaphex
fbf527eac2 (vulkan_common.c) Style nits 2016-02-29 18:24:12 +01:00
twinaphex
ef93f92ea2 Cleanups 2016-02-29 17:22:57 +01:00
twinaphex
a8ccf2531d Cleanups 2016-02-29 17:21:40 +01:00
twinaphex
e6da374bb5 Cleanups 2016-02-29 17:18:28 +01:00
twinaphex
a4c9d02953 Add DestroyImage funcptr 2016-02-29 17:16:01 +01:00
twinaphex
874b5b7e17 Go through more funcptrs 2016-02-29 17:13:13 +01:00
twinaphex
8f69470c25 Go through VKFUNC macro 2016-02-29 17:00:08 +01:00
twinaphex
d6005c224c Go through VKFUNC 2016-02-29 16:55:50 +01:00
twinaphex
6836b5f868 vkCreateImage - go through funcptr 2016-02-29 16:48:55 +01:00
twinaphex
3677144d18 Start going through VKFUNC 2016-02-29 16:47:21 +01:00
twinaphex
6c9e8041c6 Add function pointer for vkCreateCommandPool 2016-02-29 16:41:49 +01:00
twinaphex
6dce80ea07 Add function pointers for vkCreatePipelineCache and vkCreatePipelineLayout 2016-02-29 16:37:15 +01:00
twinaphex
778b50fc28 Add funcptr for vkCreateFramebuffer 2016-02-29 16:32:34 +01:00
twinaphex
361cce328d vkCreateRenderPass - add funcptr 2016-02-29 16:30:45 +01:00
twinaphex
277e2977ff (Vulkan) Add function pointer to vkDestroyDevice 2016-02-29 16:28:12 +01:00
twinaphex
4248e244a8 Go through funcptr for vkCmdCopyImage 2016-02-29 06:52:08 +01:00
twinaphex
89ee08214d We need to grab a function pointer to vkCmdDraw later after
vkCreateDevice
2016-02-29 06:21:42 +01:00
twinaphex
be5333371b (Vulkan) More funcptrs 2016-02-29 06:16:31 +01:00
twinaphex
bfd38e171b (Vulkan) More Vulkan funcptrs 2016-02-29 05:57:38 +01:00
twinaphex
3abea50cbf Move function pointers to vulkan_context 2016-02-29 05:49:05 +01:00
twinaphex
2a621a8424 Go through vkEnumeratePhysicalDevices funcptr 2016-02-29 05:37:37 +01:00
twinaphex
cf03851cc8 Add vkGetDeviceQueue funcptr 2016-02-29 05:37:37 +01:00
twinaphex
5e970637d4 (Vulkan) Add more function pointers 2016-02-29 05:32:10 +01:00
twinaphex
25d741e26a Start setting up more function pointers 2016-02-29 04:21:08 +01:00
Alcaro
7a6463a300 Add escape hatch if rarch (or the core) is in an infinite loop. 2016-02-23 16:11:39 +01:00
Alcaro
04ac09f579 One thing less to worry about when copypasting this, less risk of repeating 2d5e10e840. 2016-02-23 16:08:57 +01:00
Alcaro
f8452e23c8 Don't use uninitialized variables. 2016-02-23 16:06:37 +01:00
twinaphex
ffd94d3ac0 We cannot rely on vulkan_intel.h being available, so just
include its contents inside vulkan_common.h
2016-02-23 01:24:15 +01:00
twinaphex
7da0739b61 Get rid of global g_egl_api now too 2016-02-22 11:54:55 +01:00
twinaphex
22a677b3a8 Don't use egl_common's 'api' variable anymore 2016-02-22 11:54:19 +01:00
Hans-Kristian Arntzen
cece4e5ae2 Vulkan: Add workaround for broken VkImageView swizzling.
Certain early drivers fail to apply swizzle mask.
2016-02-21 13:52:30 +01:00
Hans-Kristian Arntzen
6e7f1371dd Vulkan: Fix scenario where we limit the number of frames too much. 2016-02-21 13:03:26 +01:00
Hans-Kristian Arntzen
9e060bf088 Fix STATIC texture upload. 2016-02-21 13:01:53 +01:00
Hans-Kristian Arntzen
0dddd671f8 Vulkan: Use more approriate barrier 2016-02-21 12:59:11 +01:00
Hans-Kristian Arntzen
4259ea3d06 Merge branch 'master' of git://github.com/libretro/RetroArch 2016-02-21 12:45:26 +01:00
Hans-Kristian Arntzen
36eb07e067 Vulkan: Use copy paths if needed. 2016-02-21 12:33:16 +01:00
twinaphex
254e0bbd90 vulkan_common.h - style nits 2016-02-21 10:11:35 +01:00
twinaphex
f462954609 Style nits pt. 2 2016-02-21 10:09:41 +01:00
twinaphex
8ce2665383 Style nits 2016-02-21 10:08:36 +01:00
Hans-Kristian Arntzen
8550c16f86 Always try to use cached memory if we can for linear textures.
Should improve cores which use SOFTWARE_FRAMEBUFFER.
2016-02-20 15:17:25 +01:00
Hans-Kristian Arntzen
b61c05e10f Log the number of swapchain images we get. 2016-02-20 14:24:36 +01:00
Hans-Kristian Arntzen
111c37832a Make sure we get a queue which also supports compute.
Graphics + Compute queue must be supported.
2016-02-20 14:20:17 +01:00
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
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
d6906ee7df (xcb) Buildfix 2016-02-19 15:43:12 +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
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
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
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
twinaphex
51a94d6ac7 Remove unix_common 2016-02-17 22:09:37 +01:00
twinaphex
17e5e57bed Add unix_common 2016-02-17 08:01:30 +01:00
Hans-Kristian Arntzen
adbf9fed16 Vulkan implementation. 2016-02-16 20:42:02 +01:00
twinaphex
4941cd7dbd gl_ff_vertex - avoid glLoadIdentity 2016-02-14 03:47:33 +01:00
twinaphex
2fa46bcef8 Cleanups 2016-02-05 13:36:18 +01:00
twinaphex
a267bdfbe3 MOve gfx/image/image.c to gfx/video_texture_image.c 2016-01-30 02:39:08 +01:00
aliaspider
2ff854177c (WIN32) build fix 2016-01-18 20:03:34 +01:00
aliaspider
ee8e05050a (WIN32) fix runtime availability check for PowerCreateRequest. 2016-01-18 18:05:49 +01:00
twinaphex
54f46f4ee3 Update headers 2016-01-10 04:41:52 +01:00
twinaphex
c9017a5e09 buildfix 2016-01-09 07:14:46 +01:00
twinaphex
4178950483 move translate_filter to d3d_common.cpp 2016-01-09 06:28:42 +01:00
twinaphex
8327302d6b Have win32_set_video_mode use this code too 2016-01-09 05:28:52 +01:00
twinaphex
dad51f5677 Create win32_set_style 2016-01-09 05:24:27 +01:00
twinaphex
3e9820f6ae (D3D) Use win32_set_window 2016-01-09 05:04:47 +01:00