矩阵类型的转换矩阵乘法,C ++

时间:2012-05-13 23:11:02

标签: c++ function pointers matrix multiplication

理论上,让我们假设我们要对3D均匀(4x4)变换矩阵(平移,旋转,缩放)的每个不同组合进行硬编码矩阵乘法,然后对每个可能的结果进行硬编码(平移 - 旋转,平移缩放,缩放 - 旋转)......

假设我们要处理矩阵乘法,每个矩阵类型组合使用不同的函数,其中每个矩阵都有一个额外的变量(类型),并且在运行时确定要使用的特定函数(使用函数指针数组) )。如果我们应用这种矩阵乘法,理论上它可能比基本的标准4x4齐次矩阵乘法(它仍然比通用的4x4矩阵乘法更快)更快吗?

我现在正在这样做,它的编码有点恶劣。我将在最后对标准矩阵乘法进行测试,并比较结果。我只是想看看其他人认为结果可能是什么。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我认为更好的想法是仅存储对象的位置和方向而不是整个矩阵。您只需在所有转换后计算用于渲染目的的矩阵。通过添加平移(用于位置)和乘以四元数(用于方向)来完成转换。