Commit Graph

343 Commits

Author SHA1 Message Date
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
Jonathan Howard
41580bf263 Potential fix for loss-of-conversion cast in shaderc 2016-06-29 02:39:57 -07:00
Branimir Karadžić
dae27de242 Fixed issue #814. 2016-06-21 20:56:39 -07:00
Branimir Karadžić
e50bda7818 Cleanup. 2016-06-15 09:33:11 -07:00
Branimir Karadžić
d8d17994dc GL: Fixed MSAA texture sampling. 2016-06-13 14:47:37 -07:00
Branimir Karadžić
407c37e8d3 Cleanup. 2016-05-08 14:50:04 -07:00
Branimir Karadžić
cdf87ab691 shaderc: Added --disasm flag support for GLSL. 2016-04-30 11:44:38 -07:00
Branimir Karadžić
53e2439eba shaderc: Added half-texel fixup for D3D9 (experimental, commented out). 2016-04-14 19:41:06 -07:00
Branimir Karadžić
310bcfcfeb Cleanup. 2016-03-30 20:32:13 -07:00
Dario Manesku
4ba8725692 Run preprocessor before determining input/output. 2016-03-30 05:29:03 +02:00
Branimir Karadžić
a076c1a03b Exposed GL_ARB_gpu_shader5 and GL_ARB_shading_language_packing to shaderc. 2016-03-18 11:32:04 -07:00
Branimir Karadžić
597b10128e Cleanup. 2016-02-21 14:08:20 -08:00
Branimir Karadžić
c5a2ddd662 Cleanup. 2016-02-01 22:23:57 -08:00
Branimir Karadžić
1ae89c70ef shaderc: Allow different HLSL compilers. 2016-02-01 15:53:11 -08:00
Branimir Karadžić
d050ee9641 Fixed MinGW build. 2016-02-01 10:57:02 -08:00
Branimir Karadžić
016bfc4290 Improved reader/writer error handling. 2016-01-31 16:00:02 -08:00
Branimir Karadžić
d53b27d353 Cleanup. 2016-01-30 21:13:41 -08:00
Branimir Karadžić
2cf7eaaefc Cleanup. 2016-01-30 20:59:50 -08:00
Branimir Karadžić
ee40695502 shaderc: Fixed Wine build. 2016-01-30 18:53:30 -08:00
Branimir Karadžić
a972d1fef0 Tools cleanup. 2016-01-30 16:15:25 -08:00
Branimir Karadžić
6d80ef7835 shaderc: Added command line argument for setting preprocessor defines. Issue #662. 2016-01-22 20:27:03 -08:00
Branimir Karadžić
4bb2b623d3 Happy New Year! 2016-01-01 00:11:04 -08:00
Branimir Karadžić
930fbe9e1a shaderc: Normalize EOL before processing shader. 2015-12-28 17:16:11 -08:00
Branimir Karadžić
fac71e9e35 Fixed issue #569. 2015-12-08 16:09:30 -08:00
Branimir Karadžić
86839f6e2e shaderc: GLSL autodetect use of profile 130. 2015-10-18 19:35:46 -07:00
Branimir Karadžić
86ec6b5f90 Cleanup. 2015-09-03 18:33:41 -07:00
Branimir Karadžić
4470f7097c Fixed HLSL reflection for samplers. 2015-09-01 16:44:11 -07:00
Branimir Karadžić
8adc099b02 Cleanup. 2015-07-30 11:36:26 -07:00
Brad Roepstorff
b8fc92520f adding better error message for missing varying.def.sc in shaderc 2015-07-29 20:58:35 -04:00
Branimir Karadžić
527ab0bcc1 shaderc: Metal fixes. 2015-06-12 15:22:01 -07:00
Branimir Karadžić
ce1b41336d shaderc: Adding metal shader type. 2015-06-12 15:08:01 -07:00
Branimir Karadžić
ff01992cb7 Refactored uniform types. 2015-05-28 15:27:00 -07:00
Branimir Karadžić
29001134ca Removed dxguid from shaderc, use INITGUID instead. 2015-05-26 12:08:12 -07:00
Branimir Karadžić
1deb6a2e9d Fixed issue #385. 2015-05-12 19:55:54 -07:00
Branimir Karadžić
ea375d5c03 Fixed MinGW compile error. 2015-04-22 19:43:19 -07:00
James Darpinian
bc08ef142e Stop hardcoding the GUID for ID3D11ShaderReflection.
This GUID changes depending on what version of the DirectX SDK you have.
The GUID is defined in d3d11shader.h as a const global, not a preprocessor
macro, so this #ifndef was clobbering it always. This caused DX11 shader
compliation to fail when using the Windows 8.1 SDK.
2015-04-22 19:15:08 -07:00
Mike Popoloski
121cc748c2 Fixing a shader linkage crash in D3D11 for 10level9 targets
Lower feature level targets in D3D11 also require SV_Position as an input param to the pixel shader, otherwise there are linkage mismatches between the vertex and pixel shaders.
2015-04-16 19:24:27 -04:00
Branimir Karadžić
6878b8de29 Cleanup. 2015-04-13 14:45:14 -07:00
Branimir Karadžić
cea3815dff Fixed HLSL shader stripping. 2015-04-13 12:54:45 -07:00
Branimir Karadžić
a17f9cfa9b Cleanup. 2015-04-12 22:26:18 -07:00
Branimir Karadžić
7825f3a41e Cleanup. 2015-04-11 20:52:05 -07:00
Mike Popoloski
643d7939d7 Fixing a uniform parsing issue. 2015-04-11 16:11:16 -04:00
Mike Popoloski
2819f93f26 shaderc dx11 now removes unused constants
The D3D11 shader compiler doesn't remove unused constants because it would change the size of buffers uploaded by the application. This means that all of the default unused bgfx uniforms take up a huge amount of space that forces the app to waste a ton of time uploading zeroes. This change is a bit of a hack but removes the unused constants and improves performance a great deal.
2015-04-11 15:40:31 -04:00
Branimir Karadžić
db9802a73f Fixed Linux build. 2015-04-10 21:24:25 -07:00
Mike Popoloski
9976f6cc4c Removing now unused shaderc_dx9 source and renaming dx11 source file. 2015-04-10 22:23:01 -04:00
Mike Popoloski
3e49bf536d Can't use #ifdef for checking IID_ID3D11ShaderReflection, because it's not a macro... 2015-04-10 22:08:04 -04:00
Mike Popoloski
f919f7811f Cleanup 2015-04-10 22:01:58 -04:00
Mike Popoloski
6e53a5e229 Remove last dependence on legacy DXSDK / D3DX
The legacy DXSDK was only needed for DX9 shader compilation, but D3DCompile can handle old shader models. The only other thing needed was reflection support for getting constant data, which I've added.
2015-04-10 22:01:57 -04:00
Branimir Karadžić
7cd9af179f Fixed file names. 2015-04-05 11:55:04 -07:00
Branimir Karadžić
9604a3f23b Fixed issue #322. 2015-04-05 11:24:59 -07:00
Branimir Karadžić
12184e87de Fixed variable shadowing warnings. 2015-04-02 23:31:28 -07:00
Branimir Karadžić
2d426d0e50 Added D3DXDisassembleShader definition for MinGW. 2015-04-01 10:59:10 -07:00
Branimir Karadžić
dbca022e31 Cleanup. 2015-04-01 09:20:40 -07:00
Miodrag Milanovic
364f80eb5e D3DXDisassembleShader is not exposed in mingw libraries (nw) 2015-04-01 13:29:19 +02:00
Branimir Karadžić
55d9a43a3c Fixed MinGW compile error. 2015-03-31 15:09:43 -07:00
Branimir Karadžić
a8b8cedb1b shaderc: Fixed ESSL build. 2015-03-23 16:14:40 -07:00
Branimir Karadžić
baebc645c0 Fixed shaderc. 2015-03-23 15:23:25 -07:00
Branimir Karadžić
b2da0cce93 Added [u/i]sampler3D. 2015-03-17 17:27:04 -07:00
Branimir Karadžić
100673b736 shaderc: Rename BITANGENT semantics to BINORMAL when building with D3D9 SM3 compiler. 2015-01-15 17:32:43 -08:00
Branimir Karadžić
8d70a2abde Added gl_PrimitiveID builtin for fragment shaders. 2015-01-12 19:37:42 -08:00
Branimir Karadžić
c25dd466be Updated copyright year. 2015-01-01 15:04:46 -08:00
Daniele Bartolini
98e3552fe8 Fix shaderc debug assert failed (issue #120) 2014-12-11 16:12:58 +01:00
Branimir Karadžić
878cbd41bd shaderc: Added shader strip. 2014-12-05 20:28:15 -08:00
Branimir Karadžić
18e9c30a0c Updated OVR SDK 0.4.4. 2014-12-05 19:17:59 -08:00
Branimir Karadžić
8cd9551f26 shaderc source split into multiple files. 2014-12-03 20:16:20 -08:00
Dario Manesku
984463c773 Removed redundant NOMINMAX define as it's now defined in 'bx/platform.h'. 2014-11-26 05:13:40 +01:00
Branimir Karadzic
bb0a305333 shaderc: Added error message with input source file is not found. 2014-11-23 09:37:13 -08:00
Branimir Karadžić
748da31049 Skip white space between $input/$output. 2014-10-31 21:54:35 -07:00
Branimir Karadzic
02346be7cb Skip white space before parsing /. 2014-10-31 09:46:50 -07:00
Branimir Karadžić
29b7249fc1 Cleanup. 2014-10-18 15:44:45 -07:00
Branimir Karadžić
6b00f65849 Increased number of MRT to 8. 2014-09-01 11:24:51 -07:00
Branimir Karadžić
66890595b9 Added serialization for vertex decl attribute enums. Binary format changes. Rebuilt all meshes and shaders. 2014-08-17 17:20:15 -07:00
Branimir Karadžić
c6fe2577c4 Added support for *s_4_0_level_9_3 profile DX11 shaders. 2014-08-11 20:34:52 -07:00
Branimir Karadžić
ac49c6f129 Added RG8 texture format. 2014-07-25 23:16:11 -07:00
Branimir Karadžić
2f292bd348 Removed need for varying.def semicolont terminator. 2014-07-22 21:04:03 -07:00
Branimir Karadžić
62b620a1a0 Initial compute support. 2014-07-20 20:27:13 -07:00
Branimir Karadžić
0ebb4923fc Added interpolator qualifier support. 2014-06-25 18:43:26 -07:00
Branimir Karadžić
bba2ef8031 Added predefined uniforms for inverted view/proj/viewproj matrices.
shaderc: Added raw shader support.
shaderc: Fixed uniform types.
2014-05-10 20:51:54 -07:00
Branimir Karadžić
7bc62b1d07 Added tristrip support. 2014-04-26 23:48:41 -07:00
Branimir Karadžić
bc36c29f2a Added ability to retrieve uniforms used by shader. 2014-04-15 19:10:56 -07:00
Branimir Karadžić
6eee3cca63 Added shadow samplers and updated example 15-shadowmaps-simple to use them. 2014-02-24 21:44:12 -08:00
Branimir Karadžić
a68ffbf4a0 WIP: Adding texture compare modes and shadow samplers support. 2014-02-23 11:21:23 -08:00
Branimir Karadžić
771909c988 Fixed issue #74. 2014-02-13 22:13:19 -08:00
bkaradzic
a2b4b96e55 Regenerated parsers. 2014-02-11 19:47:47 -08:00
Branimir Karadžić
557dcef3dd Updated glsl-optimizer. 2014-02-10 23:06:13 -08:00
Branimir Karadžić
9ff1d0c513 Updated copyright year. 2014-02-10 22:07:04 -08:00
Branimir Karadžić
ad335be715 shaderc: Added ARB_shader_texture_lod extension. 2014-02-09 16:46:50 -08:00
bkaradzic
cc77e7c743 shaderc: Improved error output. Added code preprocessing before substituting code. 2014-02-08 21:48:35 -08:00
bkaradzic
877621105d Added MRT support. 2014-02-05 23:07:11 -08:00
bkaradzic
d401bd992a Write GLSL shader #version before compiling shader. 2014-02-01 22:42:50 -08:00
bkaradzic
3e3de1e35a Pass precision qualifier from varying.def.sc to shader. 2014-02-01 21:15:14 -08:00
bkaradzic
7e656fa4ef Added GL 3.1 core profile shader patching. 2013-12-20 19:51:17 -08:00
bkaradzic
8c2b39efe2 Fixed warnings. 2013-12-07 10:45:15 -08:00
bkaradzic
b584873b50 Added ability to specify arbitrary source pitch when uploading textures.
Added reference weldVertices implementation.
2013-11-07 23:00:53 -08:00
bkaradzic
e93449571d shaderc: Fixed return value on error. 2013-10-05 18:53:15 -07:00
bkaradzic
e78dc677d5 Fixed function argument comma insertion. 2013-10-01 22:50:56 -07:00
bkaradzic
a2466367ac Added gl_FrontFacing builtin for HLSL. 2013-10-01 22:07:40 -07:00
bkaradzic
e05d250948 Added debug info for shaders build with DX11 compiler. 2013-08-26 22:40:02 -07:00
bkaradzic
2d21e92cd8 Added Clang toolchain support for Linux. 2013-08-11 19:01:17 -07:00
bkaradzic
8f026846ff DX9: Improved shader debug info output. 2013-08-09 21:32:23 -07:00
bkaradzic
4c4c2eb5cb examples-common: Reogranized sources. Added command interpreter and input bindings support. 2013-08-07 21:45:56 -07:00
bkaradzic
640c61fe45 Cleanup. 2013-08-06 21:09:02 -07:00
bkaradzic
ba4a32d79a shaderc: Added missing options to help. 2013-07-28 18:41:00 -07:00
bkaradzic
4ade0981f1 Fixed include path to be relative to input file. Issue #34. 2013-05-20 22:20:11 -07:00
bkaradzic
c487afa8ef Added varying.def to dependencies. 2013-05-17 22:13:32 -07:00
bkaradzic
507af8c9f1 Fixed shaderc crash when $in/output lines have comments. 2013-04-11 20:36:28 -07:00
bkaradzic
159b1ce8b2 Fixed MinGW warnings. 2013-04-07 23:53:58 -07:00
bkaradzic
253f313a34 Added wglSwapInterval and ARB_debug_output. Removed BX_UNUSED used for removing warnings when debug messages are compiled out. 2013-04-07 22:12:49 -07:00
bkaradzic
84bfec136a Removed some HLSL intrinsic from .sc shaders in favor of GLSL. Fixed varying.def parsing. 2013-04-05 20:40:50 -07:00
bkaradzic
789552fd34 Ignore anything after semicolon to end of line in varying.def. 2013-04-04 21:23:21 -07:00
bkaradzic
d34cd0251b Added ability to pass multiple include dirs. 2013-04-01 23:04:37 -07:00
bkaradzic
a703d6129f Added -i 'include dir' argument to shaderc. 2013-04-01 22:52:06 -07:00
bkaradzic
6582276e3e Fixed L4 warnings. 2013-03-25 21:13:54 -07:00
bkaradzic
c44db7eaa0 Merge branch 'master' of github.com:bkaradzic/bgfx 2013-02-22 09:05:13 -08:00
bkaradzic
8e0e21f40d Normalized line endings. 2013-02-21 21:07:31 -08:00
bkaradzic
5e15534628 Fixed GCC warning in release build. 2013-02-17 11:31:04 -08:00
bkaradzic
4494bcf6bc Normalize shader source EOL to LF. 2013-02-16 23:00:57 -08:00
bkaradzic
cc69b20e14 Fixed 'unexpected EOL' when building shaders. Added error message for missing shader entry point. 2013-02-14 17:27:10 -08:00
bkaradzic
391ebaefc3 Fixed shaderc arguments. 2013-02-13 20:18:18 -08:00
bkaradzic
43ce51b8ec Updated year in copyright notice. 2013-01-13 10:57:24 -08:00
bkaradzic
b52cc77a14 Reorganized opcode type and location bits in constant buffer opcode. 2013-01-05 22:34:31 -08:00
bkaradzic
1bc2ec8015 Initial version of geometry compiler. 2012-12-28 17:09:34 -08:00
bkaradzic
9473fb1ffd Fixed eol. 2012-12-26 22:52:10 -08:00
bkaradzic
bda65c2c0d Fixed arguments. 2012-12-01 17:04:28 -08:00
bkaradzic
e3b0a82f0d Cleanup. 2012-11-25 22:14:47 -08:00
bkaradzic
a3b0dde24b Fixes. Added vsh output/fsh input hash matching. 2012-11-25 18:24:50 -08:00