Commit Graph

381 Commits

Author SHA1 Message Date
Branimir Karadžić
de347e9f23 Cleanup. 2015-11-17 23:31:34 -08:00
Branimir Karadžić
8677017bac KTX: Added support for more formats and stubbed writer. 2015-11-15 20:40:23 -08:00
Branimir Karadžić
86839f6e2e shaderc: GLSL autodetect use of profile 130. 2015-10-18 19:35:46 -07:00
Branimir Karadžić
3d2405232e geometryc: Fixed empty primitive group crash. 2015-08-29 23:46:10 -07:00
Branimir Karadžić
d1f99896ec Moved public header files into bgfx subdirectory.
grep -rl '<bgfx.h>' . | xargs sed -i 's@<bgfx.h>@<bgfx/bgfx.h>@g'
2015-09-18 20:19:12 -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
Nodrev
4df0cca212 Fixing geometryc for meshes exported without uv coordinates 2015-06-02 22:37:22 +02: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ć
efed576e75 Fixed variable shadowing. 2015-04-04 19:45:45 -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
Dario Manesku
720efbbdb0 Cleanup. 2015-03-23 04:28:23 +01:00
Dario Manesku
7c472b4ca5 Geometryc now properly handles relative obj indices. 2015-03-23 04:28:23 +01: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ć
c46aa66812 Updated ib-compress. 2015-01-03 16:08:56 -08:00
Branimir Karadžić
c25dd466be Updated copyright year. 2015-01-01 15:04:46 -08:00
Branimir Karadžić
7da5e874ae Merge branch 'master' of github.com:bkaradzic/bgfx 2015-01-01 11:14:33 -08:00
Branimir Karadžić
227d3f4df1 Updated ib-compress. 2015-01-01 11:14:20 -08:00
Branimir Karadzic
f11b368f93 Cleanup. 2014-12-31 20:05:29 -08:00
Branimir Karadžić
c6efb167ba Added index buffer compression support. 2014-12-31 16:11:07 -08:00
Daniele Bartolini
98e3552fe8 Fix shaderc debug assert failed (issue #120) 2014-12-11 16:12:58 +01:00
Branimir Karadžić
4bde27dc19 Fixed compiler error. 2014-12-05 20:29:41 -08: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
8ff44ece56 Fixed build. 2014-11-23 21:41:53 -08: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
m.milanovic@levi9.com
8e57c9fa2b Use tinystl/unordered_map in geometry 2014-08-22 16:51:25 +02: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ć
f9b17cc0ec Removed tokenizecmd. 2014-06-30 22:46:54 -07:00
Branimir Karadžić
0ebb4923fc Added interpolator qualifier support. 2014-06-25 18:43:26 -07:00
Branimir Karadžić
02e549bfec Moved fpumath to bx. 2014-05-26 19:31:37 -07:00
Branimir Karadžić
1d82b0c07b Cleanup. 2014-05-19 22:08:35 -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ć
caed3f9102 Removed tools executables to avoid repo bloat, and stale executables. Added makefile rule to build tools. 2014-02-09 18:59:49 -08:00
Branimir Karadžić
0719e748d7 Merge branch 'master' of github.com:bkaradzic/bgfx 2014-02-09 16:47:31 -08:00
Branimir Karadžić
ad335be715 shaderc: Added ARB_shader_texture_lod extension. 2014-02-09 16:46:50 -08:00
bkaradzic
8e69b1b4a2 shaderc: Updated linux binary. 2014-02-08 21:51:09 -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
8f7da50de4 Updated windows shaderc executable. 2014-02-01 21:47:24 -08:00
bkaradzic
04b101723b Updated shaderc linux executable. 2014-02-01 21:33:35 -08:00
bkaradzic
3e3de1e35a Pass precision qualifier from varying.def.sc to shader. 2014-02-01 21:15:14 -08:00
bkaradzic
0ed2edc7b3 Updated shaders and README. 2014-01-13 20:17:56 -08:00
bkaradzic
38494bad92 Updated Linux tools. 2013-12-20 21:47:39 -08:00
bkaradzic
7355de966c Updated Windows tools. 2013-12-20 21:43:42 -08:00
bkaradzic
9f403f2053 Split tools bin per platform. 2013-12-20 19:56:34 -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
fab2ef534c Using language compliant header guards. 2013-11-14 19:10:10 -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
74d35aa531 Added missing include. 2013-10-19 14:45:54 -07:00
bkaradzic
bd5fec510c Updated example mesh. 2013-10-18 08:41:31 -07:00
bkaradzic
9859472bab Added new examples to premake script. Added missing files. 2013-10-17 23:45:58 -07: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
488483a945 Fixed texture update when requested texture format doesn't match internal texture format, and simplified texture creation. 2013-09-08 21:03:03 -07:00
bkaradzic
19dd4020f4 Added ETC1 texture support. Added KTX file format support. 2013-09-02 16:22:53 -07:00
bkaradzic
e05d250948 Added debug info for shaders build with DX11 compiler. 2013-08-26 22:40:02 -07:00
bkaradzic
20f24bbe2b Fixed Linux build. 2013-08-22 09:56:41 -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
3aea7306c6 Fixed compiler errors. 2013-08-04 16:56:07 -07:00
bkaradzic
ebd1595b23 Linux: Rebuilt shaderc executable. 2013-07-29 18:56:34 -07:00
bkaradzic
ba4a32d79a shaderc: Added missing options to help. 2013-07-28 18:41:00 -07:00
bkaradzic
bf22ffaae1 iOS stuff. 2013-07-21 14:44:53 -07:00
bkaradzic
4ade0981f1 Fixed include path to be relative to input file. Issue #34. 2013-05-20 22:20:11 -07:00
bkaradzic
dc52398fb0 Updated shaderc executable. 2013-05-17 22:16:51 -07:00
bkaradzic
c487afa8ef Added varying.def to dependencies. 2013-05-17 22:13:32 -07:00
bkaradzic
30a6503c4a Strip executables. 2013-04-28 14:08:59 -07:00
bkaradzic
d936a29ea6 Updaded shaderc Linux binary. 2013-04-12 09:05:34 -07:00
bkaradzic
507af8c9f1 Fixed shaderc crash when $in/output lines have comments. 2013-04-11 20:36:28 -07:00
bkaradzic
db6cc187ca Fixed warnings. Rebuilt Linux shaderc binary. 2013-04-08 22:12:35 -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
6f725bd497 Rebuilt Linux tools. 2013-04-06 08:34:17 -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
3b68197bb3 Updated shaderc binary. 2013-03-22 22:47:56 -07:00
bkaradzic
de43573088 Updated shaderc binary. 2013-03-20 22:15:40 -07:00
bkaradzic
1648c34b84 Updated generated source files. 2013-03-19 21:58:26 -07:00
bkaradzic
2936474f49 Fixed glsl-optimizer crash on Linux (GCC4.7.2 inlining bug?!). 2013-03-17 19:09:58 -07:00
bkaradzic
687be4f31b Updated glsl-optimizer. 2013-03-17 11:29:03 -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
3e9a884f0d Fixed VS2010 warning. 2013-02-15 19:42:51 -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
cedfee113d Fixed geometryc arguments. 2013-01-24 22:22:04 -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
6f3cc509e4 Fixed tool memory leak. 2013-01-03 23:41:27 -08:00
bkaradzic
fd35b10df6 Fixed warnings. 2012-12-31 20:52:48 -08:00
bkaradzic
fea9652882 Merged geometryc. 2012-12-31 18:57:23 -08:00
bkaradzic
446686b48f Added vertex pack/unpack support. 2012-12-31 18:48:52 -08:00
bkaradzic
dcdd720370 Fixed warnings. 2012-12-30 21:02:20 -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
bkaradzic
9e681bb2ed Fixed vertex decl attribute size calculation. 2012-11-03 13:12:26 -07:00
bkaradzic
f71617e1b6 Added help for shaderc. 2012-10-28 11:00:53 -07:00
bkaradzic
7accea7b5d Added texture loading example. 2012-10-27 21:34:41 -07:00
Branimir Karadzic
6fc1ba4932 Fixed ddsdump build on Linux. 2012-10-22 22:03:00 -07:00
Branimir Karadzic
41a688da6f Fixed unused result warning. 2012-10-22 21:45:04 -07:00
bkaradzic
9556728ee0 Fixed cppcheck warnings. 2012-10-10 22:49:48 -07:00
bkaradzic
f5295b951d Added instancing example. 2012-10-08 23:24:10 -07:00
bkaradzic
cfac3feb85 Added more examples. 2012-10-07 20:41:18 -07:00
bkaradzic
1621cc851a Added examples. 2012-09-16 17:36:08 -07:00
bkaradzic
b505078b38 Unified glsl and hlsl shaders. 2012-08-28 22:59:48 -07:00
bkaradzic
28a73924b2 Texture update work. 2012-08-19 18:50:23 -07:00
Branimir Karadzic
055891a42d Fixed shaderc Linux build. 2012-08-07 21:38:31 -07:00
bkaradzic
3bb48b4ab2 Added ref counting for shaders used by material. 2012-08-05 20:38:17 -07:00
bkaradzic
45a85d438c DX11 wip. 2012-08-05 14:51:49 -07:00
bkaradzic
09aa9a38c1 DX11 renderer wip. 2012-07-22 21:08:58 -07:00
bkaradzic
8dd523fa67 Added support for outputing makefile style dependencies when compiling shaders. 2012-06-26 20:55:33 -07:00
bkaradzic
2a918ab4e0 Added IOS/OSX defines to shaderc. 2012-06-25 18:50:59 -07:00
bkaradzic
fe1252d260 Support for Cube and Volume textures. 2012-06-09 18:25:50 -07:00
bkaradzic
d13b7d0d45 Added treat warnings as errors switch to shaderc. 2012-06-05 19:44:20 -07:00
bkaradzic
732b2432f7 Added line numbers for shaderc preprocessed code. Fixed premake script. 2012-06-05 19:32:56 -07:00
bkaradzic
d9a08e3f81 Added OpenGL support for Windows build. Added Linux support (Thanks @MatthewEndsley for X window and GLX code). Fixed uniform size for D3D9. 2012-05-29 18:24:55 -07:00
bkaradzic
39610d656e Lowered min spec shader version to 2.0b. Better shaderc error messages. 2012-05-14 22:31:40 -07:00
bkaradzic
d25592f919 Added makedisttex tool for calculating SDF image (using EDTAA3). Added fatal error when D3D9 fails to create render target. 2012-04-29 14:46:23 -07:00
Branimir Karadzic
dee3fe5266 Initial commit. 2012-04-03 20:30:07 -07:00