1SamplerState g_samp;
2Texture1D    g_tex;
3
4struct tex_t {
5    SamplerState samp;
6    Texture1D tex;
7    int nonopaque_thing;
8};
9
10struct tex_with_arrays_t {
11    SamplerState samp[2];
12    Texture1D tex[2];
13    int nonopaque_thing;
14};
15
16uniform tex_t g_texdata;
17uniform tex_t g_texdata_array[3];
18uniform tex_with_arrays_t g_texdata_array2[3];
19
20struct PS_OUTPUT { float4 color : SV_Target0; };
21
22void main(out PS_OUTPUT ps_output)
23{
24    ps_output.color =
25        g_texdata.tex.Sample(g_texdata.samp, 0.5) +
26        g_texdata_array[1].tex.Sample(g_texdata_array[1].samp, 0.4) +
27        g_texdata_array2[1].tex[0].Sample(g_texdata_array2[1].samp[0], 0.3);
28}
29