Commit Graph

729 Commits

Author SHA1 Message Date
twinaphex 8f1aa8c2c3 (shader_gl_core.cpp) Cleanups 2020-01-22 13:52:14 +01:00
twinaphex 376ad6d61d move more C functions over to gl_core.c 2020-01-22 13:12:00 +01:00
twinaphex 90874b434e (shader_vulkan.cpp) Move more C code to vulkan_common.c 2020-01-22 12:09:08 +01:00
twinaphex bcf8ff3d0a (shader_gl_core) Get rid of ConfigDeleter - move C code to gl_core.c 2020-01-22 11:57:06 +01:00
twinaphex c8227c95dd (shader_gl_core) get rid of ConfigDeleter 2020-01-22 11:35:00 +01:00
twinaphex b8cd37aef7 (shader_vulkan.cpp) Get rid of ConfigDeleter 2020-01-22 11:29:40 +01:00
twinaphex f853632260 Move framebuffer generate_mips function to vulkan_common.c 2020-01-22 10:52:20 +01:00
twinaphex e9c73bd9a6 (Vulkan) Move more C code to vulkan_common.c 2020-01-22 10:41:38 +01:00
twinaphex ef27a660a7 (shader vulkan) Cleanups - moving C code out of the C++ file 2020-01-22 10:11:42 +01:00
twinaphex 1fd6d024eb More buildfixes for ANGLE 2019-12-07 07:24:20 +01:00
twinaphex a0486c3cd7 Revert "Simplify slang_process.cpp"
This reverts commit 25a417cdd7.
2019-11-12 01:34:03 +01:00
twinaphex 25a417cdd7 Simplify slang_process.cpp 2019-11-11 18:55:33 +01:00
twinaphex b94b9e2adb Go back to plain strlcpy/strlcat - probably best to look at
opportunities to reduce these calls vs. replacing them with
unsafe macros
2019-09-23 00:19:01 +02:00
twinaphex 3b057d9605 Start using STRLCAT_CONST_INCR and STRLCPY_CONST 2019-09-20 23:33:17 +02:00
twinaphex db624a7c99 Start cleaning up the rather messy manual assignment 2019-09-20 02:03:26 +02:00
twinaphex 3fbeb0617b (glslang_util_cxx.cpp) Get rid of this strlcpy too 2019-09-18 08:03:49 +02:00
twinaphex 306d7f6f8a glsl_find_uniforms_frame - get rid of the remaining strlcats 2019-09-18 07:53:59 +02:00
twinaphex ab60005cdc (GLSL) Avoid snprintf, prefer strlcpy/strlcat where possible 2019-09-18 07:32:06 +02:00
LazyBumHorse a882901e39 save unmodified auto-shaders as a reference instead of a copy, see:
- implement #reference directive for auto-shaders
 - replace usual preset saving and loading functions with video_shader_read_preset() and video_shader_write_preset()
 - apply saved presets automatically for console menus
 - move auto-shader saving logic from menus into menu_shader.c menu_shader_manager_save_auto_preset()
 - refactor menu_shader_manager_save_preset() into menu_shader_manager_save_preset_internal()
2019-08-22 16:57:28 +02:00
twinaphex d52c573e13 Merge slang_preprocess.cpp into slang_process.cpp 2019-08-18 18:55:22 +02:00
twinaphex 0905c8d2ed (shader_gl_core.cpp) Simplify some code 2019-08-18 18:32:01 +02:00
twinaphex d48b5b78f8 Cleanups 2019-08-18 18:05:26 +02:00
twinaphex aaeff6c888 Move C code over to glslang_util.c 2019-08-18 18:01:21 +02:00
twinaphex 3aa1a03a08 glslang_util cleanups 2019-08-18 14:40:26 +02:00
Themaister f957bf0d16 Validate non-causal filter chain for texture inputs.
We only validated for UBO inputs apparently.
2019-08-13 13:57:20 +02:00
twinaphex 69a195fc5c Cleanups 2019-08-12 19:35:36 +02:00
twinaphex 3ae447420e Cleanups 2019-08-12 19:33:50 +02:00
jdgleaver 5ac152a5f3 (glslang_util) Remove C++ 'isms' (where possible) 2019-08-12 13:10:50 +01:00
twinaphex ecbd58d3af Small cleanup 2019-08-08 17:04:45 +02:00
twinaphex faa55b4dff glslang_read_shader_file - potential leak here 2019-08-08 16:55:39 +02:00
twinaphex b282125107 Revert "Refactor code for glslang shader presets - buffer entire file"
This reverts commit 0fee6a9ef4.
2019-08-08 16:36:34 +02:00
twinaphex 0fee6a9ef4 Refactor code for glslang shader presets - buffer entire file
into memory before passing it on
2019-08-08 04:55:22 +02:00
LazyBumHorse 5e0aba0589 Revert "(UWP) UWP cannot deal with relative paths, turn them into absolute"
This reverts commit 8b0f083a4e.
2019-07-25 14:31:18 +02:00
LazyBumHorse 6285c05948 add resolve_symlinks parameter to path_resolve_realpath() and cleanup playlist_resolve_path() 2019-07-22 13:44:35 +02:00
LazyBumHorse f8b92770d4 simplify video_shader_read_conf_preset() calls 2019-07-21 18:15:28 +02:00
Twinaphex 388c4857d3
Merge pull request #9140 from LazyBumHorse/shader_paths
much improved handling of relative shader paths
2019-07-20 21:54:58 +02:00
twinaphex 14dfb91a60 Buildfix for C89 2019-07-20 21:33:09 +02:00
LazyBumHorse 2245af23e9 much improved handling of relative shader paths
- save texture paths in relative format as well
 - always write portable relative paths on Windows using '/' instead of '\'
 - remove an ancient piece of code that could sometimes fail loading relative paths
 - fix absolute path handling between different drives for Windows
 - integrate video_shader_resolve_relative() into video_shader_parse_* functions
2019-07-20 18:29:46 +02:00
twinaphex da29fd61bb (shader_vulkan.cpp) Fix another 'declaration hides parameter' warning 2019-07-18 19:25:25 +02:00
twinaphex 18e67c12c7 (GLSL) Set prg ID to 0 after running glDeleteProgram 2019-07-18 18:31:37 +02:00
twinaphex c0787accc3 Use config_file_new_from_path_to_string 2019-07-18 12:13:09 +02:00
twinaphex 41a2fabb4e Create config_file_new_from_path_to_string 2019-07-18 12:03:50 +02:00
twinaphex f0f5c32b51 Remove state tracker - legacy code - we can revisit this later
and integrate it in a way so that it scales across all drivers
2019-07-09 07:39:38 +02:00
Hans-Kristian Arntzen 135ff5e7a5 Fixup resource remapping in MSL/HLSL.
Seemed rather sketchy, but this must be tested a bit.
2019-06-24 14:25:04 +02:00
Hans-Kristian Arntzen 50ea084385 Update SPIRV-Cross. 2019-06-24 13:42:46 +02:00
Twinaphex a9a1ff0047
Merge pull request #8979 from LazyBumHorse/fix_dolphin_crash
workaround for crash due to glcore not always using at least OpenGL 3.2
2019-06-18 20:18:14 +02:00
LazyBumHorse 692dc9f6a9 refactor shader checks affected by last commit and more:
- gl.c: refactor backend fallback into more general gl2_get_fallback_shader_type
 - d3d9-12, gl_core, gx2_gfx, gl, vulkan: more consistent shader init and `set_shader` behavior
 - configuration.c: remove check_shader_compatibility
 - shader_glsl.c, shader_gl_cg.c: use `video_shader_get_type_from_ext`
 - shader_gl_cg.c: add shader type check with fallback to stock like in shader_glsl.c
 - menu_shader.c: use `enum rarch_shader_type` instead of `unsigned`
 - video_shader_parse.c: add `video_shader_to_str` for easier logging
 - remove `type` from `struct video_shader`, which was always set to CG and wrongly used in lang_process.cpp's `slang_process()` (has no further consequences because the code is unused)
2019-06-18 13:44:19 +02:00
LazyBumHorse 42e35c825f refactor some video_shader_parse functions
- video_shader_parse_type()'s fallback only worked for NULL paths and was wrongly used, now returns RARCH_SHADER_NONE like video_shader_get_type_from_ext().
 - video_shader_get_type_from_ext() should not be checking video driver flags, this is instead done by video_shader_is_supported()
 - video_driver_get_all_flags() did not actually 'get' flags, changed to video_driver_test_all_flags()

workaround for crash due to glcore not always using at least OpenGL 3.2
2019-06-18 13:12:56 +02:00
LazyBumHorse 76438fa098 workaround for crash due to glcore not always using at least OpenGL 3.2 2019-06-17 18:28:04 +02:00
twinaphex ee3208ac39 Integrate video_driver.c into retroarch.c 2019-06-17 15:10:22 +02:00
twinaphex b26a5badfd Fix typo 2019-06-15 10:00:20 +02:00
twinaphex fc62f7afaa Update 2019-06-15 09:58:34 +02:00
twinaphex f60306b232 Rename read_conf_cgp/write_conf_cgp to
read_conf_preset/write_conf_preset
2019-06-15 09:00:35 +02:00
LazyBumHorse 4c272973f1 fix frame_direction type for vulkan 2019-05-29 15:29:37 +02:00
LazyBumHorse d12dba6db4 (hotfix) Don't poll vendor specific 'patch' version 2019-05-25 17:51:03 +02:00
LazyBumHorse 9894f48fb0
added paranoid NULL check 2019-05-25 13:10:13 +02:00
LazyBumHorse 662b473e9f don't hardcode shader cross compilation target version but poll it 2019-05-25 12:32:34 +02:00
LazyBumHorse ee3cda8abf added "FrameDirection" slang semantic and implementation for glcore and vulkan 2019-05-24 22:11:12 +02:00
twinaphex 74388d8490 Remove string_concat 2019-05-10 18:05:58 +02:00
twinaphex 8b0f083a4e (UWP) UWP cannot deal with relative paths, turn them into absolute
paths first before reading shader pass files
2019-05-02 18:24:54 +02:00
twinaphex 39eadbab6f Use string_concat in more performance critical areas 2019-04-30 21:17:51 +02:00
twinaphex bc2bdd5734 config_file_read not needed anymore 2019-04-30 13:37:10 +02:00
twinaphex 4c3e0d44b8 Revert "Start using string_is_equal_memcmp and"
This reverts commit 26d6aee1eb.
2019-04-29 04:04:33 +02:00
twinaphex 26d6aee1eb Start using string_is_equal_memcmp and
string_is_equal_memcmp_fast
2019-04-28 17:23:11 +02:00
twinaphex 3e72c502a8 strlen optimizations :
- use STRLEN_CONST for constant strings, translates to sizeof
which should be computed at compile-time
- found some places where we are needlessly calling strlen two
times instead of just once
2019-04-27 04:21:10 +02:00
twinaphex ff40ae2486 Refactor slang_preprocess.cpp - try to remove auto variables 2019-04-25 04:07:18 +02:00
twinaphex a42b8f616f (slang reflection) Cleanups - start getting rid of most auto
variables
2019-04-25 03:54:04 +02:00
twinaphex 0bae77d199 (Shaders Vulkan/GLcore) Cleanups 2019-04-25 02:37:13 +02:00
twinaphex 15afaedaa8 (Shaders vulkan/GLcore) Simplify 2019-04-25 02:34:26 +02:00
twinaphex e40c3ec07b (Shader Vulkan/GL core) Make code more the same 2019-04-25 01:42:56 +02:00
twinaphex 55b53929db (shader GL/Vulkan) Cleanups 2019-04-24 23:45:57 +02:00
twinaphex 604403fe90 (shader_vulkan) Simplifications - start making shader_gl_Core
and shader_vulkan more alike
2019-04-24 23:13:42 +02:00
twinaphex e42dae928e (gl shader core) Simplifications 2019-04-24 22:20:48 +02:00
twinaphex 51a69dff44 (gl core shaders) Simplification 2019-04-24 22:10:21 +02:00
twinaphex 3225876f0b (shader_gl_core.cpp) Simplify 2019-04-24 20:25:37 +02:00
twinaphex a60844897f (Shader GL core) Simplify some code 2019-04-24 04:24:48 +02:00
twinaphex 955a149ce9 Use config_file_read where we can assume we are reading a file 2019-04-22 01:56:24 +02:00
twinaphex 3619fae2d9 (LGTM) Silence some warnings 2019-04-13 02:15:26 +02:00
twinaphex 27928081cf Cleanups 2019-03-18 15:27:37 +01:00
Themaister beff1144f6 Fix uniform override mistake in glcore shader stack.
glGetUniformLocation returned -1 after 0, and dropped uniforms on the
floor.
2019-03-13 18:28:05 +01:00
twinaphex cd77093588 Reimplement gl2_get_flags to no longer be reliant on shader driver's
get flags implementation
2019-03-13 12:12:02 +01:00
twinaphex 191d0c0309 Add get_flags to GL shader interface 2019-03-13 11:21:00 +01:00
Themaister 1ba8c626ed Minor build fixes. 2019-03-09 12:42:23 +01:00
Themaister 3029f96511 Add a new "glcore" driver with slang support.
This driver should sunset the old gl2 driver, but that driver will
likely live on to support really ancient and terrible GL stacks.
All the worst legacy cruft has been ripped out, and it's almost a decent
backend now.

Requirements for slang are GL 3.2+ or GLES3.
Some shaders require features which are not directly compatible with
GLES2 or legacy GL.

This driver shares a lot of concepts from the Vulkan driver.
The slang shader stack and SPIRV-Cross are used to implement the shader
spec, and the menu shaders are also shared with Vulkan.
2019-03-09 12:30:49 +01:00
twinaphex 5102eff399 (GL) Move GL-only shader code to gl.c 2019-02-05 01:13:39 +01:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea 4c56167446 Convert to linux line endings. 2019-02-03 15:43:42 -08:00
twinaphex dd366cd5c5 Revert "Simplify set_coords"
This reverts commit e10eb51f71.
2019-02-03 18:05:14 +01:00
twinaphex e10eb51f71 Simplify set_coords 2019-02-03 18:03:07 +01:00
twinaphex 62bea6ad11 SOme header cleanups 2019-02-02 22:02:24 +01:00
twinaphex 90f1317498 Cut down on code duplication - create gl_load_luts 2019-02-02 21:32:37 +01:00
twinaphex 6b3fad0f53 This can be removed now 2019-02-02 17:26:12 +01:00
twinaphex 7c74f0abe8 Create gl_add_lut 2019-02-02 17:25:27 +01:00
twinaphex 0abe271909 Take out some header includes 2019-01-19 23:15:48 +01:00
twinaphex 1a0d5030f9 shader_vulkan.cpp - doesn't need math.h 2019-01-19 23:02:48 +01:00
orbea e062b98088 Remove trailing blank lines.
find . -type f -exec sed -i '${/^[[:space:]]*$/d;}' {} \+
2019-01-17 19:39:38 -08:00
twinaphex 6ca9afbd57 Silence more warnings with CXX_BUILD 2019-01-12 18:51:06 +01:00
orbea bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
orbea 4bc0aacd8b Fix clang -Wreorder warnings.
gfx/drivers_shader/shader_vulkan.cpp:1109:6: warning: field 'id' will be initialized after field 'device' [-Wreorder]
   : id(move(id)),
     ^
gfx/drivers_shader/shader_vulkan.cpp:2107:4: warning: field 'device' will be initialized after field 'memory_properties' [-Wreorder]
   device(device),
   ^
2 warnings generated.
2018-12-16 16:16:07 -08:00
Themaister 124d9b57d6 Vulkan: Fix blue/red flip when using HW rendered cores with history.
Was using frontend format of BGRA8 when core was RGBA8, with blind
vkCmdCopyImage. Fix is to use the same format as core is pushing to
history buffer.
2018-12-06 11:38:30 +01:00
twinaphex c5b9352c34 Revert "Rename some files"
This reverts commit 03a8bc9875.
2018-11-24 01:26:05 +01:00
twinaphex 03a8bc9875 Rename some files 2018-11-24 00:30:46 +01:00
twinaphex 747bf136f2 Simplify strip_parameter_pragmas 2018-11-23 23:42:33 +01:00
Twinaphex 8514d6ccc8
Revert "Fix shader warnings" 2018-11-23 04:18:38 +01:00
Alfrix 3e7328b00a Fix shader warnings 2018-11-22 16:18:11 -03:00
Themaister 3f344660c0 Remove Windows \r line endings in glslang parser. 2018-11-08 21:34:21 +01:00
Themaister 1d7dfc5f47 Fix glslang_format LUT.
Was logging wrong format names.
2018-09-01 22:46:47 +02:00
twinaphex 75a388cd67 Use strlcpy instead of strncpy in slang_process.cpp 2018-08-16 10:14:42 +02:00
Brad Parker 6de4384350 glsl: don't clear the shader source 2018-08-14 18:42:23 -04:00
twinaphex a6941fb4ed Initial work done on VS2017 solution for Android 2018-08-14 16:02:31 +02:00
twinaphex 9c0ed0f2c4 Don't use core profile GLSL shaders for OpenGLES 2018-07-18 10:06:30 +02:00
twinaphex 6b5ade4ac3 Should be no more deprecated warnings with core context GL for menu
shaders
2018-07-12 22:03:37 +02:00
twinaphex 60d7d1c793 Add xmb ribbon simple core shader 2018-07-12 21:34:17 +02:00
twinaphex 140e657d51 (GLSL) Add logging for compiling menu shaders 2018-07-12 21:25:39 +02:00
twinaphex 8a1c0be83c (Android) Another potential buildfix; define ENABLE_HLSL
(slang_process) Put HLSL/Cg code around ENABLE_HLSL ifdef
(SPIRV-Cross) Make sure macros no longer need to be redefined; make them
unique in both glsl and hlsl files; needed for Griffin builds
2018-06-26 13:18:17 +02:00
twinaphex d967cbc879 Add another ENABLE_HLSL ifdef 2018-06-25 21:51:23 +02:00
twinaphex b05026b69f Buildfix 2018-06-21 07:56:40 +02:00
Twinaphex fd11b205da Silence bunch of warnings 2018-06-21 07:52:01 +02:00
Twinaphex 2bdffff435 Silence more warnings 2018-06-21 07:34:27 +02:00
Stuart Carnie 411bcf8bdd feat(apple): Metal support for macOS
* includes rgui
* shader support

This is a work-in-progress and there are some bugs and visual artifacts
still to be fixed.
2018-06-20 21:33:45 -07:00
twinaphex 3aba080434 Integrate HLSL code into d3d9_hlsl_renderchain.c 2018-05-16 15:52:11 +02:00
twinaphex 6a9b39da3f Get rid of d3d.h and xdk_defines.h 2018-05-14 03:57:27 +02:00
twinaphex 82ebb9576f Create d3d9_video_t and d3d8_video_t 2018-05-03 22:03:12 +02:00
twinaphex 268baca939 (MSVC 2013) Add /bigobj for griffin_glslang.cpp 2018-05-03 14:52:37 +02:00
twinaphex 714f7b7b13 Cleanups 2018-04-27 23:21:44 +02:00
twinaphex 72428a23c5 (shader_vulkan.cpp) Move some functions to vulkan_common.c 2018-04-24 07:07:58 +02:00
twinaphex ebfa4bdcdc Implement two stub functions 2018-04-23 18:34:23 +02:00
twinaphex d6c17178a3 Add some logging for shader backend setup 2018-04-23 18:25:41 +02:00
twinaphex c90c98dcaa Silence warnings 2018-04-23 17:37:37 +02:00
twinaphex 830068e5bd Create d3d9x_constant_table_set_float_array 2018-04-23 17:20:08 +02:00
twinaphex a6fcd9dae0 Create d3d9x_constant_table_set_defaults 2018-04-23 17:09:11 +02:00
twinaphex bd3f39b005 Remove SetMatrix macro 2018-04-23 17:04:59 +02:00
twinaphex 0e5ccd7c15 Create d3d9x_constant_table_set_matrix 2018-04-23 17:04:30 +02:00
twinaphex dbb9a43abe (HLSL) Cleanups 2018-04-23 15:59:09 +02:00
twinaphex 8d02343b53 (HLSL) Cleanups 2018-04-23 15:58:00 +02:00
twinaphex d7fa70927c (HLSL) Cleanups 2018-04-23 15:55:26 +02:00
twinaphex d03ff06cf3 (HLSL) Cleanups 2018-04-23 15:51:24 +02:00
twinaphex af734939ee More HLSL work 2018-04-23 15:26:35 +02:00
twinaphex 32c92a9a22 Rename d3dxbuffer_release 2018-04-23 15:04:19 +02:00
twinaphex 871f04e19a (slang) Cleanups 2018-04-23 14:56:02 +02:00
twinaphex 2a655116a6 Set #define CINTERFACE in these files 2018-04-22 14:27:39 +02:00
twinaphex c52f53aada Some minor refactors 2018-04-21 08:47:09 +02:00
Twinaphex bd2b913bc6 Silence more warnings 2018-04-13 00:52:52 +02:00
twinaphex 1751f4a0af Make it possible to read bigger files by replacing ssize_t with int64_t
and size_t with uint64_t
2018-04-13 00:18:11 +02:00
twinaphex 97cf6613da (XMB/Shaders) Reimplement menu shader loading for GLSL/Cg/HLSL backends - if
XMB is selected, it will compile the shader pipelines in
advance
2018-04-12 02:20:17 +02:00
Twinaphex 08a54e45f2 Get rid of a lot of implicit conversions 2018-04-09 15:56:45 +02:00
Twinaphex 0be2b76892
Update slang_process.cpp 2018-03-22 15:24:03 +01:00
aliaspider bb972a6dab (spirv) set flip_vert_y to true when emitting HLSL. 2018-03-06 04:12:58 +01:00
twinaphex 59dae251b0 Change to system dir include 2018-03-02 18:34:29 +01:00
twinaphex 9f33ba8607 (Vulkan/D3D11/D3D12) Add HAVE_GLSLANG now to both Android and MSVC solutions - shaders
should work now
2018-03-02 02:14:29 +01:00
Twinaphex ae6e410de1 Remove unused variables 2018-03-01 22:28:26 +01:00
twinaphex 5b79d2b942 Refactor video_shader_driver_set_parameters 2018-02-26 17:51:52 +01:00
twinaphex 938f6cc26e Get rid of hashes in shader_gl_cg 2018-02-25 01:13:34 +01:00
aliaspider 19aed2af36 (D3D11/12) prevent double-free when resizing framebuffers.
(D3D12)
- correctly support lut/filtering/wrap options for slang shaders.
- rework frame sync.
2018-02-11 22:56:37 +01:00
twinaphex 8771171f63 (glslang) Compatibility tweaks for MSVC 2010 compatibility 2018-02-04 15:49:53 +01:00
Twinaphex 31a30f1496
Merge pull request #6229 from aliaspider/master
(slang) slang_process: preset alias setting has higher priority.
2018-02-03 23:36:59 +01:00
aliaspider 0e159a0ec0 (slang) slang_process: preset alias setting has higher priority. 2018-02-03 23:35:04 +01:00
twinaphex c60f706f1e (MSVC 2013) Update solution
Griffin - add better ifdefs
2018-02-03 20:50:31 +01:00
Twinaphex e5610d5ddb
Merge pull request #6228 from aliaspider/master
(slang) slang_process: simplify data mappings.
2018-02-03 17:27:25 +01:00
aliaspider 76d07cd6a7 (slang) slang_process: simplify data mappings. 2018-02-03 17:22:47 +01:00
twinaphex 311de8138e (Griffin) shader_vulkan - Uniquely name set_unique_map to avoid collision 2018-02-03 17:20:23 +01:00
twinaphex 94022f0599 (MSVC 2013) Add HAVE_SLANG
(Griffin) Add SPIRV-Cross/slang rules to Griffin
2018-02-03 17:10:20 +01:00
aliaspider e225e96025 (D3D11) multi-pass shaders: add support for history frames. 2018-02-03 13:29:00 +01:00
aliaspider e30c7edd8d (D3D11) multi-pass shaders: add support for feed-back textures. 2018-02-02 19:57:45 +01:00
aliaspider 7f75e9f4cf build fix for HAVE_GLSLANG=1 HAVE_VULKAN=0. 2018-02-02 13:35:31 +01:00
aliaspider 1fd1426388 (slang) no need for this anymore. 2018-02-02 12:32:31 +01:00
aliaspider caad590d04 (slang) slang_process: fix compatibility with more shaders. 2018-02-02 01:50:18 +01:00
aliaspider 189ea0578d (slang) slang_process: change the type of FragCoord only when it is a
pixel shader input.
2018-02-01 22:22:56 +01:00
aliaspider b8e3933fe0 (slang) slang_process: 'linear' and 'point' are also reserved keywords
in HLSL.
2018-02-01 22:11:11 +01:00
aliaspider 80880ec857 (slang) slang_process.cpp: enforce the binding of the uniform and push
constant blocks.
2018-02-01 21:45:36 +01:00
aliaspider 8db625dd59 (slang) slang_process.cpp: add support for more shaders. 2018-02-01 20:10:07 +01:00
aliaspider d0b997a414 (slang) slang_process.cpp: stage_mask texture semantic doesn't apply to
the size uniforms.
2018-02-01 17:48:27 +01:00
aliaspider 11a7171b51 (slang) set enum value SLANG_FORMAT_UNKNOWN to 0. 2018-02-01 15:13:58 +01:00
aliaspider 3865856aa2 (D3D11) add support for `#pragma format` in slang shaders. 2018-02-01 15:07:12 +01:00
aliaspider f34dbdff8b (slang) cleanups. 2018-01-31 19:36:31 +01:00
aliaspider d8924d6fbb (D3D11) clear out all unused texture/sampler bindings each pass to avoid
hazards with SetRenderTargets.
2018-01-31 17:05:48 +01:00
aliaspider 5e09af9c77 (D3D11) attach identifiers to the generated slang semantic mappings to
simplify debugging.
2018-01-31 12:00:39 +01:00
aliaspider 5bc78d3ad5 (D3D11) Implement slang shader specification using Spirv-Cross.
(incomplete)
2018-01-31 01:08:36 +01:00
twinaphex 891d8741db (HLSL shader driver) Cleanups 2018-01-29 12:01:52 +01:00
twinaphex ee813ab76b Create new functions for d3d_common.c 2018-01-29 11:44:55 +01:00
twinaphex 204f9aa484 (360) More buildfixes 2018-01-25 15:35:07 +01:00
twinaphex 282853873b (360) Some buildfixes 2018-01-25 12:35:46 +01:00
twinaphex bc81a9dc88 Dehardcode LPDIRECT3DDEVICE usage 2018-01-25 01:45:03 +01:00
aliaspider d0d8a98046 (msvc) fix glslang build.
glslang still can't build with griffin since the files expect to be
compiled seperately.
2018-01-21 11:52:56 +01:00
twinaphex 61ff51be2f Start using string_is_equal predominantly 2018-01-16 22:53:38 +01:00
twinaphex 54fd72fb24 Make it possible to compile with HAVE_VULKAN on MSVC 2017 build ;
glslang stripped out for now
2018-01-11 02:53:40 +01:00
twinaphex 5eb5ecac77 Update shader_hlsl.c 2018-01-07 21:34:39 +01:00
twinaphex 23ace06ca1 Cleanups 2018-01-07 20:55:00 +01:00
twinaphex acf9e41aae Start using d3dx_compile_shader 2018-01-07 20:47:35 +01:00
twinaphex fce097b892 (360) Buildfixes 2018-01-07 12:00:09 +01:00
twinaphex e90a71d9f5 Create d3dx_compile_shader_from_file 2018-01-07 11:52:32 +01:00
twinaphex df2a31b0e9 Create d3d pixel shader/vertex shader functions 2018-01-06 23:10:27 +01:00
twinaphex d7df6b3729 Create d3d_free_vertex_shader/d3d_free_pixel_shader 2018-01-06 22:57:44 +01:00
twinaphex e03e578212 Add d3d_set_pixel_shader 2018-01-06 22:49:36 +01:00
twinaphex 9fe3271900 Add d3dxbuffer_release 2018-01-06 21:30:50 +01:00
twinaphex 942fd7102d Start getting HLSL compiling for PC 2018-01-06 20:48:17 +01:00
aliaspider 55d262f5d8 (WIIU) add preliminary multi-pass shader support.
can load *.slangp and *.slang files. since there is no runtime compiler,
precompiled shaders (*.gsh) need to be present next to each *.slang
source file.
2018-01-06 03:39:53 +01:00
twinaphex 8908d9983b (360) Some more buildfixes 2018-01-01 15:11:06 +01:00
twinaphex 2884ad2d73 (360) Some buildfixes 2017-12-31 06:09:39 +01:00
twinaphex 20bb653f1e (Xbox 360) Buildfixes 2017-12-30 12:36:00 +01:00