Commit Graph

382 Commits

Author SHA1 Message Date
twinaphex b95ec0d28e Make sure this string is null-terminated 2016-10-21 20:14:51 +02:00
twinaphex c3ab8800f4 Prevent implicit memsets 2016-10-21 05:57:40 +02:00
Logan McNaughton 1717e8c938 Fix for zarch menu 2016-10-20 20:29:46 -06:00
Logan McNaughton d360bf17d5 Yet another fix for glUniformMatrix4fv
This should fix fullscreen toggling/context resets.
2016-09-28 08:18:32 -06:00
Logan McNaughton 01a03abdc5 Fix glUniformMatrix4fv call 2016-09-27 16:03:54 -06:00
Logan McNaughton 0d3e9875b1 Only call glUniformMatrix4fv if needed 2016-09-27 08:56:36 -06:00
Twinaphex 7672288fcd Revert "Only call glUniformMatrix4fv if needed" 2016-09-27 02:59:58 +02:00
Logan McNaughton fa48e95946 Only call glUniformMatrix4fv if needed 2016-09-26 14:24:27 -06:00
twinaphex b3ec735e75 Silence some more scan-build warnings 2016-09-25 15:25:20 +02:00
twinaphex 764a4319a0 (shader_glsl.c) Continue with iteration if pass is NULL 2016-09-24 17:04:49 +02:00
twinaphex b5416e4041 Change false to 0 2016-09-24 17:04:21 +02:00
twinaphex 5b5ad03ec3 Attempt to fix Coverity warnings 2016-09-24 17:04:01 +02:00
Higor Eurípedes c08650f1f9 Remove trailing whitespace 2016-09-17 21:20:27 -03:00
Higor Eurípedes d4305d65d9 (gl) Fix gl_check_error()
gl_check_error() was leaking memory and the error message was never
returned to the calling context.
2016-09-17 21:19:57 -03:00
twinaphex 6002fd9f2a (shader_vulkan.cpp) Nits 2016-09-16 17:50:57 +02:00
twinaphex 99aae8537b Use string_is_equal/stdstring.h 2016-09-16 17:33:18 +02:00
twinaphex 606e37fcbd Cleanups 2016-09-11 15:07:07 +02:00
twinaphex 7a36ea7d1c Silence warnings 2016-09-08 06:11:02 +02:00
twinaphex 642e46779b Cleanups 2016-09-06 23:59:43 +02:00
twinaphex 075aea2289 Header include cleanups 2016-09-06 00:56:00 +02:00
Twinaphex ef43a573a3 Silence warnings 2016-09-05 07:28:55 +02:00
twinaphex 1a241fa9ce Rewrite this 2016-09-05 07:22:44 +02:00
twinaphex 815c0eb3ee Remove header includes 2016-09-01 05:46:10 +02:00
twinaphex 4791174ea3 (MSVC 2003) Fixes 2006-01-17 06:11:55 +01:00
Logan McNaughton 2daf102111 Fix GLES3 compling 2016-08-07 22:33:07 -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
Hans-Kristian Arntzen fb407796e9 Vulkan: Add push constant support to slang.
Usually, the UBO is very small, so we can fit everything in fast-access
uniforms.
2016-08-02 12:51:30 +02:00
Hans-Kristian Arntzen 00de5aa2f0 Vulkan: Filter out duplicated parameters. 2016-08-01 22:10:14 +02:00
Hans-Kristian Arntzen efd3067903 Vulkan: Hook up shader parameters. 2016-08-01 22:10:14 +02:00
Hans-Kristian Arntzen a50c204d5e Vulkan: Begin parsing parameters. 2016-08-01 22:10:14 +02:00
Hans-Kristian Arntzen efee5d131a Vulkan: Make glslang shaders debuggable.
Properly handle file names, includes, etc to make
error reports somewhat more sane.
2016-08-01 14:27:23 +02:00
Hans-Kristian Arntzen bdcbc56507 Vulkan: Fix validation errors. 2016-07-31 19:59:36 +02:00
Hans-Kristian Arntzen e61ec38543 Vulkan: Mipmapped FBOs work. 2016-07-31 19:52:15 +02:00
Hans-Kristian Arntzen a48ba6c68b Vulkan: Add mipmapping support to Framebuffer class. 2016-07-31 19:23:42 +02:00
Hans-Kristian Arntzen 9a613ef8bf Vulkan: Actually bind correct part of the UBO. 2016-07-31 18:25:42 +02:00
Hans-Kristian Arntzen c0e752c53c Persistently map filter chain UBO. 2016-07-31 18:19:35 +02:00
Hans-Kristian Arntzen 10e864b26b Hook up wrapping modes. 2016-07-31 16:32:55 +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 e846bd4955 Vulkan: Hook up preliminary support for mip/wrapping modes. 2016-07-31 15:42:57 +02:00
Hans-Kristian Arntzen e57997bb82 Make image barriers hit the entire mipchain. 2016-07-31 13:05:07 +02:00
Hans-Kristian Arntzen cbca9513ab Basic LUT work. 2016-07-31 13:01:31 +02:00
Hans-Kristian Arntzen f208bba41e Add USER semantic to match user textures. 2016-07-31 12:39:07 +02:00
Hans-Kristian Arntzen d39a3619d6 Begin implementation of LUTs in Vulkan. 2016-07-31 12:26:14 +02:00
Hans-Kristian Arntzen e35191765c Vulkan: Fix PassOutput.
Oddly enough it worked during testing, but turns out it was never set
:')
2016-07-23 23:39:57 +02:00
Hans-Kristian Arntzen 4b7cadbae7 Vulkan: Fix silly bug with alias handling. 2016-07-23 23:23:22 +02:00
Hans-Kristian Arntzen 2174f7d99b Vulkan: Fix wrong error handling for missing file.
Apparently 0/1 is returned instead of 0/-1.
2016-07-23 21:59:17 +02:00
Hans-Kristian Arntzen 1e9e1fc885 Vulkan: Update SPIRV-Cross.
Fixes reflection issues which have been fixed in recent spirv-cross.
2016-07-15 22:12:57 +02:00
twinaphex 2a9bf91e0d Use MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE 2016-06-29 02:40:05 +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 b013a9c863 Vulkan: Replace prebaked shaders with glslc -mfmt=c.
Far more clean and avoids illegal punning.
2016-06-25 14:55:03 +02:00
Hans-Kristian Arntzen de36f572d1 Vulkan: Fix more validation issues. 2016-06-25 14:01:10 +02:00
twinaphex 883d9ff6b5 Add HAVE_SHADERPIPELINE define 2016-06-07 00:00:28 +02:00
twinaphex c1f9d7b498 (shader_glsl.c) Fix dereference after null check warnings 2016-06-05 19:02:13 +02:00
twinaphex 01390f8ceb Use retro_common_api.h 2016-06-03 08:06:49 +02:00
twinaphex 42971febba Fix resource leaks (pointed out by Coverity) 2016-05-24 22:01:43 +02:00
twinaphex 01e3362f21 Remove unused variable 2016-05-16 07:52:26 +02:00
twinaphex 8de39f261c (GLSL) Remove unused variables 2016-05-16 05:58:00 +02:00
twinaphex b4abec5181 Cleanups 2016-05-15 19:59:03 +02:00
twinaphex d63e7defb5 (GLSL) Remove more code 2016-05-15 19:58:02 +02:00
twinaphex 67d08f6790 Restore glsl_set_params 2016-05-15 19:56:53 +02:00
twinaphex c15ec92c83 (Cg) set_params - don't use set_uniform_parameter function - fixes PS3 port 2016-05-15 19:03:39 +02:00
twinaphex 2f69c20e39 Revert "(Shaders) Get rid of third parameter"
This reverts commit 52d6a21e55.
2016-05-15 17:26:23 +02:00
twinaphex 52d6a21e55 (Shaders) Get rid of third parameter 2016-05-15 17:22:55 +02:00
twinaphex f0b99edafc Prevent some warnings/errors from occurring with MESA_DEBUG 2016-05-12 04:29:36 +02:00
twinaphex dde471e001 Rename gfx_ structs 2016-05-10 02:39:09 +02:00
twinaphex 0e08dbe931 Rename gfx_coord to video_coord 2016-05-10 02:32:59 +02:00
twinaphex 6ae20f2016 Create managers/ dir - move cheats.c and state_manager.c to it 2016-05-09 18:20:52 +02:00
twinaphex 372e7d94cd Rename rewind.c to state_manager 2016-05-09 07:14:10 +02:00
twinaphex 3dfd8a0584 Split up vertex/fragment shader conditionals for XMB ribbon 2016-05-09 04:31:21 +02:00
Hans-Kristian Arntzen ade5131833 Vulkan: Move to SPIRV-Cross. 2016-05-08 12:43:58 +02:00
twinaphex e165954395 Rename libretro_version_1 to core_impl 2016-05-08 05:29:10 +02:00
twinaphex 6544772fb8 De-ioctl ify core_ctl 2016-05-08 01:33:57 +02:00
twinaphex ba415b6d3a Silence warnings 2016-04-27 23:07:36 +02:00
twinaphex 15a30dae70 CLeanups 2016-04-27 14:29:28 +02:00
twinaphex 7c4df601f8 (Cg) Call gl_cg_set_program_base_attrib for XMB pipeline shaders 2016-04-26 09:16:25 +02:00
Torsten Paul fdd6d26d85 Add uniform lookup for menu shaders.
This fixes the mix-up of parameter assignments for the XMB ribbon shader
which was caused by all 4 uniform locations set to 0.
2016-04-26 00:08:24 +02:00
twinaphex a83e6b3405 (Cg) Cleanups 2016-04-25 13:02:05 +02:00
twinaphex 0a3ca14fde (Cg) Rename cg_data to cg 2016-04-25 12:51:01 +02:00
twinaphex 43943fe794 (Cg) Cleanups 2016-04-25 12:33:38 +02:00
twinaphex d4184df592 (Cg) Call gl_cg_reset_attribs before initializing Cg shader backend 2016-04-25 12:22:55 +02:00
twinaphex 01a9185a2d (Cg) Cleanups 2016-04-25 12:07:23 +02:00
twinaphex 9ff8a3c8e2 (Cg) Cleanups 2016-04-25 11:59:46 +02:00
twinaphex 242e579b89 (Cg/GLSL) Name some variables the same 2016-04-25 10:15:57 +02:00
twinaphex 8cb66dd021 Add way to switch back and forth between shader pipeline 2016-04-24 22:03:39 +02:00
twinaphex b00202a83d (GLES2) Use XMB ribbon simple shader for GLES2 2016-04-24 20:29:42 +02:00
twinaphex d7b3e9cc8f Add old shader versions of XMB ribbon 2016-04-24 20:25:56 +02:00
Twinaphex 493b6850a5 Use include dir d3d/cg files 2016-04-23 18:19:35 +02:00
twinaphex ce077533c2 (GLSL) Increase attrib array size 2016-04-22 15:22:27 +02:00
twinaphex 99246ae3e8 (Cg) Cleanup 2016-04-22 14:37:11 +02:00
twinaphex 63f0e998db (Cg) Code deduplication cleanups 2016-04-22 14:05:45 +02:00
twinaphex 4250161327 (GLSL/Cg) Simplify some variables 2016-04-22 14:00:30 +02:00
twinaphex f3f6e6ff70 (Cg) Make cg_attribs bigger - would lead to overflows when sending
XMB ribbon to it
2016-04-22 13:27:50 +02:00
twinaphex ec4f961348 (XMB Cg) Ribbon works with Cg now too 2016-04-17 17:59:40 +02:00
Twinaphex c8d97d05e7 (shader_glsl.c) Fix warnings 2016-04-17 07:45:37 +02:00
twinaphex ef835f93d5 Change function signature for set_coords 2016-04-17 07:12:48 +02:00
twinaphex 58f145282e (XMB) Set uniform to vertex program and add 'add_prefix' to uniform_info struct 2016-04-17 06:11:48 +02:00
twinaphex 6579b5f3c8 Add XMB shader compilation to shader_gl_cg.c 2016-04-17 05:52:26 +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 e7ab158a3b (Cg) Refactor/cleanups 2016-04-17 03:56:20 +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
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 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 b63a3f8fcc (GLSL) CLeanups 2016-04-13 06:52:36 +02:00
twinaphex f2e3789c8e (GLSL) Update 2016-04-13 06:40:59 +02:00