我需要在 C# 中为 3D 引擎创建一个 4x4 矩阵类。我已经看到其他一些引擎将矩阵值存储在单个浮点成员变量/字段中,如下所示:
float m11, m12, m13, m14
float m21, m22, m23, m24
float m31, m32, m33, m34
float m41, m42, m43, m44
但是,我认为将它们存储在二维数组中对于使用矩阵进行转换/计算会更有用:
float[4][4];
我还想到了一个一维数组 - 但它看起来不太自我解释,并且不会给我比第一个选项更有优势:
float[16];
在 C++ 中,我总是使用“union”关键字来同时存储上述所有可能性。但是,C# 似乎没有这个关键字,所以我必须决定要使用哪一个。
应用转换等时存储 4x4 矩阵的最快方法是什么?在考虑可用性时,您会选择哪个选项?