SPIRV-Cross/shaders-msl/tesc/load-control-point-array-of-matrix.tesc
Hans-Kristian Arntzen 27d6d45671 MSL: Rewrite tessellation_access_chain.
To support loading array of array properly in tessellation, we need a
rewrite of how tessellation access chains are handled.

The major change is to remove the implicit unflatten step inside
access_chain which does not take into account the case where you load
directly from a control point array variable.

We defer unflatten step until OpLoad time instead.
This fixes cases where we load array of {array,matrix,struct}.

Removes the hacky path for MSL access chain index workaround.
2019-10-26 16:10:12 +02:00

13 lines
253 B
GLSL

#version 450
layout(vertices = 4) out;
layout(location = 0) in mat4 vInputs[gl_MaxPatchVertices];
layout(location = 0) out mat4 vOutputs[4];
void main()
{
mat4 tmp[gl_MaxPatchVertices] = vInputs;
vOutputs[gl_InvocationID] = tmp[gl_InvocationID];
}