Represent vector/matrix composition with the ConstructorComposite type.
ConstructorComposite is a slight rework of ConstructorVector;
mechanically, both vector and matrix composition behave the same and
can share the same logic.
The generated code in SPIR-V and Metal still has some tweaks due to
different handling for matrices in these languages, but the SkSL
internal model mimics GLSL's view that vectors and matrices can be
created by lumping together any mix of scalars and vectors.
The backends will continue to adapt this model to their reality.
Commit-Queue: John Stiles <email@example.com>
Auto-Submit: John Stiles <firstname.lastname@example.org>
Reviewed-by: Brian Osman <email@example.com>
25 files changed