| struct OS { | |
| SamplerState ss; | |
| float a; | |
| Texture2D tex; | |
| }; | |
| SamplerState gss; | |
| SamplerState gss2; | |
| Texture2D gtex; | |
| float4 osCall(OS s) | |
| { | |
| return s.a * s.tex.Sample(s.ss, float2(0.2, 0.3)); | |
| } | |
| float4 main() : SV_TARGET0 | |
| { | |
| OS os; | |
| os.ss = gss2; | |
| os.ss = gss; | |
| os.tex = gtex; | |
| os.a = 3.0; | |
| // this should give an error | |
| //SamplerState localss; | |
| //localss = gss2; | |
| return osCall(os); | |
| } |