Commit Graph

367 Commits

Author SHA1 Message Date
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
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