Commit Graph

5392 Commits

Author SHA1 Message Date
twinaphex 6579b5f3c8 Add XMB shader compilation to shader_gl_cg.c 2016-04-17 05:52:26 +02:00
twinaphex 30ade96fc0 Add Cg conversions of XMB ribbon/Zahnrad 2016-04-17 05:48:06 +02:00
twinaphex 641a37ce06 Change some function parameters for gl_ff_matrix/gl_ff_vertex 2016-04-17 05:00:42 +02:00
twinaphex 46b2100132 gl_cg_set_mvp - cleanup 2016-04-17 04:55:58 +02:00
twinaphex 07d28091a2 (GLSL) CLeanups 2016-04-17 04:52:13 +02:00
twinaphex 19367da0ae (GLSL) Cleanups 2016-04-17 04:37:38 +02:00
twinaphex 9386fb2fa0 Move D3D9 HLSL font shader to file 2016-04-17 04:13:23 +02:00
twinaphex e7ab158a3b (Cg) Refactor/cleanups 2016-04-17 03:56:20 +02:00
twinaphex ade309d1f1 (D3D Cg) Cleanups 2016-04-17 03:51:24 +02:00
twinaphex b3220cf53e Move zahnrad shaders to separate files 2016-04-17 02:36:07 +02:00
Twinaphex 8616b21e1f Merge pull request #2869 from aliaspider/master
(3DS) change shader format/assembler
2016-04-17 00:18:00 +02:00
twinaphex e9d16655f0 Create d3d_shaders 2016-04-17 00:16:32 +02:00
twinaphex 02e0be55a8 Move GL stock shader to gfx/drivers/gl_shaders 2016-04-17 00:11:52 +02:00
twinaphex f0f60901ff Move all shader files to header files (gfx/drivers/gl_shaders) 2016-04-17 00:08:45 +02:00
twinaphex 8b6abde2f9 Start moving GL shaders to gfx/drivers/gl_shaders 2016-04-16 23:57:37 +02:00
aliaspider ad0d73d8f0 (3DS) refactor shaders. simplify texture combiner usage. 2016-04-16 22:38:13 +01:00
aliaspider c370afd861 (3DS) start porting shaders to the picasso format. 2016-04-16 20:26:05 +01:00
twinaphex d8de78231b Add SHADER_CTL_SET_PARAMETER 2016-04-16 21:04:13 +02:00
twinaphex 5d6b4d0a56 (GLSL) Refactor more code 2016-04-16 20:41:52 +02:00
twinaphex 3b5c4d963a (shader_glsl.c) Lessen calls to glGetUniformLocation 2016-04-16 20:39:57 +02:00
twinaphex a99dcaa929 (Cg) Get rid of pragma_cg_params 2016-04-16 20:35:08 +02:00
twinaphex 6d7dab2e66 (Cg) Fix Cg named parameter lookup 2016-04-16 20:32:45 +02:00
twinaphex 0b4ae30f6b Fix erroneous loop variable passing 2016-04-16 20:23:55 +02:00
twinaphex 7f9249830a set_uniform_parameter - implement parameter lookup properly 2016-04-16 20:06:18 +02:00
twinaphex 4e63113f72 Cleanups 2016-04-16 19:50:23 +02:00
twinaphex d562bf38cb Cleanups 2016-04-16 19:44:44 +02:00
twinaphex 0b7ee2fcf7 Change callback prototype 2016-04-16 19:41:48 +02:00
twinaphex 1230edf1ee Add callback for setting single uniform parameter 2016-04-16 19:38:35 +02:00
twinaphex ae218cf1a5 Expand uniform_set_parameter functions 2016-04-16 19:29:45 +02:00
twinaphex ad627701da (XMB) Cleanups 2016-04-16 17:57:51 +02:00
twinaphex f45d2db0b1 Change function signature of uniform_set_parameter 2016-04-16 07:39:41 +02:00
Twinaphex ae561de0c8 (Griffin) Buildfixes 2016-04-16 07:32:39 +02:00
Twinaphex 5bba5813cf Cleanups - remove unused variables 2016-04-16 07:27:47 +02:00
twinaphex 87e8c28749 Favoritize GLSL as default shader type when available 2016-04-16 07:24:22 +02:00
twinaphex 92faefbccc (GL) Cleanups - gl_set_shader 2016-04-16 07:19:21 +02:00
twinaphex dfe723c727 gl_shader_init - cleanup 2016-04-16 07:16:32 +02:00
twinaphex 4e041ff3d0 (GL) gl_shader_init - Cleanups 2016-04-16 05:36:09 +02:00
twinaphex 1dfb29ddaf Add video_shader_set_backend 2016-04-16 05:20:41 +02:00
twinaphex 7b88378952 Add params to video_shader_ctx_init 2016-04-16 05:14:39 +02:00
twinaphex 1f7e6690e3 compile_program - if 'program' is NULL, then try to set program
to built-in shader program slot
2016-04-16 04:58:03 +02:00
twinaphex 86cb092b02 Add SHADER_CTL_COMPILE_PROGRAM 2016-04-16 04:56:15 +02:00
twinaphex 79ef0268e5 (Cg) Cleanups 2016-04-16 04:34:32 +02:00
twinaphex 1439b38b20 (Cg shader) Cleanups 2016-04-16 04:31:24 +02:00
twinaphex 2479699131 Cleanups 2016-04-16 01:51:46 +02:00
twinaphex 8a90e2777c Rename GL_SHADER_STOCK_BLEND to VIDEO_SHADER_STOCK_BLEND 2016-04-16 01:50:20 +02:00
twinaphex 9d85afd358 Refactor SHADER_CTL_USE 2016-04-15 07:37:06 +02:00
twinaphex 0f65518118 Add set_active to 'use' function callback for shader driver 2016-04-15 05:08:03 +02:00
twinaphex 934681614f Cleanup 2016-04-15 05:01:32 +02:00
twinaphex 6a39d504e0 Change signature of uniform_set_parameters 2016-04-14 06:24:36 +02:00
twinaphex 7cd10fd707 Start creating stub hlsl_uniform_set_parameter 2016-04-14 03:52:29 +02:00
twinaphex f418c7fde1 Cleanups 2016-04-14 03:41:53 +02:00
twinaphex b9bb75c193 (HLSL) Refactor hlsl_compile_program 2016-04-14 03:38:45 +02:00
twinaphex e61e617e80 (HLSL) Cleanups 2016-04-14 03:20:19 +02:00
twinaphex a2acb0e6f0 Cleanups 2016-04-14 03:16:24 +02:00
twinaphex c6292a38f5 Cleanups 2016-04-14 03:11:13 +02:00
twinaphex 8701af084a (HLSL) Cleanups 2016-04-14 03:09:15 +02:00
twinaphex 5cc1b85f70 (HLSL) Cleanups 2016-04-14 03:06:59 +02:00
twinaphex 930b854272 Refactor compile_programs functions 2016-04-14 01:53:23 +02:00
twinaphex 5f98068e7d Add shader_program_data 2016-04-14 01:33:43 +02:00
twinaphex 90018dbbe0 (Cg) Cleanups 2016-04-14 01:18:27 +02:00
twinaphex 0093e0cbf9 (Cg) Fix state tracker params too 2016-04-14 01:15:16 +02:00
twinaphex 74be1f5906 (Cg) Should fix pragma parameters 2016-04-14 01:12:14 +02:00
twinaphex 511fbcda93 (Shaders) Refactor shader program compiling code 2016-04-13 20:14:25 +02:00
twinaphex 1e9aed1683 Create struct shader_program_info 2016-04-13 20:06:43 +02:00
twinaphex f28c0475b5 (Shaders) Refactors 2016-04-13 19:58:40 +02:00
twinaphex 29495d4973 (Shaders) Cleanups 2016-04-13 19:27:04 +02:00
twinaphex 7321a9431b Cleanup 2016-04-13 18:24:31 +02:00
twinaphex b63a3f8fcc (GLSL) CLeanups 2016-04-13 06:52:36 +02:00
twinaphex f2e3789c8e (GLSL) Update 2016-04-13 06:40:59 +02:00
twinaphex 45d4718406 (GLSL) Refactor/cleanup 2016-04-13 06:40:40 +02:00
twinaphex f7c0225e1a (GLSL) More cleanups 2016-04-13 06:30:00 +02:00
twinaphex 015c166b1d (GLSL) Cleanups 2016-04-13 06:25:49 +02:00
twinaphex 9218d57b9d (GLSL) Cleanups 2016-04-13 06:18:53 +02:00
twinaphex 53dad5bc73 (GLSL) Cleanups 2016-04-13 06:04:29 +02:00
twinaphex edcf3fd1ee Cleanups 2016-04-13 05:11:22 +02:00
twinaphex 49e43dd085 (GLSL) Cleanup 2016-04-13 05:06:24 +02:00
twinaphex ea824bdee1 Start implementing glsl_uniform_set_parameter 2016-04-13 04:44:08 +02:00
twinaphex bf39033bc3 Add 'enabled' attribute to uniform_params 2016-04-13 04:21:17 +02:00
twinaphex c3f77efb2c Prepare new GLSL uniform code 2016-04-13 04:16:49 +02:00
twinaphex c5e4c90e88 (Cg) Flesh out uniform switch 2016-04-13 02:54:01 +02:00
twinaphex 960783987d (GLSL) Rename gl_uniforms and glsl_vbo 2016-04-13 02:36:00 +02:00
twinaphex f68d98a6a4 Move uniform info structs to video_shader_driver.h 2016-04-13 02:31:49 +02:00
twinaphex 928f4e9e65 (Cg) Cleanup 2016-04-13 01:46:29 +02:00
twinaphex df90f233a4 (GL Cg) Refactor uniform param code 2016-04-13 01:42:40 +02:00
twinaphex 5f0aa1852e This needs to be properly refactored later 2016-04-12 17:56:34 +02:00
Jean-André Santoni 64e2f9e2f0 (XMB) Subtler drop shadows 2016-04-09 13:23:59 +07:00
twinaphex 15fa7f9cd1 GFX_CTL_CHECK_WINDOW - prevent null pointer dereferences 2016-04-02 20:53:13 +02:00
Hans-Kristian Arntzen 406f084c4b Vulkan: Set g_inited in Windows. 2016-03-29 18:02:32 +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 8c2664e5fb Vulkan: Add explicit render target format support.
Supports all required formats in Vulkan 1.0 as well as GLES 3.x/GL 3.x
(for future).
2016-03-26 23:49:57 +01:00
Hans-Kristian Arntzen 236200ef63 Vulkan: Add format enum for various possible RT formats.
Include all formats which are required to be supported in Vulkan 1.0 and
GLES 3.x. Not all these formats are supported in GLES2, but that's up to
shaders to decide whether they want to support GLES2 or not.
2016-03-26 22:52:32 +01:00
Hans-Kristian Arntzen 82db5a4950 Vulkan: Use single UBO for all passes and sync indices.
Significantly reduces number of allocations.
2016-03-26 19:39:51 +01:00
Hans-Kristian Arntzen 200b88c3ca Vulkan: Add detection for non-causal filter chains. 2016-03-26 18:27:17 +01:00
Hans-Kristian Arntzen b1bd0f7b7f Ignore known pragmas. 2016-03-26 18:07:59 +01:00
Hans-Kristian Arntzen 7d5eb2bc27 Vulkan: Add pass name handling.
Add #pragma name.
2016-03-26 18:00:09 +01:00
Hans-Kristian Arntzen 21c7ff99d1 Vulkan: Add semantic name remapping.
Will be useful for custom named passes.
2016-03-25 23:15:23 +01:00
Hans-Kristian Arntzen 3838b3c045 Vulkan: Add frame count suport. 2016-03-25 22:06:31 +01:00
Hans-Kristian Arntzen b7b03c531a Vulkan: Use single VBO in filter chain.
No need to have two separate buffers here.
2016-03-25 19:23:58 +01:00
Hans-Kristian Arntzen 939bc70ac6 Vulkan: Properly resize and clear feedback textures. 2016-03-25 19:16:39 +01:00
Hans-Kristian Arntzen ca62f342b0 Vulkan: Fix original history.
Verified to work now.
2016-03-25 18:50:49 +01:00
Hans-Kristian Arntzen 79f5e9ca98 Vulkan: Add logging about feedback/history. 2016-03-25 17:45:30 +01:00
Hans-Kristian Arntzen 92601a0fb8 Vulkan: Set arrayed semantic textures. 2016-03-25 17:39:24 +01:00
Hans-Kristian Arntzen 80df588cf0 Vulkan: Implement feedback/history. 2016-03-25 15:32:04 +01:00
Hans-Kristian Arntzen e35e0e0f23 Vulkan: Nits. 2016-03-25 14:53:47 +01:00
Hans-Kristian Arntzen 83ab0d799f Vulkan: Begin implementing history and feedback. 2016-03-25 14:51:37 +01:00
Hans-Kristian Arntzen 4f3ade1b95 Vulkan: Begin sketching out support for complete filter chain. 2016-03-25 13:26:36 +01:00
twinaphex 1b289c0f05 (libretro-common) Update 2016-03-24 04:23:17 +01:00
twinaphex e41127459e Rename 'filestream' functions 2016-03-24 04:09:25 +01:00
twinaphex 870bce981d (gl.c) Indenting nits 2016-03-24 03:32:00 +01:00
twinaphex 60681195f8 Fix some concurrency bugs 2016-03-24 03:06:03 +01:00
twinaphex 072d6ff125 Rename gfx_coord_array_add to gfx_coord_array_append 2016-03-23 07:01:54 +01:00
twinaphex e1c47a68fe Take prototype declaration out of video_driver.h 2016-03-23 06:57:29 +01:00
Hans-Kristian Arntzen ce34c4bba8 Vulkan: Expose number of components for semantics. 2016-03-23 00:19:24 +01:00
Hans-Kristian Arntzen d5dc50c436 Vulkan: Allow no UBO even if it makes little sense. 2016-03-23 00:19:24 +01:00
Hans-Kristian Arntzen c17755ab1a Vulkan: Default construct slang_reflection instead.
We will use non-POD when dealing with user-defined inputs.
2016-03-23 00:19:24 +01:00
Hans-Kristian Arntzen 2427351afb Vulkan: Log semantic use for debugging. 2016-03-23 00:19:24 +01:00
Hans-Kristian Arntzen 39149b36b2 Vulkan: Clean up semantic parsing a lot.
Split up into two kinds of semantics, textured and not.
2016-03-23 00:19:24 +01:00
twinaphex 61bae588fb Header include changes 2016-03-22 02:45:25 +01:00
twinaphex ca63357b54 (X11) Do not keep appending to suspend screensaver if not available 2016-03-21 19:12:16 +01:00
twinaphex c8f4d97839 Move config_file_userdata outside libretro-common 2016-03-21 18:49:50 +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 6add83e3ec Vulkan: Use reflection output for source/original.
Fix some logging messages in reflection.
2016-03-21 16:18:43 +01:00
Hans-Kristian Arntzen dce96d0869 Vulkan: Find OutputSize semantic uniform as well. 2016-03-21 15:31:01 +01:00
Hans-Kristian Arntzen 1822f3bf90 Vulkan: Begin hooking up SPIR-V reflection. 2016-03-21 15:12:12 +01:00
Hans-Kristian Arntzen 72cdd37ad2 Vulkan: Add #include support to slang shaders. 2016-03-21 12:14:11 +01:00
Hans-Kristian Arntzen 5dcb78ea21 Vulkan: Include spir2cross in shader_vulkan.cpp. 2016-03-21 11:56:09 +01:00
Hans-Kristian Arntzen 7899d449e6 Vulkan: Also invalidate fragment uniform buffer 2016-03-21 11:49:27 +01:00
Hans-Kristian Arntzen 840278796e Vulkan: Refactor out common resources in filter chain. 2016-03-21 11:45:59 +01:00
Hans-Kristian Arntzen a21687b5d7 Vulkan: Ensure vertex caches are invalidated. 2016-03-21 10:10:29 +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
Hans-Kristian Arntzen 07524fe433 Vulkan: Log about format use. 2016-03-21 09:29:41 +01:00
twinaphex 1164adb902 (gfx/video_coord_array.c) Cleanups 2016-03-20 17:46:53 +01:00
twinaphex f59e334ceb Cleanups 2016-03-20 17:44:13 +01:00
twinaphex 5c0f4f4ac8 Cleanups 2016-03-20 17:41:28 +01:00
twinaphex ac6362cae4 Combine list_special files 2016-03-20 17:28:24 +01:00
twinaphex 3720cf87e7 Rename retro_file to file_stream 2016-03-20 16:29:14 +01:00
twinaphex 93b7dc1bdd (libretro-common) move 'lists' files to lists/ 2016-03-20 14:53:54 +01:00
twinaphex 70bb4c69f3 CXX_BUILD - silence some warnings 2016-03-20 05:26:16 +01:00
twinaphex 8b4a41155d C89_BUILD buildfixes 2016-03-20 05:24:05 +01:00
twinaphex 34958ec39a (Vulkan) Don't use VK_API_VERSION any more 2016-03-20 03:04:52 +01:00
Alcaro f8c31dd56a No point checking this twice. 2016-03-18 17:19:30 +01:00
Alcaro ba90c4afaf Fix some use-after-free holes. 2016-03-18 17:18:45 +01:00
twinaphex d8ebcde5ec Implement GFX_CTL_SHOW_MOUSE 2016-03-14 14:39:58 +01:00
twinaphex 2e080967b0 Reimplement grab mouse code a bit - we really need to drastically
rewrite this
2016-03-14 14:37:18 +01:00
Alwin Garside 36117750af Merge branch 'master' of https://github.com/libretro/RetroArch 2016-03-13 15:30:41 +01:00
Alwin Garside 97b60b1e20 Fixed emscripten build 2016-03-13 15:30:30 +01:00
twinaphex 8467ce114c (Android) Followup to earlier commit 2016-03-12 08:53:27 +01:00
twinaphex 432d7a358a (Android) Move Android-specific Moto G2 DPI workaround to android graphics context
driver
2016-03-12 08:52:29 +01:00
Jean-André Santoni 0863a8eb84 Reorder static functions in vivante context 2016-03-12 04:29:26 +07:00
Jean-André Santoni a16ce4a146 Fix a typo in mali_fbdev_ctx 2016-03-10 01:50:30 +07: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 c00d32f30f Vulkan: Get correct window mode size. 2016-03-06 12:18:11 +01:00
Hans-Kristian Arntzen 6cde59a8ad Vulkan: Add more detailed counters. 2016-03-06 12:11:44 +01:00
Hans-Kristian Arntzen e6fb3c3a1c Update Vulkan headers. 2016-03-06 11:31:30 +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 e0d7c25ea0 Add gfx_coord_array_resize 2016-03-05 09:43:15 +01:00
twinaphex eebcde721b Rename video_coord_array 2016-03-05 07:28:02 +01:00
twinaphex 64a77af881 Use RARCH_DISPLAY_CTL_HW_CONTEXT_GET directly instead of
going through video_driver_callback
2016-03-04 20:49:55 +01:00
twinaphex a9d29041a3 (gfx/video_driver.c) Cleanup 2016-03-04 20:14:53 +01:00
twinaphex e9a0aba85b Silence bunch of warnings and fix an error 2016-03-04 19:42:30 +01:00
twinaphex 90fbc6330c Create RARCH_DISPLAY_CTL_SET_TITLE_BUF 2016-03-04 19:38:15 +01:00
twinaphex 05ce32efe4 Add RUNLOOP_CTL_FORCED_NONBLOCK_{} actions 2016-03-04 19:20:00 +01:00
twinaphex fe9ad4825d (gfx/video_driver.c) Cleanups 2016-03-04 19:12:54 +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 414c63b59a (VG) Silence some warnings
(Libretro-common) Add some headers
2016-03-02 23:09:31 +01:00
Christopher Bransden 2d0c02d21e Fix compilation error:
gfx/drivers_context/vc_egl_ctx.c:591:13: error: static declaration of ‘gfx_ctx_vc_set_swap_interval’ follows non-static declaration
gfx/drivers_context/vc_egl_ctx.c:312:4
2016-03-02 21:31:56 +00:00
twinaphex 0f8e31cad3 (iOS) Use -1 instead of UIUserInterfaceIdiomUnspecified for backwards
compatibility
2016-03-02 17:25:13 +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 702d4f9e3a (Android) Buildfix 2016-03-01 22:26:57 +01:00
twinaphex efb1c88215 (opendingux_fbdev_ctx.c) Another ifdef 2016-03-01 22:23:40 +01:00
twinaphex f3cc1a9b59 (opendingux_fbdev_ctx.c) More HAVE_EGL ifdefs 2016-03-01 22:23:17 +01:00
twinaphex ac584330bb (Android) Bugfix 2016-03-01 21:58:35 +01:00
twinaphex 1b0a9d0b1d Backport Opendingux/GCW Zero patches courtesy of gama.coder 2016-03-01 21:50:23 +01:00
twinaphex d2645e9087 Add more glslang include dirs 2016-03-01 19:19:39 +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 c44107949d (Vulkan) Pass width and height to vulkan_surface_create 2016-03-01 18:35:41 +01:00
twinaphex 5f125bc1f6 (Android) Only need to pass window for Android 2016-03-01 18:22:17 +01:00
twinaphex eaa0b08bc2 (Android) Hook up Vulkan for gfx_ctx_bind_api 2016-03-01 18:21:09 +01:00
twinaphex b8c1e31c13 (Android/Vulkan) Start hooking up Vulkan for Android context driver 2016-03-01 18:16:22 +01:00
twinaphex 81690601c0 (gl_raster_font.c) Fix some race issues 2016-03-01 17:24:33 +01:00
Themaister bce0d55a43 Vulkan: Allocate correct number of descriptors.
Have to allocate for entire pool, not per set.
2016-03-01 09:44:18 +01:00
twinaphex dc12f07a55 (mali_fbdev) Add some ifdefs 2016-03-01 07:17:57 +01:00
twinaphex 59ed4b939f Cleanups 2016-03-01 07:09:55 +01:00
twinaphex 47fddf28e5 (Emscripten context) Cleanups 2016-03-01 07:07:56 +01:00
twinaphex 32c4f13761 (XEGL) Add HAVE_VG ifdefs 2016-03-01 06:56:41 +01:00
twinaphex e938be3747 Have to rewrite EGL context code 2016-03-01 06:49:05 +01:00
twinaphex ae6302ede2 (Android EGL context) Add missing break 2016-03-01 05:09:07 +01:00
twinaphex 00741d06fb Add android_gfx_ctx_bind_hw_render 2016-03-01 05:08:18 +01:00
twinaphex c5667d8253 (Android EGL context) Refactor more code 2016-03-01 05:07:11 +01:00
twinaphex 2480181469 (Android) Add android_api variable 2016-03-01 04:53:48 +01:00
twinaphex 481196c55c Add some more ifdefs 2016-03-01 04:19:33 +01:00
twinaphex f8f2f7d03c Rename androidegl_ctx.c to android_ctx.c 2016-03-01 04:18:43 +01:00
twinaphex 0ec1c5ade5 Start adding HAVE_OPENGLES ifdefs to androidegl_ctx.c 2016-03-01 04:17:02 +01:00
twinaphex de27720044 We don't need to link against libvulkan.so implicitly anymore 2016-03-01 02:47:16 +01:00
twinaphex b0834a0f17 Remove this 2016-03-01 02:22:25 +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 8232135922 Cleanups 2016-02-29 20:08:56 +01:00
twinaphex e669f92399 (Vulkan) Cleanups 2016-02-29 20:07:11 +01:00
twinaphex 3b9552bd36 (vulkan_raster_font.c) Style nits 2016-02-29 20:02:44 +01:00
twinaphex 8a06e27c22 (Vulkan) Cleanups 2016-02-29 19:44:46 +01:00
twinaphex 59ad8fcfde (Vulkan) Cleanups 2016-02-29 19:43:54 +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 ae5d7849af (shader_vulkan.cpp) Don't have to include general.h for this 2016-02-29 19:23:51 +01:00
twinaphex fc7a972466 Go through function pointers for vkMapMemory/vkUnmapMemory 2016-02-29 19:20:42 +01:00
twinaphex 28d5ca6a86 (Vulkan) Style nits 2016-02-29 19:16:21 +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 8fd280967b Go through funcptr 2016-02-29 17:08:25 +01:00
twinaphex 5863996d83 Go through VKFUNC 2016-02-29 17:06:41 +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 01f5a7ad84 Go through vkQueueWaitIdle function pointer 2016-02-29 06:31:55 +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
twinaphex 82f5d917f0 Start trying to roll our own Vulkan loader based on PPSSPP
approacha
2016-02-29 03:14:17 +01:00
twinaphex a8185f0b81 Cleanups 2016-02-29 02:54:46 +01:00
twinaphex b4e872476b Prevent some more crashes 2016-02-29 02:09:10 +01:00
twinaphex 4f1ab1f9c3 (gl_raster_font.c) Add early return in case gl pointer is NULL 2016-02-29 01:54:54 +01:00
twinaphex 65b628cf20 Cover more edge cases for crashes initiated by Zarch 2016-02-29 01:49:58 +01:00
twinaphex 09f2b64c1f gl_render_overlay -add early return 2016-02-29 01:43:40 +01:00
twinaphex 34f3963e4e Simplify RUNLOOP_CTL_IS_SLOWMOTION 2016-02-29 01:33:14 +01:00
twinaphex 6fbad68561 (gl.c) Cleanup 2016-02-29 01:29:49 +01:00
twinaphex 7d346d627f Robustness fixes 2016-02-29 01:22:39 +01:00
twinaphex ca497533db Fix C89_BUILD warning 2016-02-28 22:47:46 +01:00
Monroe88 a669039523 Add option for menu linear filter 2016-02-27 17:30:12 -06:00
twinaphex ac3cb48302 (VG) Style nits 2016-02-26 17:36:39 +01:00
twinaphex d9b86c4f6b Remove stub xshm video driver for now 2016-02-26 17:29:35 +01:00
twinaphex 2746bf0cb1 (xvideo.c) Cleanups 2016-02-26 17:26:26 +01:00
twinaphex 94b8e8820e (xvideo.c) Style nits 2016-02-26 17:24:36 +01:00
Twinaphex ea2094126b (iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix(iOS) Buildfix 2016-02-26 14:25:57 +01:00
Twinaphex 7e641b7274 (OSX) Silence deprecation warnings 2016-02-26 13:44:45 +01:00
twinaphex 4dfed7e930 Cast to NSOpenGLContext * 2016-02-26 13:39:01 +01:00
twinaphex dcefb740f2 Create glcontext_get_ptr 2016-02-26 13:36:12 +01:00
twinaphex c4b80e0e44 Fix CXX_BUILD - doesn't like a variable being named 'template' 2016-02-23 17:11:30 +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
FIX94 1ed54b8683 Merge branch 'master' of https://github.com/FIX94/RetroArch 2016-02-23 03:40:40 +01:00
FIX94 4f48e61b98 (GX) allow all resolutions to use aspect ratio settings and allow custom viewport x and y to use as much of the screen as possible while making sure to keep the system screen position in mind 2016-02-23 03:40:14 +01:00
twinaphex 6f6ba98576 (DRM) Add more HAVE_EGL ifdefs 2016-02-23 01:34:28 +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 6429bb6a40 (X context) rename g_api to x_api 2016-02-22 13:29:32 +01:00
twinaphex e688770e64 (SDL GL Ctx) Rename g_api to sdl_api 2016-02-22 13:26:26 +01:00
twinaphex f8a2014b7e (DRM) Rename g_drm to drm 2016-02-22 13:25:48 +01:00
twinaphex aa4015837f (DRM) DRM context driver should compile now without OpenGL 2016-02-22 13:04:34 +01:00
twinaphex d537b6ee9f Rename some files 2016-02-22 13:01:16 +01:00
twinaphex 1a5d2ce85c Start divorcing DRM context from EGL 2016-02-22 12:59:13 +01:00
twinaphex 85804838ad (DRM) More refactors 2016-02-22 12:56:16 +01:00
twinaphex 09fba6016b (DRM) Cleanups 2016-02-22 12:50:45 +01:00
twinaphex 034f1769c9 (DRM) Cleanups 2016-02-22 12:43:18 +01:00
twinaphex cc622b6905 Start getting rid of 'egl' namespace conventions in drm_egl context
driver
2016-02-22 12:37:38 +01:00
twinaphex ef1feca097 Some C89_BUILD fixes 2016-02-22 12:25:41 +01:00
twinaphex 47b34b38d2 (DRM) More HAVE_EGL ifdefs 2016-02-22 12:10:23 +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
twinaphex fd7a62f5ca (Wayland) Context driver doesn't use egl api anymore 2016-02-22 11:48:17 +01:00
twinaphex a8a871bd4e (DRM) Create drm_api 2016-02-22 11:47:18 +01:00
twinaphex e4935d490c (DRM) Uses its own sighandler and atomic quit variable 2016-02-22 11:46:08 +01:00
twinaphex 3bebc2284f DRM gets its own interval variable inside data struct 2016-02-22 11:42:36 +01:00
twinaphex b421bdf687 (drm_egl_ctx.c) More ifdefs 2016-02-22 11:37:37 +01:00
twinaphex eceadcde2b (drm_egl_ctx.c) Add HAVE_EGL/HAVE_OPENGL ifdefs 2016-02-21 23:49:50 +01:00
Hans-Kristian Arntzen c4104ae37c Wayland: Add metrics support. 2016-02-21 22:04:56 +01:00
Hans-Kristian Arntzen 52a515f0d3 Wayland: Add HiDPI awareness. 2016-02-21 21:35:06 +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 f09338b1b8 Set alphaBlendOp correctly. 2016-02-21 13:40:19 +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
twinaphex 5f50034514 Refactor gfx_ctx_x_bind_api 2016-02-20 20:47:06 +01:00
twinaphex fbc7eaf287 (vulkan.c) Style nits 2016-02-20 20:29:52 +01:00
twinaphex 1426cf7fb2 (vulkan.c) Style nits 2016-02-20 20:15:46 +01:00
twinaphex 25c1c6202f Silence warning 2016-02-20 19:46:35 +01:00
twinaphex 9aeceadee6 Style nits for header 2016-02-20 16:37:59 +01:00
twinaphex 4bb3f35a02 80-char width limit style nits 2016-02-20 16:36:54 +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 fa449646e9 Bug fixes for Vulkan readback.
We were getting weird and inconsistent viewport sizes back.
2016-02-20 14:04:33 +01:00
Hans-Kristian Arntzen bcac4a204f Vulkan: Set initial viewport after keep_aspect is correct.
Fixes fullscreen recording.
2016-02-20 13:46:20 +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 459c55989a Use vkCmdCopyImage for readbacks.
Blits often imply render targets.
2016-02-20 11:21: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