1
2struct ds_in_t 
3{ 
4    float4 pos  : POSITION; 
5    float3 norm : TEXCOORD0; 
6}; 
7
8struct pcf_in_t 
9{ 
10    float flTessFactor [3]   : SV_TessFactor; 
11    float flInsideTessFactor : SV_InsideTessFactor; 
12}; 
13
14struct gs_in_t 
15{ 
16    float4 pos  : POSITION; 
17    float3 norm : TEXCOORD0; 
18}; 
19
20[domain ( "tri" )] 
21gs_in_t main (const OutputPatch <ds_in_t, 3> i, float f : msem, float3 tesscoord : SV_DomainLocation, pcf_in_t pcf_data ) 
22{ 
23    gs_in_t o; 
24
25    o.pos  = i[0].pos + tesscoord.x * f;
26    o.norm = i[0].norm + tesscoord.y;
27
28    tesscoord.z;
29    
30    return o; 
31}
32
33