Commit Graph

375 Commits

Author SHA1 Message Date
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
Branimir Karadžić f44c8e2b14 Happy New Year! 2018-01-01 11:16:06 -08:00
Branimir Karadžić 0110c8c0b0 shaderc: HLSL fixed interpolation specifier. 2017-12-11 10:47:44 -08:00
Branimir Karadžić f9d39b2380 Cleanup. 2017-12-09 17:55:09 -08:00
Branimir Karadžić 7384171900 Fixed view id remapping. 2017-11-27 15:57:31 -08:00
Branimir Karadžić 1e16af3701 Cleanup. 2017-11-27 14:29:39 -08:00
attilaz b8886a3531 Adding an API to shaderc (#1280) 2017-11-24 10:01:13 -08:00
Branimir Karadžić 2650897f06 Fixed build. 2017-10-01 22:52:26 -07:00
Branimir Karadžić ed572fc5a6 Cleanup. 2017-09-30 16:25:11 -07:00
Branimir Karadžić 88e00edf4d Fixed build. 2017-09-25 20:02:25 -07:00
Branimir Karadžić 1218981a22 Cleanup. 2017-09-25 17:51:15 -07:00
Branimir Karadžić a3309c1205 Fixed issue #1236. 2017-09-17 16:54:37 -07:00
Branimir Karadžić 9a7ab977ec Fixed glsl shadow sampler with GLSL 1.30. 2017-08-18 16:59:55 -07:00
Branimir Karadžić 3e212b519f Moving code around and renaming files. 2017-07-15 21:01:08 -07:00
Branimir Karadžić a274c9a6c5 Replaced BX_OVERRIDE with override. 2017-07-15 00:17:29 -07:00
Branimir Karadžić f5dea0d1e1 Merge branch 'master' of github.com:bkaradzic/bgfx 2017-07-14 00:16:04 -07:00
Branimir Karadžić 535ad9c9b6 Cleanup. 2017-07-14 00:15:54 -07:00
Branimir Karadžić d50b29ac6c Cleanup. 2017-07-14 00:14:57 -07:00
Branimir Karadžić 24e796fa5b Cleanup. 2017-07-14 00:10:33 -07:00
Branimir Karadžić b83204d516 Added kExitSuccess/Failure constants. 2017-06-20 21:42:23 -07:00
Branimir Karadžić 236ef4b875 Fixed shader binary truncation. Issue #1170. 2017-06-20 20:34:41 -07:00
Branimir Karadžić c39c6121a6 Removed obsolete platform. 2017-06-11 22:54:52 -07:00
Branimir Karadžić 525af7685e Renaming CrtFile* -> File*. 2017-06-11 21:01:38 -07:00
Branimir Karadžić 6a6c5e3af9 Cleanup. 2017-06-10 22:31:59 -07:00
Branimir Karadžić 24569934a1 Added color2/3 attributes. 2017-06-06 17:25:17 -07:00
Branimir Karadžić e19a6738c7 shaderc: If GLSL version is above 4.00 shaderc will just pass preprocessed code without invoking glsl-optimizer. 2017-06-05 17:37:26 -07:00
Branimir Karadžić 7fc0b67b34 Updated glslang. 2017-06-03 11:11:11 -07:00
Branimir Karadžić 32730a7776 Cleanup. 2017-06-01 19:21:29 -07:00
Branimir Karadžić c4f5129e84 Removed support for Native Client. https://developer.chrome.com/native-client/migration 2017-05-30 23:49:53 -07:00
Branimir Karadžić dbceaf702e Cleanup. 2017-05-25 20:24:02 -07:00
Branimir Karadžić e8c630c001 Cleanup. 2017-05-16 17:29:59 -07:00
Branimir Karadžić fab6630bf8 Added tools version info. 2017-05-10 20:55:31 -07:00
Branimir Karadžić 3d73d0904b shaderc: Added support for gl_VertexID/InstanceID. Issue #1062. 2017-04-23 15:53:15 -07:00
Branimir Karadžić c9679731a5 Renaming string functions. 2017-04-22 14:47:02 -07:00
Branimir Karadžić 6e9e862565 Renaming string functions. 2017-04-16 21:56:17 -07:00
Branimir Karadžić 423c655095 Cleanup. 2017-04-03 20:43:57 -07:00
Branimir Karadžić 8b94c13e32 shaderc: Parse in/out correctly. 2017-04-03 17:53:14 -07:00
Branimir Karadžić db3939ca16 Merge pull request #1093 from BrianHarris/master
Vulkan/Spirv updates
2017-03-24 17:06:24 -07:00
Brian Harris c2d62c44ee Spirv compiler fixes 2017-03-24 15:20:38 -05:00
Branimir Karadžić 293c1dc60a Added support for texture2DGrad. 2017-03-23 17:33:29 -07:00
Branimir Karadžić 313749174b Cleanup. 2017-03-11 14:58:09 -08:00
Branimir Karadžić 46ec8d3ca4 VS: Fixing L4 warnings. 2017-03-11 14:44:00 -08:00
Brian Harris ae566e2bb6 Some vulkan fixes (#1051) 2017-02-17 09:35:09 -08:00
Branimir Karadžić 2e8c2a0070 Cleanup. 2017-01-19 11:31:14 -08:00
Branimir Karadžić 14dccb7f1e Cleanup. 2017-01-19 00:22:06 -08:00
weshoke abe4d74f3b Fix doc for shaderc (#1021) 2017-01-15 09:51:30 -08:00
Branimir Karadžić d9c8501d06 FIxed VS build. 2017-01-11 22:46:41 -08:00
Branimir Karadžić c992291e94 Updating code to match bx. 2017-01-08 15:55:14 -08:00
Branimir Karadžić 3b83f53ab1 Happy New Year! 2017-01-01 00:18:41 -08:00
Branimir Karadžić 1c392b8c94 Updated glslang. 2016-12-17 12:38:22 -08:00
Branimir Karadžić 1531cc29dc Fixing VS build. 2016-12-15 20:46:12 -08:00
Branimir Karadžić e0b901a98a VK: Initial commit. 2016-12-15 19:03:47 -08:00
Branimir Karadžić e795d8227a shaderc: Use HLSL code path for SPIR-V. 2016-11-03 22:00:55 -07:00
Branimir Karadžić 1d0be51615 shaderc: Output Metal uniform reflection data. 2016-10-31 20:33:14 -07:00
Branimir Karadžić c5f2c5b373 Cleanup. 2016-10-20 19:52:56 -07:00
Branimir Karadžić 23d592a862 Cleanup. 2016-10-19 18:11:47 -07:00
Branimir Karadžić 44a5b7a328 shaderc: Added SPIR-V target. 2016-10-16 10:29:46 -07:00
Branimir Karadžić 599992c8f1 Added ability to specify api thread wait timeout. Fixed HLSL compiler. 2016-10-13 15:01:27 -07:00
Branimir Karadžić 272195da3f Updated embedded shaders. 2016-10-05 20:41:25 -07:00
Branimir Karadžić d639452e9b noop: Pretend all features that are not returning results to CPU are available. 2016-10-03 18:26:22 -07:00
Branimir Karadžić 441459f5c0 Cleanup. 2016-10-02 20:01:28 -07:00
Branimir Karadžić e5b9b8d7aa Cleanup. 2016-10-01 12:38:41 -07:00
Branimir Karadžić 2380221c81 shaderc: Added SPIR-V stub. 2016-09-30 20:03:16 -07:00
Branimir Karadžić ece1a0e49b shaderc: Added pssl stub. 2016-09-30 18:16:04 -07:00
Branimir Karadžić 57d34f557b Cleanup. 2016-09-28 16:42:15 -07:00
Branimir Karadžić 08438fa567 texturev: Added texture array support. 2016-08-23 22:06:50 -07:00
Branimir Karadžić 7537b705e5 GL: Added support for texture array. 2016-08-21 14:03:16 -07:00
Branimir Karadžić e5aa71db4d Added centroid interpolation modifier. 2016-07-10 20:49:10 -07:00
Branimir Karadžić 4b26830fc1 shaderc: Allow shader without color target write. 2016-07-01 20:38:12 -07:00