yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

Jay KwakPrepare VulkanSDK release Oct 2025 (#8525)db44c1b73

master
682 B28 linesraw
1//TEST:SIMPLE(filecheck=CHECK_SPV_SYNTAX): -allow-glsl -fvk-use-entrypoint-name -target spirv
2// CHECK_SPV_SYNTAX: DerivativeGroupQuads{{NV|KHR}}
3// CHECK_SPV_SYNTAX: DerivativeGroupLinear{{NV|KHR}}
4
5#ifdef GLSL_SYNTAX
6layout(derivative_group_quadsNV) in;
7#endif
8
9buffer MyBlockName
10{
11    int result;
12} outputBuffer;
13
14[DerivativeGroupQuad]
15[numthreads(2,2,1)]
16[shader("compute")]
17void main1(uint3 dispatchThreadID : SV_DispatchThreadID)
18{
19    outputBuffer.result = asint(ddx(1)) + asint(ddx(1)) ;
20}
21
22[DerivativeGroupLinear]
23[numthreads(4,1,1)]
24[shader("compute")]
25void main2(uint3 dispatchThreadID : SV_DispatchThreadID)
26{
27    outputBuffer.result = asint(ddy(1)) + asint(ddy(1));
28}