First Commit
This commit is contained in:
47
externals/glslang/Test/hlsl.buffer.frag
vendored
Normal file
47
externals/glslang/Test/hlsl.buffer.frag
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
cbuffer buf1 {
|
||||
float4 v1;
|
||||
}; // extraneous ;
|
||||
|
||||
tbuffer buf2 {
|
||||
float4 v2;
|
||||
}; // extraneous ;
|
||||
|
||||
cbuffer cbufName {
|
||||
float4 v3 : packoffset(c0);
|
||||
int i3 : packoffset(c1.y);
|
||||
}
|
||||
|
||||
tbuffer tbufName : register(t8) {
|
||||
float4 v4 : packoffset(c1);
|
||||
int i4 : packoffset(c3);
|
||||
float f1 : packoffset(c3.w);
|
||||
float f3 : packoffset(c4.x);
|
||||
float f4 : packoffset(c4.y);
|
||||
float f5 : packoffset(c4.z);
|
||||
float f6 : packoffset(c);
|
||||
float f7 : packoffset(c8);
|
||||
float3x4 m1 : packoffset(c7);
|
||||
row_major float3x4 m2 : packoffset(c11);
|
||||
column_major float3x4 m3 : packoffset(c15);
|
||||
float3x4 m4 : packoffset(c19);
|
||||
}
|
||||
|
||||
float foo() // float looks like identifier, but can't be part of tbuffer
|
||||
{
|
||||
return 1.0;
|
||||
}
|
||||
|
||||
struct id {
|
||||
float4 a;
|
||||
};
|
||||
|
||||
cbuffer cbufName2 {
|
||||
float4 v24;
|
||||
}
|
||||
|
||||
id PixelShaderFunction(float4 input : SV_POSITION) : SV_TARGET0 // id looks like id for cbuffer name, but can't be
|
||||
{
|
||||
id ret;
|
||||
ret.a = v24 + (input + v1 + v2 + v3 + v4) * foo();
|
||||
return ret;
|
||||
}
|
||||
Reference in New Issue
Block a user