Closed ArielG-NV closed 3 months ago
Assume the following:
//TEST_INPUT:cbuffer(data=[1.0 2.0 3.0 0.0 4.0 5.0 6.0 0.0 7.0 8.0 9.0 0]):name matrixTestCBuf1 ConstantBuffer<row_major float3x3> matrixTestCBuf1; //TEST_INPUT:cbuffer(data=[1.0 4.0 7.0 0.0 2.0 5.0 8.0 0.0 3.0 6.0 9.0 0.0]):name matrixTestCBuf2 ConstantBuffer<column_major float3x3> matrixTestCBuf2; // struct float3x3{float3[3] // { // float3 data1; // float pad1; // float3 data2; // float pad2; // float3 data3; // float pad3; // } //TEST_INPUT:cbuffer(data=[1.0 2.0 3.0 0.0 4.0 5.0 6.0 0.0]):name NeedsPadding cbuffer NeedsPadding { float3 data1; // float pad1; float3 data2; };
Currently CPP/CUDA/Metal load these as tightly packed (different behavior than HLSL/GLSL/SPIRV), this requires legalization/handling
Closed for-now unless the issue becomes a problem
No actionable item here. Closing.
Assume the following:
Currently CPP/CUDA/Metal load these as tightly packed (different behavior than HLSL/GLSL/SPIRV), this requires legalization/handling