1617a3babSopenharmony_ciSamplerComparisonState g_sSamp : register(s0);
2617a3babSopenharmony_ci
3617a3babSopenharmony_ciuniform Texture1D <float4> g_tTex1df4 : register(t0);
4617a3babSopenharmony_ciTexture1D <int4>   g_tTex1di4;
5617a3babSopenharmony_ciTexture1D <uint4>  g_tTex1du4;
6617a3babSopenharmony_ci
7617a3babSopenharmony_ciTexture2D <float4> g_tTex2df4;
8617a3babSopenharmony_ciTexture2D <int4>   g_tTex2di4;
9617a3babSopenharmony_ciTexture2D <uint4>  g_tTex2du4;
10617a3babSopenharmony_ci
11617a3babSopenharmony_ciTexture3D <float4> g_tTex3df4;
12617a3babSopenharmony_ciTexture3D <int4>   g_tTex3di4;
13617a3babSopenharmony_ciTexture3D <uint4>  g_tTex3du4;
14617a3babSopenharmony_ci
15617a3babSopenharmony_ciTextureCube <float4> g_tTexcdf4;
16617a3babSopenharmony_ciTextureCube <int4>   g_tTexcdi4;
17617a3babSopenharmony_ciTextureCube <uint4>  g_tTexcdu4;
18617a3babSopenharmony_ci
19617a3babSopenharmony_ciTexture1DArray <float4> g_tTex1df4a;
20617a3babSopenharmony_ciTexture1DArray <int4>   g_tTex1di4a;
21617a3babSopenharmony_ciTexture1DArray <uint4>  g_tTex1du4a;
22617a3babSopenharmony_ci
23617a3babSopenharmony_ciTexture2DArray <float4> g_tTex2df4a;
24617a3babSopenharmony_ciTexture2DArray <int4>   g_tTex2di4a;
25617a3babSopenharmony_ciTexture2DArray <uint4>  g_tTex2du4a;
26617a3babSopenharmony_ci
27617a3babSopenharmony_ciTextureCubeArray <float4> g_tTexcdf4a;
28617a3babSopenharmony_ciTextureCubeArray <int4>   g_tTexcdi4a;
29617a3babSopenharmony_ciTextureCubeArray <uint4>  g_tTexcdu4a;
30617a3babSopenharmony_ci
31617a3babSopenharmony_cistruct PS_OUTPUT
32617a3babSopenharmony_ci{
33617a3babSopenharmony_ci    float4 Color : SV_Target0;
34617a3babSopenharmony_ci    float  Depth : SV_Depth;
35617a3babSopenharmony_ci};
36617a3babSopenharmony_ci
37617a3babSopenharmony_ciPS_OUTPUT main()
38617a3babSopenharmony_ci{
39617a3babSopenharmony_ci   PS_OUTPUT psout;
40617a3babSopenharmony_ci
41617a3babSopenharmony_ci   // 1D
42617a3babSopenharmony_ci   float r00 = g_tTex1df4 . SampleCmp(g_sSamp, 0.1, 0.75);
43617a3babSopenharmony_ci   float r02 = g_tTex1di4 . SampleCmp(g_sSamp, 0.1, 0.75);
44617a3babSopenharmony_ci   float r04 = g_tTex1du4 . SampleCmp(g_sSamp, 0.1, 0.75);
45617a3babSopenharmony_ci
46617a3babSopenharmony_ci   // 2D
47617a3babSopenharmony_ci   float r20 = g_tTex2df4 . SampleCmp(g_sSamp, float2(0.1, 0.2), 0.75);
48617a3babSopenharmony_ci   float r22 = g_tTex2di4 . SampleCmp(g_sSamp, float2(0.1, 0.2), 0.75);
49617a3babSopenharmony_ci   float r24 = g_tTex2du4 . SampleCmp(g_sSamp, float2(0.1, 0.2), 0.75);
50617a3babSopenharmony_ci
51617a3babSopenharmony_ci   // *** There's no SampleCmp on 3D textures
52617a3babSopenharmony_ci
53617a3babSopenharmony_ci   float r50 = g_tTexcdf4 . SampleCmp(g_sSamp, float3(0.1, 0.2, 0.3), 0.75);
54617a3babSopenharmony_ci   float r52 = g_tTexcdi4 . SampleCmp(g_sSamp, float3(0.1, 0.2, 0.3), 0.75);
55617a3babSopenharmony_ci   float r54 = g_tTexcdu4 . SampleCmp(g_sSamp, float3(0.1, 0.2, 0.3), 0.75);
56617a3babSopenharmony_ci
57617a3babSopenharmony_ci   psout.Color = 1.0;
58617a3babSopenharmony_ci   psout.Depth = 1.0;
59617a3babSopenharmony_ci
60617a3babSopenharmony_ci   return psout;
61617a3babSopenharmony_ci}
62