Hans-Kristian Arntzen
f6d08e6113
Add workaround for PointCoord builtin on HLSL.
2018-02-23 15:58:35 +01:00
Hans-Kristian Arntzen
1a2e4de7a5
Add test for texelFetch without sampler.
2018-02-21 13:45:59 +01:00
Hans-Kristian Arntzen
4db7061dd1
Begin implementing texelFetch(texture2D) workaround on GLSL.
2018-02-21 13:08:30 +01:00
Hans-Kristian Arntzen
18e8833eeb
Support gl_NumWorkgroups in HLSL.
2018-02-05 10:29:20 +01:00
Hans-Kristian Arntzen
bfe6f50b8e
Remove cfg_analysis option.
...
Not using this is broken, and won't work anymore.
2018-01-15 13:21:01 +01:00
Hans-Kristian Arntzen
4427cb993d
Add support for renaming entry points.
2017-11-13 13:50:37 +01:00
Hans-Kristian Arntzen
f486142e36
Run format_all.sh.
2017-11-13 09:52:35 +01:00
Hans-Kristian Arntzen
4f88f9750f
Cleanups for HLSL vertex attribute remap.
...
Add CLI support as well.
2017-11-13 09:46:45 +01:00
Bill Hollings
bac657d873
Fixes from review of PR 321.
2017-11-07 15:38:13 -05:00
Hans-Kristian Arntzen
51e50c06c0
Automatically rename structs as well in rename_interface_variable.
2017-10-06 12:35:55 +02:00
Hans-Kristian Arntzen
0eaa2dee13
Merge pull request #279 from KhronosGroup/fix-276
...
Add option to disable use of 420pack extension.
2017-09-08 10:15:02 +02:00
Hans-Kristian Arntzen
6599a41aad
Add option to disable use of 420pack extension.
2017-09-08 09:56:06 +02:00
Hans-Kristian Arntzen
d9cbc03c9f
Ensure that exceptions are logged.
2017-09-08 09:35:13 +02:00
Hans-Kristian Arntzen
8d7a909c92
Add support for querying SPIR-V Capabilities and Extensions.
2017-08-15 15:27:53 +02:00
Bill Hollings
77f5812c55
Fix issue #239 : compilation of shaders-msl/frag/texture-proj-shadow.frag.
...
Remove unsupported sampler1DShadow from shaders-msl/frag/texture-proj-shadow.frag.
Improve error message response from unsupported depth texture formats.
Fix several integer cast warnings in unrelated code.
Run ./format_all.sh on unrelated files.
2017-08-11 14:54:58 -04:00
Hans-Kristian Arntzen
bdfa97a1cf
Unify vertex clip-coord fixups.
...
The different options were scattered around in different backends and
didn't really work right with CLI at all.
2017-08-03 13:02:59 +02:00
Hans-Kristian Arntzen
d89d0e01fc
Run format_all.sh.
2017-07-24 09:29:20 +02:00
Jason Chan
3281e8278f
move the spirv_glsl.cpp specific logic to main.cpp
2017-06-25 15:16:09 +02:00
Jason Chan
f03d377faa
fix tab indent
2017-06-23 22:23:26 +02:00
Jason Chan
9f1eb5a20d
added --rename-interface-variable <in|out> <location> <new_variable_name>
2017-06-23 22:20:42 +02:00
Hans-Kristian Arntzen
470ae7a7f6
Add multidimensional array flattening test.
2017-05-31 10:00:52 +02:00
Hans-Kristian Arntzen
842eff9647
Merge pull request #188 from KhronosGroup/sso
...
Add support for Separate Shader Objects
2017-05-31 09:55:34 +02:00
hesiod
ba381580af
Fix null pointer dereference
...
write_string_to_file would try to write the error message that it failed to open a file stream to the very same file stream it just tried to open.
Fix this by writing to stderr instead.
2017-05-30 17:17:51 +03:00
Bill Hollings
a71c547b30
CompilerMSL remove pad_and_pack_uniform_structs option from both API and CLI tool.
2017-05-22 16:38:38 -04:00
Hans-Kristian Arntzen
36650c890c
Add separate shader object support.
...
Allow redeclaring gl_PerVertex for stage compatibility.
2017-05-22 15:53:21 +02:00
Hans-Kristian Arntzen
ec45c9efb3
Add interface for reflecting "magic" HLSL counter buffers.
2017-05-09 09:21:54 +02:00
Hans-Kristian Arntzen
17d88ca928
Add compatibility option for PointSize in HLSL.
...
If we opt-in to it, PointSize can be ignored to avoid more annoying
workarounds.
2017-05-04 10:12:14 +02:00
Bill Hollings
5ad73f33f5
MSL fixes from review of PR 134.
...
Remove unnecessary use of std:: prefix in spirv_msl.cpp.
Use typedef instead of #define.
spirv-cross deprecate --metal CLI option and replace with --msl option.
2017-03-19 21:06:21 -04:00
Bill Hollings
5550c87b1f
CompilerMSL options access and UBO alignment test case.
...
CompilerMSL accesses options using same design pattern as CompilerGLSL and CompilerHLSL.
CompilerMSL support setting VA & rez binding specs via either constructor or compile() method overload.
CompilerMSL support single UBO packing and padding in single pass.
spriv_cross app (main.cpp) supports turning off UBO packing and padding via command line option.
Add MSL UBO alignment test shader.
2017-03-12 17:42:51 -04:00
Hans-Kristian Arntzen
eb5e09fa64
Run format_all.sh.
2017-02-23 19:33:14 +01:00
Hans-Kristian Arntzen
2e3c6ec6a9
Add option to set HLSL shader model.
2017-02-16 11:17:12 +01:00
Hans-Kristian Arntzen
c92b839ecb
Fix crash when passing wrong arguments.
...
THROW() did not actually throw in exception-enabled builds, silly
oversight.
2017-02-16 11:06:57 +01:00
Hans-Kristian Arntzen
24df8f0019
Run format_all.sh.
2017-02-04 10:26:26 +01:00
Hans-Kristian Arntzen
18c37bcdab
Update license headers for 2017.
2017-01-28 09:00:40 +01:00
Robert Konrad
216a6816cd
Add --hlsl command line option
2017-01-25 17:30:52 +01:00
Hans-Kristian Arntzen
7f787f09dc
Add flattening support for push constants.
2017-01-21 10:27:14 +01:00
Arseny Kapoulkine
24c66250c7
Add tests for buffer block flattening
2017-01-17 23:26:18 -08:00
Hans-Kristian Arntzen
27f4f75513
Run format_all.sh.
2017-01-13 16:32:54 +01:00
Hans-Kristian Arntzen
ce3fe29557
MSVC maintenance.
2017-01-12 10:57:44 +01:00
Hans-Kristian Arntzen
c7659507e8
Merge pull request #90 from gwihlidal/master
...
Improve useability of get_decoration and friends.
2017-01-05 23:07:40 +01:00
Graham Wihlidal
bcfe2be332
Coding style fix
2017-01-05 21:02:57 +01:00
Graham Wihlidal
a4818f4391
Explicitly truncate (to keep the fprintf easily portable)
2017-01-05 20:51:14 +01:00
Graham Wihlidal
33bee8a12e
Fix for "warning C4267: '=': conversion from 'size_t' to 'uint32_t', possible loss of data"
2017-01-05 20:14:34 +01:00
Hans-Kristian Arntzen
97f7ab865a
Fix handling of NoWrite/NoRead decoration for images.
...
The old workaround for glslang is no longer needed, so only apply workaround
carefully.
2017-01-05 18:16:33 +01:00
Panagiotis Christopoulos Charitos
7f69f9395e
Rework after review
2016-12-15 20:46:10 +01:00
Hans-Kristian Arntzen
b9600aa8d3
Only dump block size for blocks which have a physical size.
...
I/O variables can also be blocks, but they have no physical size.
2016-11-29 09:07:51 +01:00
Hans-Kristian Arntzen
2d79d365dc
Fix get_declared_struct_size for nested arrays of structs.
...
The array size was dropped from consideration during recursion.
2016-11-28 15:01:36 +01:00
Hans-Kristian Arntzen
b847c88559
Cleanup, and make cfg analysis optional.
2016-11-18 17:06:49 +01:00
Hans-Kristian Arntzen
6bd545bc6b
Basic support for specialization constant reflection.
2016-10-03 12:29:46 +02:00
Panagiotis Christopoulos Charitos
66e76d903f
Add support of variable type remapping
2016-09-20 10:26:07 +02:00
Hans-Kristian Arntzen
378fbe8b92
Consistently use "image" nomenclature for separate images.
2016-09-11 13:48:25 +02:00
Hans-Kristian Arntzen
a5f0abdc11
Use the "SPIRV_Cross" naming scheme for generated uniforms.
2016-09-11 12:13:31 +02:00
Hans-Kristian Arntzen
1b5ca8d868
Move combined image hiding logic into is_hidden.
2016-09-10 16:20:19 +02:00
Hans-Kristian Arntzen
bcb5560109
Sketch out interface for combined image samplers.
2016-09-10 13:56:36 +02:00
Hans-Kristian Arntzen
e92020819e
Add reflection support for separate textures and samplers.
2016-09-10 13:05:35 +02:00
Hans-Kristian Arntzen
f61a5d1e5d
Implement dead variable elimination.
2016-08-26 12:58:50 +02:00
Hans-Kristian Arntzen
042475e88e
Add support for multiple entry points.
...
- Only consider I/O variables if part of OpEntryPoint.
- Keep a safe fallback if #entry-points is 1 to avoid potentially
breaking previously working shaders.
2016-07-28 13:18:55 +02:00
Hans-Kristian Arntzen
5c24d99ff2
Add distinction between type_id and base_type_id in resource interface.
...
type_id was not intuitive and did not allow for parsing array sizes of
variables.
Expose another member, base_type_id which will provide the base type
suitable for parsing metadata such as decorations and type_id will now
point to the actual type which includes full type information such as
arrays and so on.
2016-07-12 21:20:18 +02:00
Hans-Kristian Arntzen
078eec5894
Add support for generic remapping of variables.
2016-07-06 11:04:06 +02:00
Hans-Kristian Arntzen
3c285a15e0
Add support for reflecting execution modes.
2016-07-04 13:30:05 +02:00
Hans-Kristian Arntzen
c172a3507c
Add support for custom C++ interface names.
...
Mostly useful for baking several shaders into the same binary without
getting symbol collisions.
2016-05-30 21:45:16 +02:00
Hans-Kristian Arntzen
dbee4e4346
Add support for Vulkan GLSL as output target.
...
Mostly useful for debugging SPIR-V where it is useful to see the
"original" Vulkan GLSL constructs which created the SPIR-V.
2016-05-05 10:44:45 +02:00
Hans-Kristian Arntzen
926916d745
Add -Wshadow.
...
Fixes lots of dubious variable shadowing.
2016-05-05 09:15:25 +02:00
Bill Hollings
2b1e6a8706
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2016-05-04 12:02:45 -04:00
Hans-Kristian Arntzen
12cfbb221f
Add support for querying DecorationInputAttachmentIndex.
...
Was missing from OpDecoration handling.
2016-05-04 13:41:04 +02:00
Bill Hollings
5f2d666b69
Add CLI support for Metal.
2016-04-11 11:31:03 -04:00
Hans-Kristian Arntzen
147e53aeb2
Rename project to SPIRV-Cross.
...
Rename to coincide with moving the project to KhronosGroup.
2016-04-04 15:42:30 +02:00
Hans-Kristian Arntzen
75471fbb98
Initial commit.
2016-03-11 16:30:27 +01:00