yum-mirror/slang

Making it easier to work with shaders

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

Yong HeLower varying parameters as pointers instead of SSA values. (#5919)c43f6fa55

master
1.1 KiB59 linesraw
1#version 460
2#extension GL_EXT_ray_tracing : require
3layout(row_major) uniform;
4layout(row_major) buffer;
5struct Params_0
6{
7    int mode_0;
8};
9
10layout(binding = 0)
11layout(std140) uniform block_Params_0
12{
13    int mode_0;
14}gParams_0;
15layout(binding = 1)
16uniform texture2D gParams_alphaMap_0;
17
18layout(binding = 2)
19uniform sampler gParams_sampler_0;
20
21struct SphereHitAttributes_0
22{
23    vec3 normal_0;
24};
25
26hitAttributeEXT SphereHitAttributes_0 _S1;
27
28struct ShadowRay_0
29{
30    vec4 hitDistance_0;
31    vec3 dummyOut_0;
32};
33
34rayPayloadInEXT ShadowRay_0 _S2;
35
36void main()
37{
38    if(gParams_0.mode_0 != 0)
39    {
40        if((textureLod(sampler2D(gParams_alphaMap_0,gParams_sampler_0), (_S1.normal_0.xy), (0.0)).x) > 0.0)
41        {
42            terminateRayEXT;;
43        }
44        else
45        {
46            ignoreIntersectionEXT;;
47        }
48    }
49
50    vec3 _S3 = (gl_HitTriangleVertexPositionsEXT[(0U)]);
51    _S2.dummyOut_0 = _S3;
52    vec3 _S4 = (gl_HitTriangleVertexPositionsEXT[(1U)]);
53    vec3 _S5 = _S3 + _S4;
54    _S2.dummyOut_0 = _S5;
55    vec3 _S6 = (gl_HitTriangleVertexPositionsEXT[(2U)]);
56    _S2.dummyOut_0 = _S5 + _S6;
57    return;
58}
59