Commit Graph

261 Commits

Author SHA1 Message Date
Daniele Bartolini
fbff26d5e5 Cleanup. (#3540) 2026-01-09 19:15:32 +00:00
Daniele Bartolini
7e518d07bb Added support for keeping comments (#3538) 2026-01-09 09:31:58 -08:00
Branimir Karadžić
aa94189553 shaderc: Removed instMul. (#3536) 2026-01-09 06:40:56 +00:00
Бранимир Караџић
39dc313347 shaderc: Pass interpolator qualifiers into all stages. 2026-01-02 08:40:56 -08:00
Branimir Karadžić
3a652bbc7a Fixed issue when gl_PrimitiveID and gl_FrontFacing are used together. Issue #3509. (#3510) 2025-12-04 02:27:44 +00:00
Бранимир Караџић
860bafb23f Happy New Year! 2025-01-13 15:45:40 -08:00
Бранимир Караџић
896c610b72 Removing alloca compat include. 2024-12-21 19:25:00 -08:00
Бранимир Караџић
042ebe8814 Cleanup. 2024-12-07 22:49:45 -08:00
Oskar Kwaśniewski
3195593d8d feat: base visionOS bgfx implementation (#3289)
Co-authored-by: mani3xis <mariusz.pas+dev@protonmail.com>

fix: properly set storageMode

cleanup: remove unused variables

fix crash while releasing m_drawable on visionOS

fix: remove unused timing variable

fix: file name cases, cleanup

feat: integrate visionOS into bgfx examples
2024-06-03 08:14:53 -07:00
Бранимир Караџић
87fd766c33 shaderc: Fix integer vecs. 2024-05-24 16:42:41 -07:00
pheonix
56ad576dcd [shaderc] Clean up (#3258)
* Add Metal Shading Language version options to shaderc. Reference version options from: https://developer.apple.com/documentation/metal/mtllanguageversion?language=objc
Add configuration options for MSL compiler based on MSL version and Platform
Configure MSL->SPIR-V version configuration based on when ray tracing types become available
Set default metal compiler option to be metal 1.2, which is the default version assigned in the current SPIRV-Cross being used

* Add Metal Shading Language version options to shaderc. Reference version options from: https://developer.apple.com/documentation/metal/mtllanguageversion?language=objc
Add configuration options for MSL compiler based on MSL version and Platform
Configure MSL->SPIR-V version configuration based on when ray tracing types become available
Set default metal compiler option to be metal 1.2, which is the default version assigned in the current SPIRV-Cross being used

* Group ios and osx platform code paths
Reduce the size of temp buffer used in writing the MSL preprocessor define
Fix a compiler warning about size_t to int32_t truncation
Adjust whitespace in usage text

* Remove indented scope left-over from branch condition removal

* Remove some testing code

* Adjust whitespace for function arguments

* Replace BX_ASSERT with bx::write to message handler in spirv generation
2024-02-27 07:32:52 -08:00
pheonix
c00e4395b0 Add Metal Shading Language version options to shaderc. Reference version options from: https://developer.apple.com/documentation/metal/mtllanguageversion?language=objc (#3213)
Add configuration options for MSL compiler based on MSL version and Platform
Configure MSL->SPIR-V version configuration based on when ray tracing types become available
Set default metal compiler option to be metal 1.2, which is the default version assigned in the current SPIRV-Cross being used
2024-02-26 23:08:51 -08:00
Бранимир Караџић
83dfadf673 Happy New Year! 2024-01-14 01:56:36 -08:00
Бранимир Караџић
03a2c26457 Cleanup. 2023-12-27 20:57:13 -08:00
00bins
bd0cd504f6 Fix incorrect psslShaderPreamble in compute shader (#3206) 2023-11-21 19:33:33 -08:00
Edu Garcia
b01c5d597a Enable debug information for Vulkan shaders (#3193)
* Enable debug information for Vulkan shaders

* Enable debug information for Metal shaders
2023-11-06 11:14:29 -08:00
Бранимир Караџић
f14c14a485 Removed D3D9. (#3191) 2023-11-03 21:15:42 -07:00
gamecoder-nz
66b020e939 Fixed issue where printing profile names prints unreadable characters (#3188)
* Fixed issue where printing profile names prints unreadable characters

* Use %S for StringLitera.

---------

Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2023-10-23 20:44:51 -07:00
Branimir Karadžić
3e5bfb81b6 shaderc: Must have profile specified. 2023-09-30 16:55:00 -07:00
Branimir Karadžić
f13a6ac8ab shaderc: Fixed GLSL profile downgrade. 2023-09-30 16:54:57 -07:00
Jamil Halabi
f059531885 Added a new capability to check for PrimitiveID support (#3154) 2023-08-04 16:42:33 +02:00
Jorge Rodriguez
70ac58fd38 Write messages to a stream specified by the caller of compilerShader … (#3054)
* Write messages to a stream specified by the caller of compilerShader rather than directly to stdOut, to allow tool writers to easily capture it.

* PR updates

* Missed a write

* PR updates
2023-03-06 10:30:06 -08:00
issam3105
10ec8e8882 Removed useless precision highp sampler2DArray (#3031)
Co-authored-by: Issam <issam.dahmen@fittingbox.com>
2023-02-02 09:14:22 -08:00
issam3105
6f36b4fb3a Fix shader preprocessor constructor call (#3030)
Co-authored-by: Issam <issam.dahmen@fittingbox.com>
2023-02-01 07:26:55 -08:00
Бранимир Караџић
466c6a4e95 Happy New Year! 2023-01-14 10:05:12 -08:00
pheonix
e33efb8b42 shaderc updates (#3018)
- add support for Vulkan 1.3 using SPIR-V 1.6 as a profile target
- move ordering of help information of SPIR-V block
- update SPIR-V to Vulkan mapping documentation
2023-01-07 09:07:15 -08:00
ichordev
7a5fec1580 Documentation update 2 (#2756)
* Reworded & reformatted bgfx.rst for better clarity

* Reworded for clarity; made option format more consistent

* Added one character!

* Updated shaderc help

Will update docs to 100% match soon

* Updated geometryc's help

Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2022-04-04 12:57:00 -07:00
Catalin Moldovan
11ba8de2d1 Shaderc console out (#2758)
* Add support to output compiled shader to stdout

* Whitespace formating fixes

* Updated shaderc cli stdout output option to "--stdout"
2022-04-04 12:52:44 -07:00
Sandy
251e35ae09 Fixes for shader texture array in GLES3 (#2750)
* opengl: use texture for texture2DArray

* shaderc: Add default precision for sampler2DArray on GLES3
2022-03-29 13:14:21 -07:00
Бранимир Караџић
eb76255063 Fixed typo. 2022-03-26 13:45:48 -07:00
Бранимир Караџић
e79f92a241 Cleanup. 2022-01-31 18:10:59 -08:00
Бранимир Караџић
4581f14cd4 Happy New Year! 2022-01-15 11:59:06 -08:00
Бранимир Караџић
e6125ffa46 shaderc: Fixed gl_FragColor patching for raw GLSL. 2021-11-19 19:11:59 -08:00
Christophe Dehais
6224daf907 Set BGFX_SHADER_LANGUAGE_GLSL to actual profile more consistently (#2664) 2021-11-19 07:27:13 -08:00
Christophe Dehais
08cd17e3b8 Check if gl_Frag[Data/Color] are not already patched (#2661) 2021-11-18 13:12:38 -08:00
Branimir Karadžić
4763f97205 More fixes. 2021-10-25 19:26:38 -07:00
Бранимир Караџић
8392a44b3a Fixed assert macros, and improved error handling. 2021-10-25 18:59:32 -07:00
MooZ
b8d2f01b98 Fixed shadow map sampling for 130 and above glsl profiles. (#2496)
* Fixed shadowmap sampling for 130 and above glsl profiles.

* Fixed shadowmap sampling on OpenGL ES 3 and onwards.
2021-09-27 07:03:06 -07:00
Barrett Kepler
c8b32d38dd Add compute shader type to shaderc help. (#2559) 2021-07-18 16:53:24 -07:00
kingscallop
e65d185ed6 Fix DebugDraw shaders compilation (#2362)
* Fix DebugDraw shaders compilation

Pull request #2317 broke compilation of the DebugDraw shaders (vs_debugdraw_fill.sc, etc)
on the Intel mesa driver. Shaders with a version lower than 130 have no
support for uvec or ivec by default on OpenGL.

This patch detects when these shaders are present and bumps the version when appropriate.

* Removed the ivecs from the patch
It seems the ivecs are infact supported on versions lower than 130 on
OpenGL.
2021-06-06 14:05:14 -07:00
kingscallop
8247e061f0 Fixes texturev embedded shaders compilation (#2531)
Compiling 'fs_texture_array.sc' with shaderc for OpenGLES fails with a syntax error,
because the matrix transpose function definitions occur before extension directives,
in this case EXT_texture_array.
2021-06-05 13:54:38 -07:00
Hugo Amnov
ec36cf9872 Simplify SPIRV bindings shifts (shaderc bin version 11) (#2487) 2021-04-21 09:33:12 -07:00
Hugo Amnov
24be4a38d0 WebGPU: Add texture format to shaderc (bin version 10) + streamline storage Images in shaders (#2482)
* WebGPU: Add texture format (shaderc bin version 10)

* WebGPU: Simplify storage images + Fix format decorations

* Shaderc: Cleanup Texture name assumption in textures
2021-04-20 20:18:49 -07:00
Hugo Amnov
b2d72b1495 Shaderc: Add missing raw compilation targets (#2478) 2021-04-18 11:45:33 -07:00
pezcode
302c978b1d Make shaderc output independent of backend enums (#2411)
* Fix typo in SPIR-V id

* Use backend-agnostic shaderc output

...as opposed to directly storing and comparing against Vulkan and WebGPU enums. This is backwards-compatible with existing code and shaders.

* Remove comments and Undefined value
2021-02-28 12:38:12 -08:00
Kartoffelsaft
c3c3f869f5 add newline at end of error (#2374) 2021-01-31 11:27:25 -08:00
Бранимир Караџић
af49c5d264 Happy New Year! 2021-01-14 15:53:49 -08:00
MooZ
465c13ad37 Set profile id for metal and pssl to avoid d3d9 codepath. (#2355) 2021-01-13 07:10:23 -08:00
Бранимир Караџић
0f0a664a47 Cleanup. 2020-12-28 17:27:50 -08:00
MooZ
d65dac2000 Shaderc OpenGL fixes. (#2317)
* Reworked profile cli argument.

* Added missing GLSL profile.

* Fixed essl shader preambule.

* Fixed uniform "parsing" and hlsl profiles.

* Reworked hlsl profiles.

* Fixed missing extension for gl_FragDepth.

* Cleanup.

* Removed version preamble and reverted shadow samplers translation.

* Fixed HLSL profile tests.
2020-12-28 11:24:49 -08:00