Files

42 lines
886 B
HLSL
Raw Permalink Normal View History

/*
Compile command:
dxc.exe -T vs_6_0 -spirv -E Test_VS -Fo rocketz.spv rocketz.hlsl
*/
struct S_cbPerObjectBones {
float4 v4Bones[4095];
};
shared cbuffer _cbPerObjectBones : register(b4)
{
S_cbPerObjectBones cbPerObjectBones;
};
struct v2f {
float4 HPosition : SV_POSITION;
float4 Position : POSITION;
};
struct a2v_StandardWeighted {
float4 Position : POSITION0;
int4 Indices : BLENDINDICES;
};
float3x4 FailFunc(int4 i, float4 v4Bones[4095])
{
float4 mRow1 = v4Bones[i.x + 0];
return float3x4(mRow1, mRow1, mRow1);
}
v2f Test_VS(a2v_StandardWeighted input)
{
v2f OUT = (v2f)0;
float4 inputPosition = float4(input.Position.xyz, 1);
int4 i = input.Indices;
float3x4 mMatrix = FailFunc(i, cbPerObjectBones.v4Bones);
float4 v4Position = float4(mul(mMatrix, inputPosition), 1);
OUT.Position = v4Position;
return OUT;
}