HLSL: Partially flatten hierarchies, instead of all or nothing.

Fixes #1092.  Allows arrays of opaques to keep arrayness, unless
needed by uniform array flattening.
Can handle assignments of mixed amounts of flattening.
This commit is contained in:
John Kessenich
2017-10-11 14:03:45 -06:00
parent 60e9161100
commit 41aa19953f
8 changed files with 741 additions and 163 deletions

View File

@@ -0,0 +1,16 @@
Texture2D tex[2];
struct Packed {
int a;
Texture2D membTex[2];
int b;
};
float4 main(float4 pos : POSITION) : SV_POSITION
{
Packed packed;
packed.membTex = tex;
return pos;
}