SPIRV-Cross/shaders-msl
Chip Davis 1df47db6ba Support the SPV_KHR_post_depth_coverage extension.
Using the `PostDepthCoverage` mode specifies that the `gl_SampleMaskIn`
variable is to contain the computed coverage mask following the early
fragment tests, which this mode requires and implicitly enables.

Note that unlike Vulkan and OpenGL, Metal places this on the sample mask
input itself, and furthermore does *not* implicitly enable early
fragment testing. If it isn't enabled explicitly with an
`[[early_fragment_tests]]` attribute, the compiler will error out. So we
have to enable that mode explicitly if `PostDepthCoverage` is enabled
but `EarlyFragmentTests` isn't.

For Metal, only iOS supports this; for some reason, Apple has yet to
implement it on macOS, even though many desktop cards support it.
2019-07-11 10:28:43 -05:00
..
asm Handle more cases with FP16 and texture sampling. 2019-06-27 15:04:22 +02:00
comp MSL/HLSL: Support OpOuterProduct. 2019-07-01 10:57:27 +02:00
desktop-only MSL: New SDK errors out on cull distance. 2019-06-14 12:12:40 +02:00
flatten Use declared binding in SPIR-V as a fallback for explicit MSL binds. 2018-04-04 12:25:11 +02:00
frag Support the SPV_KHR_post_depth_coverage extension. 2019-07-11 10:28:43 -05:00
legacy/vert Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
tesc MSL: Add support for tessellation control shaders. 2019-02-07 08:51:22 -06:00
tese MSL: Use vectors for the tessellation level builtins in tese shaders. 2019-02-22 12:18:51 -06:00
vert MSL: Support Invariant qualifier on position. 2019-06-12 09:39:12 +02:00
vulkan MSL: Handle packed matrices. 2019-07-10 18:37:31 -05:00