Commit Graph

343 Commits

Author SHA1 Message Date
Бранимир Караџић
a95ddd1c0c Reemoved use of old LineReader. 2020-06-20 15:14:54 -07:00
Бранимир Караџић
d86c16213e Cleanup. 2020-06-18 21:20:01 -07:00
Бранимир Караџић
eec559cc55 shaderc: Initialize uniform. 2020-06-18 17:24:47 -07:00
Бранимир Караџић
2cbcb6ea90 RRenamed BX_CHECK to BX_ASSERT. 2020-06-16 10:06:18 -07:00
Бранимир Караџић
594be53891 Reverted #2021. 2020-05-12 07:11:01 -07:00
Hugo Amnov
e1c211b537
WebGPU various small fixes (#2140) 2020-05-10 17:48:25 -07:00
Hugo Amnov
b62302631e
Add Webgpu backend (#2132)
* WebGPU first draft (shaderc bin version 8)

* WebGPU scripts
2020-05-08 08:53:53 -07:00
Бранимир Караџић
7f7c8a9bc0 Updated glslang. 2020-05-04 21:14:04 -07:00
Hugo Amnov
b48b084d25
Vulkan cleanup for Webgpu (#2127)
* Harmonize and simplify Vulkan SPIRV bindings mappings

* Handle Vulkan V-flip properly

* Update Embedded shaders
2020-05-03 13:54:30 -07:00
kingscallop
eaab1be079
Fix GpuShader5 extension on Intel and support 'bitsTo' functions (#2118)
GpuShader5 extension isn't supported on fragment shaders.
Bumps the GLSL version to support the 'bitsTo' functions when present on the shader.
2020-04-26 20:43:03 -07:00
Бранимир Караџић
36ec2a462d Removed alignment macros, and added functions instead. 2020-04-19 18:23:04 -07:00
James Fulop
ea4bbbfcb7
shader read optimization (#2109)
Currently `const char * str` gets converted to a StringView when its passed to `bx::strFindNl`, incurring a strlen. We have the data to calculate the strlen and fully construct the StringView.
2020-04-15 21:12:33 -07:00
Бранимир Караџић
ba5a6b0e46 Fixed build. 2020-04-07 22:49:55 -07:00
G
f07a0f5179
Added support for the extension OES_EGL_image_external(_essl3) for GLES2/3 (#2021)
Co-authored-by: Gabriel <gabriel.sulka@visiarc.com>
2020-04-06 08:20:49 -07:00
Бранимир Караџић
6c0c5c9921 Renamed vertexdecl.* to vertexlayout.* 2020-03-28 20:06:03 -07:00
Sandy Carter
9d09b965f5 shaderc_glsl: skip interp params when parsing glslopt output
Keywords like `flat` qualify type names. Without skipping them, the parser
will not find the type used and fail.
2020-02-20 16:05:00 +00:00
Бранимир Караџић
82f56b5987 Happy New Year! 2020-01-14 21:37:06 -08:00
Бранимир Караџић
35abd01cfb Fixed warnings. 2019-10-05 09:52:04 -07:00
attilaz
3a6f9ff5b0 Fixed isampler and usampler for metal/spirv (#1903) 2019-10-04 20:03:27 -07:00
Бранимир Караџић
010676412e Fixed issue #1894. 2019-09-28 19:30:23 +02:00
Sandy
78614c9b55 shaderc: Add before hlsl validation option to spirv (#1892)
Fixes opaque type in struct error by disabling check.
```
Error: In Vulkan, OpTypeStruct must not contain an opaque type.
  %BgfxSampler2D = OpTypeStruct %6 %8
```
2019-09-26 19:00:44 +00:00
kingscallop
65303869ab Fixes shaderc texture array usage detection. 2019-09-01 15:06:20 -07:00
Бранимир Караџић
9009ba50ba Cleanup. 2019-08-15 21:55:09 -07:00
Бранимир Караџић
5edeea64a9 Cleanup. 2019-08-15 21:37:35 -07:00
Бранимир Караџић
90e6afd47d shaderc: Cleanup. 2019-08-13 19:35:10 -07:00
Rinthel
2fa32d855d implement compute shader support 2019-08-13 18:44:42 -07:00
Attila Kocsis
e58a108387 Metal: Fix resource binding for latest spirv-cross
More info:

https://github.com/KhronosGroup/SPIRV-Cross/pull/1036
https://github.com/KhronosGroup/SPIRV-Cross/issues/1072
2019-08-10 09:32:16 -07:00
Rinthel Kwon
6927a9179b vulkan renderer draft implementation 2019-08-04 19:51:16 -07:00
Бранимир Караџић
bbba6aa1ab shaderc: Split Metal and SPIRV compilers. 2019-08-03 08:54:02 -07:00
Бранимир Караџић
564f484ab7 shaderc: Split Metal and SPIRV compilers. 2019-08-03 08:52:14 -07:00
Бранимир Караџић
bd39b5580a Cleanup. 2019-07-24 20:12:07 -07:00
feserr
6d6f28b158 Show all profile modes in the usage of shaderc. 2019-04-17 09:59:18 +02:00
Бранимир Караџић
3564e2a289 Updated spirv-cross. 2019-04-14 21:53:50 -07:00
Nick Waanders
88da162438 shaderc_spirv now emitting sampler uniforms
ShaderC now emits sampler uniforms for Metal and Spirv.
2019-03-12 15:23:10 -07:00
Branimir Karadžić
1b9dd14683 Fixed framebuffer RW. 2019-02-18 13:40:17 -08:00
Branimir Karadžić
5495b432f3 Fixed build. 2019-02-16 21:25:13 -08:00
Бранимир Караџић
a69d2ed606 shaderc: Fixed GLSL/ESSL intepolator issue. 2019-02-13 14:53:13 -08:00
attilaz
5dba3a93af MSL vs/fs shaders use spirv-cross 2019-01-22 22:31:41 +01:00
attilaz
de94da4ab2 MSL Shadow Sampler fix and working on to support vs/fs with spirv-cross 2019-01-20 11:16:58 +01:00
attilaz
b5ac92e5fa spirv-cross: removed rename hack
recompiled metal shaders
2019-01-19 09:13:46 +01:00
Бранимир Караџић
9520802e72 Cleanup. 2019-01-18 23:28:37 -08:00
Бранимир Караџић
e105c88e55 Cleanup. 2019-01-18 18:07:29 -08:00
attilaz
8e8161f743 Fix for 'used samplers was converted to static'
It seems reflection doesn't have a way to query used(live) samplers.
2019-01-17 21:04:23 +01:00
Nick Waanders
cc08e0c662 Update shaderc.cpp
Fix for crash in release mode when compiling a shader with incorrect input attributes.
2019-01-16 13:27:35 -08:00
Бранимир Караџић
d83c8439ff Cleanup. 2019-01-15 19:38:35 -08:00
Бранимир Караџић
9d1590670e shaderc: Fixed metal interpolation qualifiers. 2019-01-15 19:01:18 -08:00
Attila Kocsis
810c69ec49 added spirv legalization 2019-01-15 22:12:48 +01:00
Attila Kocsis
d8dcf36a79 fixed Xcode compile error 2019-01-14 09:51:31 +01:00
attilaz
b9b58296c7 metal compute shader generation 2019-01-14 09:24:06 +01:00
Бранимир Караџић
3f3a9450ba Happy New Year! 2019-01-13 17:13:25 -08:00
Бранимир Караџић
a54f8a3f81 Renamed UniformType enum Int1 to Sampler. 2019-01-11 14:14:17 -08:00
Бранимир Караџић
3c8afe3b00 Cleanup. 2019-01-08 14:14:47 -08:00
junjie020
9296a44f5e fix metal shader lack of texutre uniform variable 2018-12-26 14:19:07 +08:00
Branimir Karadžić
85c3bedfee shaderc: Allow space as delimiter for in/out params. 2018-12-19 20:13:33 -08:00
Pang Weiwei
5044400717 fix shaderrc generate wrong shader of matal 2018-12-19 20:26:53 +08:00
Branimir Karadžić
c5bec1ecb0 shaderc: Added input name validation to force proper attribute naming. 2018-12-17 20:47:11 -08:00
Branimir Karadžić
d4d453a1dd Fixed shaderc. 2018-11-28 17:28:37 -08:00
Branimir Karadžić
d4fef78240 Cleanup. 2018-11-27 18:14:29 -08:00
Branimir Karadžić
2a6436fbc5 Cleanup. 2018-11-02 17:18:22 -07:00
Branimir Karadžić
593269e1de shaderc: Fixed patching. 2018-10-30 15:04:17 -07:00
Branimir Karadžić
53dfd981da Replaced eolLF with normalizeEolLf. 2018-10-28 20:48:34 -07:00
Branimir Karadžić
1def5343e6 Replaced strmb with strFindBlock. 2018-10-28 16:58:46 -07:00
Branimir Karadžić
1eb853512e Cleanup. 2018-10-25 22:16:10 -07:00
Branimir Karadžić
72bf5f9870 Cleanup. 2018-10-22 18:08:01 -07:00
Branimir Karadžić
5579ac4686 Cleanup. 2018-10-21 20:33:29 -07:00
Branimir Karadžić
6bff345637 StringView cleanup. 2018-10-21 19:17:44 -07:00
Branimir Karadžić
623fd3cf0b shaderc: Added in/out hash. Fixed shader binary backward compatibility. 2018-10-12 16:41:26 -07:00
Branimir Karadžić
70c06f46c3 shaderc: Updated version. 2018-10-04 19:31:46 -07:00
Branimir Karadžić
29585d85ca Added numBackBuffers to initialization parameters. 2018-10-02 16:40:12 -07:00
Branimir Karadžić
474f6e1472 Updated glslang. 2018-10-01 20:01:14 -07:00
Branimir Karadžić
50ab2b9f2b shaderc: Added keep-intermediate option. 2018-09-25 18:11:06 -07:00
attilaz
9f5bb14651 typo in usage? (#1500) 2018-09-24 11:07:32 -07:00
Branimir Karadžić
07d909b5f0 Fixed crash on NULL dereference. 2018-09-03 13:56:11 -07:00
Branimir Karadžić
a4bedea36c Fixed warning. 2018-09-02 22:34:04 -07:00
Francis Hart
86f52812cd Fix issue with tab character in shaderc output (#1470)
When printing the binary representation of the converted shader, shaderc
also prints a comment with the ascii readable characters for each line.
For unprintable characters, it relies on isprint() to replace them with
the '.' character.

Under MSVC 2017, isprint() may incorrectly return true for the tab
character. This patch adds a WAR to explicitly test for tabs, to make
sure they get replaced with '.'.
2018-08-28 18:08:24 -07:00
Branimir Karadžić
d2a3f6cf50 Cleanup. 2018-08-27 20:25:54 -07:00
divinon
218c9e5ea1 Fix error line searching for HLSL compiled with debug info. (#1414) 2018-06-18 12:51:32 -07:00
Branimir Karadžić
a167dcda12 Fixed gl_FrontFacing behavior. 2018-06-08 16:52:09 -07:00
Branimir Karadžić
76c19a7676 shaderc: Fixed issues with VFACE that cause X4576: Non system-generated input signature parameter... error 2018-06-05 17:41:10 -07:00
Branimir Karadžić
66cc9da65a Updated fcpp. 2018-04-24 20:07:38 -07:00
Branimir Karadžić
fe1ecd20bf Cleanup. 2018-04-19 19:02:00 -07:00
Branimir Karadžić
dcc559536a shaderc: GLSL patching. 2018-04-16 18:00:24 -07:00
Branimir Karadžić
0c405fc256 shaderc: Fixed SPIRV uniform offsets. 2018-04-14 10:30:00 -07:00
Branimir Karadžić
ec3241a869 shaderc: Remove unused uniforms from SPIRV shader. 2018-04-13 17:12:43 -07:00
Branimir Karadžić
fc87e05199 shaderc: Added SPIR-V uniform buffer size. 2018-04-12 20:20:41 -07:00
Branimir Karadžić
d8160075e8 shaderc: Flip gl_Position.y when building SPIR-V. 2018-04-12 19:54:19 -07:00
Branimir Karadžić
ae8f21c467 SPIRV: Removed remap, and renamed gl_FragData_X_ to bgfx_FragDataX to workaround NV/VK driver bug. 2018-04-11 21:02:31 -07:00
Branimir Karadžić
172b7c506b Added SPIRV-Tools. 2018-04-10 19:44:28 -07:00
Branimir Karadžić
8e6450de15 Updated ImGui. 2018-03-22 21:11:18 -07:00
Branimir Karadžić
9f0a889cca shaderc: Added GLES2 fallback for transpose. 2018-03-16 22:41:51 -07:00
Branimir Karadžić
52a5f630fd shaderc: Added command line info after preprocessing shader. 2018-03-16 18:15:16 -07:00
Branimir Karadžić
f2e19da28a Cleanup. 2018-03-15 18:27:34 -07:00
Branimir Karadžić
a2e553665c Cleanup. 2018-03-09 19:36:36 -08:00
Branimir Karadžić
954a2df953 Fixed GLSL intepolator qualifier. 2018-02-17 10:04:42 -08:00
Branimir Karadžić
3198dd8226 Cleanup. 2018-02-14 22:01:24 -08:00
Branimir Karadžić
cf91b62542 shaderc: Allow passing CS buffers into all shader stages in GLSL. 2018-01-15 17:39:18 -08:00
Lectem
7960b42c90 Fix shaderc leaks (#1313)
* Fix fcpp memory leaks

* Fix glsl_optimizer leaks
2018-01-13 10:08:03 -08:00
Branimir Karadžić
052948f173 Cleanup. 2018-01-12 16:38:54 -08:00
Branimir Karadžić
b8f8370935 shaderc: Fixed depends option. 2018-01-10 16:47:43 -08:00
Branimir Karadžić
b103741c1a shaderc: Updated version. 2018-01-04 19:04:30 -08:00