Бранимир Караџић
812f7712f1
shaderc: Added gl_ViewportIndex and gl_Layer.
2020-12-12 12:45:15 -08:00
pheonix
e541312851
Update g_verbose SpirvToolsDisassemble to output based on spirv target env for Metal and SPIRV. ( #2306 )
...
Fix up alignment in shaderc help string.
2020-11-08 10:57:03 -08:00
Бранимир Караџић
f7f32319c6
Fixed build.
2020-10-26 12:40:40 -07:00
Christophe Dehais
2fee82dc56
Add missing preprocessor macro for ESSL ( #2298 )
...
Co-authored-by: Christophe Dehais <christophe.dehais@fittingbox.com >
2020-10-26 10:42:55 -07:00
pheonix
72b04e3913
Shaderc SPIR-V profile additions ( #2284 )
...
* [shaderc] Add SPIR-V profiles to support Vulkan 1.1 and Vulkan 1.2.
* * Add support for Vulkan 1.1 with SPIR-V 1.4.
* Update "spirv" values to correlate with shaderc spirv profile name mappings.
* Expand on spirv profile naming and encoding documentation.
* Address PR notes
2020-10-17 20:02:51 -07:00
Christophe Dehais
daa61822d2
Accept GLSL and SPIRV on Windows ( #2286 )
...
Co-authored-by: Christophe Dehais <christophe.dehais@fittingbox.com >
2020-10-14 09:16:34 -07:00
kingscallop
436b7fab9e
Adds UAV support for D3D12, Vulkan and reworked for OpenGL, D3D11 ( #2119 )
...
* Adds UAV support for D3D12, Vulkan and reworked support for OpenGL, D3D11
UAV support is now uniform across compute and draw.
To set a UAV you just use bgfx::setImage() and IMAGE2D in the shader, just like in compute.
Due to these changes shaders will have to be recompiled.
The changes include:
- D3D11 requires patching of the UAV slot number (which is now done by modifying the DXBC instead of using a macro)
- If the DXBC binary includes a debug chunk, that is also patched to match the new slot number
- All the other renderers don't need any kind of patching
- There are some shader annotations to better convert the UAV format used in hlsl to spirv
Possibility of further enhancements:
- bgfx::setViewFrameBuffer() only supports binding to a framebuffer or, using BGFX_INVALID_HANDLE, to bind the default backbuffer. This doesn't allow for the case where there is no need to bind to either one of them, for example when using a fragment shader only to read and write to an UAV.
* Bump shader version, because they need to be recompiled.
2020-10-04 21:51:41 -07:00
Бранимир Караџић
a95ddd1c0c
Reemoved use of old LineReader.
2020-06-20 15:14:54 -07:00
Бранимир Караџић
d86c16213e
Cleanup.
2020-06-18 21:20:01 -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
b62302631e
Add Webgpu backend ( #2132 )
...
* WebGPU first draft (shaderc bin version 8)
* WebGPU scripts
2020-05-08 08:53:53 -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
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
Бранимир Караџић
82f56b5987
Happy New Year!
2020-01-14 21:37:06 -08: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
Бранимир Караџић
90e6afd47d
shaderc: Cleanup.
2019-08-13 19:35:10 -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
Бранимир Караџић
564f484ab7
shaderc: Split Metal and SPIRV compilers.
2019-08-03 08:52:14 -07:00
feserr
6d6f28b158
Show all profile modes in the usage of shaderc.
2019-04-17 09:59:18 +02:00
Branimir Karadžić
1b9dd14683
Fixed framebuffer RW.
2019-02-18 13:40:17 -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
Бранимир Караџић
e105c88e55
Cleanup.
2019-01-18 18:07:29 -08: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
Бранимир Караџић
9d1590670e
shaderc: Fixed metal interpolation qualifiers.
2019-01-15 19:01:18 -08: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
Бранимир Караџић
3c8afe3b00
Cleanup.
2019-01-08 14:14:47 -08:00
Branimir Karadžić
85c3bedfee
shaderc: Allow space as delimiter for in/out params.
2018-12-19 20:13:33 -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ć
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
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