summaryrefslogtreecommitdiffstats
path: root/tests/language-feature/types/matrix-layout-uniform.slang
blob: ed72ccdca850bc261697eff9c060e82e04584a6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//TEST:SIMPLE(filecheck=HLSL): -target hlsl -profile vs_6_0 -entry Main

// HLSL: #pragma pack_matrix(column_major)
// HLSL-NOT: row_major float4x4 worldToClip
// HLSL: row_major float4x4 instanceMeshToWorld

[shader("vertex")]
void Main(
    uniform column_major float4x4 worldToClip,
    out float4 SV_Position : SV_Position,
    in row_major float4x4 instanceMeshToWorld : instanceMeshToWorld,
    in float3 vertexPositionInMesh : vertexPositionInMesh
)
{
    SV_Position = mul(
        mul(worldToClip, instanceMeshToWorld),
        float4(vertexPositionInMesh, 1.f),
    );
}