yum-mirror/glslang

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

Pankaj MistryImplement GL_NV_gpu_shader5 and enable GL_ARB_gpu_shader5 completely5cffd9a7

main
1.4 KiB57 linesraw
1#version 150
2#extension GL_NV_gpu_shader5 : enable
3#extension GL_ARB_gpu_shader_fp64 : enable
4
5// Testing storage interpolation qualifiers sample in/ sample out
6sample in vec4 colorSampIn[3];
7sample out vec4 colorSampOut;
8
9// Testing geometry layout qualifiers 
10// input qualifier: invocations
11// output qualifier: stream
12layout(triangles, invocations=6) in;
13layout(points, stream=0) out;
14
15in vec4 color[3];
16out vec3 Ocolor;
17
18layout(stream=1) out;             // default is now stream 1
19
20// Test explicitly sized input variables
21in int8_t    var1[3];
22in int16_t   var5[3];
23in int32_t   var9[3];
24in int64_t   var13[3];
25in float16_t var33[3];
26in float64_t var41[3];
27in double var42[3];
28
29out int8_t    var11;
30out int16_t   var51;
31out int32_t   var91;
32out int64_t   var131;
33out float16_t var331;
34out float64_t var411;
35out double var421;
36
37// This test case verifies builtins enabled for geometry shader by NV_gpu_shader5
38void testGeomBuiltins() 
39{
40    EmitStreamVertex(1);      // Geometry-only
41    EndStreamPrimitive(0);    // Geometry-only
42
43    EmitVertex();                      // Geometry-only
44    EndPrimitive();                    // Geometry-only
45
46    int i = gl_InvocationID;
47
48    // Note: "patch" feature is not enabled as it's not used, below builtins are
49    // related to patch
50    int j = gl_PatchVerticesIn;
51    float k = gl_TessLevelOuter[3];
52    k = gl_TessLevelInner[1];
53
54}
55void main()
56{
57}