| struct os { | |
| sampler2D s2D; | |
| }; | |
| struct os2 { | |
| sampler2D s2D; | |
| Texture2D tex; | |
| }; | |
| Texture2D tex; | |
| os s; | |
| os2 s2; | |
| float4 osCall1(os s) | |
| { | |
| return tex.Sample(s.s2D, float2(0.2, 0.3)); | |
| } | |
| float4 osCall2(os s, float2 f2) | |
| { | |
| return tex.Sample(s.s2D, f2); | |
| } | |
| float4 os2Call1(os2 s) | |
| { | |
| return s.tex.Sample(s.s2D, float2(0.2, 0.3)); | |
| } | |
| float4 os2Call2(os2 s, float2 f2) | |
| { | |
| return s.tex.Sample(s.s2D, f2); | |
| } | |
| float4 main() : SV_TARGET0 | |
| { | |
| return osCall1(s) + | |
| osCall2(s, float2(0.2, 0.3)) + | |
| os2Call1(s2) + | |
| os2Call2(s2, float2(0.2, 0.3)); | |
| } |