summaryrefslogtreecommitdiffstats
path: root/tests/diagnostics/hull-shader-no-domain.slang.disabled
blob: 87bf2a81c0fe8f8cd774f36b12f4ea4d021f8e62 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//TEST:SIMPLE:
// `HullShader` without `Domain` attribute

pipeline P
{
    world CoarseVertex;
    world ControlPoint;
    world CornerPoint;
    world TessPatch;
    world FineVertex;
    
    require @FineVertex vec4 RS_Position; 
    require @ControlPoint vec2 tessLevelInner;
    require @ControlPoint vec4 tessLevelOuter;
        
    // implicit import operator CoarseVertex->CornerPoint
    extern @CornerPoint CoarseVertex[] CoarseVertex_ControlPoint;
    [PerCornerIterator]
    extern @CornerPoint int HS_CornerID;
    
    extern @ControlPoint CoarseVertex[] CoarseVertex_ControlPoint;
    extern @TessPatch CoarseVertex[] CoarseVertex_ControlPoint;
    [InvocationId]
    extern @ControlPoint int invocationId;
    extern @FineVertex ControlPoint[] ControlPoint_tes;
    extern @FineVertex Patch<TessPatch> perPatch_tes;
    
    extern @FineVertex Patch<CornerPoint[3]> perCorner_tes;
    [TessCoord]
    extern @FineVertex vec3 tessCoord;
      
    stage hs : HullShader
    {
        PatchWorld: TessPatch;
        ControlPointWorld: ControlPoint;
        CornerPointWorld: CornerPoint;
        InputControlPointCount: 3;
        ControlPointCount: 1;
//        Domain: triangles;
        TessLevelOuter: tessLevelOuter;
        TessLevelInner: tessLevelInner;
		Partitioning: integer;
		OutputTopology: triangle_ccw;
    }
}

shader S
    targets P
{
	@FineVertex float4 RS_Position = float4(0.0);
	@ControlPoint float2 tessLevelInner = float2(2.0);
	@ControlPoint float4 tessLevelOuter = float4(2.0);
}