oh well, was more simple but not obvious. you only put 3 instances of the struct into the buffer from VL but the quad has 4 vertices. so when the SV_VertexID gives 3 you read only zeroes into the CustomVertex which gives the weird behavior.
but still the problem of transposing the matrix exists. I've now put it in the shader code, but you can also do that when serializing the struct in VL. this is up to you and depends on whether GPU or CPU has more resources to spare. or when you have the same matrix for all do it once before you put it into the struct in VL. in the case of this test patch once in vvvv.
Dynamic Raw Buffer Test Matrix.zip (15.4 KB)