我最近开始阅读OpenGL Superbible第5版并注意到以下内容:
刚刚采用线性代数这对我来说似乎很奇怪。列向量的大小为4x1,矩阵为4x4,如何将它们相乘?如果向量是行向量而输出是行向量,我同意它是可能的,但是这个吗?
更新:我通过电子邮件发送了作者,他说我是对的。他注意到本书上一版的订单错了,但最终没有在第5版修复。
答案 0 :(得分:5)
我同意:它应该是一个预先乘以单位矩阵的列向量。
如果它是行向量,那么RHS也需要是行向量以使尺寸匹配。
答案 1 :(得分:3)
这不是拼写错误或错误,它是3D图形表达矢量矩阵乘法的常用方法。但从数学上讲,你是对的:左边的矢量应该水平写。但是在3D中,你永远不会看到这一点。
答案 2 :(得分:1)
通过本书所有与矩阵相关的例子,这是一个常见的错误。请参阅LISTING 4.1,标题为“Translate then Rotate”,而on book代码和可执行示例代码均显示“rotate-then-translate”行为。叹息。