Граф коммитов

90 Коммитов

Автор SHA1 Сообщение Дата
Hans-Kristian Arntzen de33d89074 Add explicit in/out locations everywhere.
Needed for newer glslang. With Vulkan semantics for SPIR-V, all
locations must be explicitly defined.
2017-06-21 09:39:08 +02:00
Hans-Kristian Arntzen b0f7deedec Run format_all.sh. 2017-06-17 10:56:24 +02:00
Hans-Kristian Arntzen 978901f9e4 Avoid ugly workaround for separate shadow samplers in GLSL/HLSL. 2017-06-17 10:54:59 +02:00
Hans-Kristian Arntzen 620da7b943 Add basic support for : register() declaration in HLSL. 2017-06-17 10:15:32 +02:00
Bill Hollings ba245697f1 Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross 2017-06-01 10:20:00 -04:00
Robert Konrad 111a30a7d8 Fix shader model 2/3 texture sampling 2017-05-31 16:53:43 +02:00
Bill Hollings b41e1482c8 Support emitting SPIR-V type declarations tuned for specified SPIR-V objects.
CompilerGLSL type_to_glsl() and image_type_glsl() functions support optional object ID.
Add SPIRType::Image::access member to support SPIR-V OpTypeImage access qualifier.
Remove SPIRType::Image::is_read and ::is_written members.
Use DecorationNonReadable and DecorationNonWritable to mark read/write access for image variables.
CompilerMSL emit access qualifiers per image variable, instead of per image type.
CompilerGLSL and CompilerHLSL behaviour is unchanged.
2017-05-29 20:45:05 -04:00
Hans-Kristian Arntzen 08b3c674a9 Check size of name before testing for @count. 2017-05-09 09:30:30 +02:00
Hans-Kristian Arntzen e897d154ac Cleanups. 2017-05-07 13:39:15 +02:00
Hans-Kristian Arntzen 947f7010c7 HLSL: Use emit_sampled_image_op instead. 2017-05-07 13:28:08 +02:00
Hans-Kristian Arntzen 686ac6812b HLSL: Can pass down combined image samplers as arguments. 2017-05-07 13:22:16 +02:00
Hans-Kristian Arntzen 59ad08429b HLSL: Add test for passing down separate image and samplers to functions. 2017-05-07 12:53:51 +02:00
Hans-Kristian Arntzen 36e1c470a2 Fix formatting. 2017-05-06 13:59:00 +02:00
Hans-Kristian Arntzen f4d7268565 GLSL will also need shadow state analysis.
Refactor stuff out to top-level.

Fix some bugs with combined shadow samplers in regular GLSL.
2017-05-06 13:21:35 +02:00
Hans-Kristian Arntzen 100e9d34b8 HLSL: Basic support for separate image/samplers. 2017-05-06 12:39:04 +02:00
Hans-Kristian Arntzen 851acf3712 Avoid boolean mix in HLSL.
Update glslang travis checkout as boolean mix support was broken on that commit.
2017-05-04 10:28:30 +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 012cb25b7d CompilerMSL remove option to flip fragment coordinates. 2017-04-25 11:25:50 -04:00
Robert Konrad bb9dbd4149 Support texelFetch in HLSL 2017-04-24 11:08:55 +02:00
Robert Konrad 434d9b8803 Support array textures in HLSL 2017-04-24 10:02:03 +02:00
Robert Konrad 7d8be83cb3 Support shadow sampling in HLSL 2017-04-21 17:52:04 +02:00
Robert Konrad 8446631171 Support cube maps in HLSL 2017-04-21 14:54:03 +02:00
Robert Konrad ff12d57765 Support 1D/2D textures in HLSL2/3 2017-04-21 14:35:30 +02:00
Robert Konrad 9020c48076 Support and test 1D and 3D textures in HLSL4/5 2017-04-21 14:05:17 +02:00
Robert Konrad 9aaf6b28dd Throw when sampling non-float textures in HLSL 2017-04-21 11:40:24 +02:00
Robert Konrad 1fe652da68 Improve shader model 2/3 texture sampling 2017-04-21 09:46:58 +02:00
Robert Konrad 612075176c Fix HLSL tex2D calls 2017-04-20 16:15:46 +02:00
Robert Konrad de41ebf4d7 Simplify texture offset handling in HLSL 2017-04-20 16:04:02 +02:00
Robert Konrad 31afcbb4fe Force a recompile when a function is added to HLSL 2017-04-20 15:21:47 +02:00
Robert Konrad f7dd57040e Correct and simplify HLSL texture types 2017-04-20 14:51:24 +02:00
Robert Konrad fd9b589469 Support textureProj in HLSL4/5 2017-04-20 13:37:38 +02:00
Robert Konrad 8b516451f2 Uninformed attempt at mapping tex formats to HLSL 2017-04-20 11:39:38 +02:00
Robert Konrad be4c919d08 Update HLSL test results 2017-04-18 15:17:55 +02:00
Robert Konrad ec84e8832a Fix different HLSL sample calls 2017-04-18 14:55:38 +02:00
Robert Konrad c5953e03ee Support shader model 4/5 type tex sampling 2017-04-18 14:17:05 +02:00
Robert Konrad 3804292c43 Merge branch 'master' of github.com:KhronosGroup/SPIRV-Cross into fix 2017-04-03 11:43:35 +02:00
Robert Konrad 61b561772c Fix HLSL matrix unrolling 2017-04-03 11:38:15 +02:00
Hans-Kristian Arntzen 543e380d90 Fix case where samplerBuffer is emitted without combined sampler. 2017-04-02 11:03:07 +02:00
Hans-Kristian Arntzen bf5c07532c Run format_all.sh. 2017-03-25 16:28:44 +01:00
Robert Konrad f3a82778f9 Fix OpLogicalNot in HLSL 2017-03-24 15:00:48 +01:00
Robert Konrad a7e2a69a6f Add bit casting to HLSL 2017-03-24 14:13:59 +01:00
Robert Konrad e7b0258556 Add more HLSL instructions 2017-03-24 13:58:39 +01:00
Robert Konrad 3f74503aca Prefer plain texture2D in legacy es vertex shaders
WebGL supports lod texture funcs only in fragment
shaders but SPIR-V supports only lod texture funcs
in vertex shaders. This reverts calls which were
forced (infered from using a 0 constant) to use
an lod to plain calls in vertex shaders when
using legacy es.
2017-03-23 10:11:45 +01:00
Hans-Kristian Arntzen eb6a415d4c Run format_all.sh. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen a0a582dd04 Do not emit interpolation qualifiers to static globals. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen b8bda45802 Add test case for interpolation qualifiers in HLSL. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen 3eed439643 Run format.sh. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen 439fa9f4a2 Handle I/O blocks separately from regular inputs and outputs. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen 784a23b92a Add instancing test to HLSL. 2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen a4aa89e992 Add test for fragment builtins like gl_FragDepth/gl_FragCoord. 2017-03-21 13:48:50 +01:00