Commit Graph

563 Commits

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