mirror of
https://github.com/RPCS3/glslang.git
synced 2024-12-21 10:48:14 +00:00
132d331870
This commit adds support for copying nested hierarchical types of split types. E.g, a struct of a struct containing both user and builtin interstage IO variables. When copying split types, if any subtree does NOT contain builtin interstage IO, we can copy the whole subtree with one assignment, which saves a bunch of AST verbosity for memberwise copies of that subtree.
22 lines
295 B
GLSL
22 lines
295 B
GLSL
|
|
struct PS_IN
|
|
{
|
|
float4 pos : SV_Position;
|
|
};
|
|
|
|
struct GS_OUT
|
|
{
|
|
float4 pos : SV_Position;
|
|
};
|
|
|
|
[maxvertexcount(3)]
|
|
void main(triangle PS_IN i[3], inout TriangleStream <GS_OUT> ts)
|
|
{
|
|
GS_OUT o;
|
|
|
|
for (int x=0; x<3; ++x) {
|
|
o.pos = i[x].pos;
|
|
ts.Append(o);
|
|
}
|
|
}
|