2017-11-06 07:50:15 +03:00
|
|
|
// Test register class offsets for different resource types
|
|
|
|
|
|
|
|
SamplerState s1 : register(s1, space1);
|
|
|
|
SamplerComparisonState s2 : register(s2, space2);
|
|
|
|
|
|
|
|
Texture1D <float4> t1 : register(t1, space1);
|
|
|
|
Texture2D <float4> t2 : register(t2, space1);
|
|
|
|
Texture3D <float4> t3 : register(t1, space2);
|
2018-08-18 07:20:54 +03:00
|
|
|
Texture3D <float4> ts6 : register(t1, space6);
|
2017-11-06 07:50:15 +03:00
|
|
|
StructuredBuffer<float4> t4 : register(t1, space3);
|
|
|
|
|
|
|
|
ByteAddressBuffer t5 : register(t2, space3);
|
|
|
|
Buffer<float4> t6 : register(t3, space3);
|
|
|
|
|
|
|
|
RWTexture1D <float4> u1 : register(u1, space1);
|
|
|
|
RWTexture2D <float4> u2 : register(u2, space2);
|
|
|
|
RWTexture3D <float4> u3 : register(u3, space2);
|
|
|
|
|
|
|
|
RWBuffer <float> u4 : register(u4, space1);
|
|
|
|
RWByteAddressBuffer u5 : register(u4, space2);
|
|
|
|
RWStructuredBuffer<float> u6 : register(u4, space3);
|
|
|
|
AppendStructuredBuffer<float> u7 : register(u4, space4);
|
|
|
|
ConsumeStructuredBuffer<float> u8 : register(u4, space5);
|
|
|
|
|
|
|
|
cbuffer cb : register(b1, space6) {
|
|
|
|
int cb1;
|
|
|
|
};
|
|
|
|
|
|
|
|
tbuffer tb : register(t7) {
|
|
|
|
int tb1;
|
|
|
|
};
|
|
|
|
|
|
|
|
float4 main() : SV_Target0
|
|
|
|
{
|
|
|
|
t1;
|
|
|
|
t2;
|
|
|
|
t3;
|
|
|
|
t4[0];
|
|
|
|
t5.Load(0);
|
|
|
|
t6;
|
|
|
|
|
|
|
|
s1;
|
|
|
|
s2;
|
|
|
|
|
|
|
|
u1;
|
|
|
|
u2;
|
|
|
|
u3;
|
|
|
|
|
|
|
|
u4[0];
|
|
|
|
u5.Load(0);
|
|
|
|
u6[0];
|
|
|
|
u7;
|
|
|
|
u8;
|
|
|
|
|
|
|
|
cb1;
|
|
|
|
tb1;
|
2018-08-18 07:20:54 +03:00
|
|
|
ts6;
|
2017-11-06 07:50:15 +03:00
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|