0

是否可以使用四个 FMVECTOR 构建 XMMATRIX ?我从 Frank Luna 的书中汲取了这个想法,并尝试围绕它构建一些东西,但不幸的是,很明显我没有很好地掌握这个概念。这是我写的。好的,我知道这段代码很烂,但我是那些想要学习一切(甚至可能更多)的人之一,所以我尝试了。

XMVECTOR MyArray[4];
XMMATRIX() {}

XMMATRIX MyMatrix(FXMVECTOR MyArray0, FXMVECTOR MyArray1, FXMVECTOR MyArray2, CXMVECTOR My Array3 )
{
    r[0] = MyArray1;  r[1] = MyArray1; r[2] = MyArray1; r[3] = MyArray1;
}

float MyArray1[4] = { 1.0f, 3.0f, 6.0f, 5.0f };
float MyArray2[4] = { 4.0f, 3.0f, 3.0f, 7.0f };
float MyArray3[4] = { 1.0f, 3.0f, 6.0f, 3.0f };
float MyArray4[4] = { 1.0f, 0.0f, 6.0f, 0.0f };
4

1 回答 1

1

如此处所述,您需要一个构造函数。

使用示例:

XMVECTOR vec_array[4] = 
{
    { 1.0f, 3.0f, 6.0f, 5.0f },
    { 4.0f, 3.0f, 3.0f, 7.0f },
    { 1.0f, 3.0f, 6.0f, 3.0f },
    { 1.0f, 0.0f, 6.0f, 0.0f }
}; 

XMMATRIX matrix(vec_array[0], vec_array[1], vec_array[2], vec_array[3]);
于 2020-03-14T18:30:26.013 回答