Commit Graph

230 Commits

Author SHA1 Message Date
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
twinaphex 5f0aa1852e This needs to be properly refactored later 2016-04-12 17:56:34 +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 e41127459e Rename 'filestream' functions 2016-03-24 04:09:25 +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
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 840278796e Vulkan: Refactor out common resources in filter chain. 2016-03-21 11:45:59 +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 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 6f80e09ce1 Change MIN/MAX to upper-case 2016-03-02 00:07:31 +01:00
twinaphex d2645e9087 Add more glslang include dirs 2016-03-01 19:19:39 +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 de27720044 We don't need to link against libvulkan.so implicitly anymore 2016-03-01 02:47:16 +01:00