【问题标题】:How are non-square matrices used in computer graphics?计算机图形学中如何使用非方阵?
【发布时间】:2011-07-08 19:04:07
【问题描述】:

通常,方阵用于变换各个点。您有一个 4D 向量,该向量转换为 1x4 或 4x1 矩阵,该矩阵乘以 4x4 矩阵,无论哪一边工作以创建 4x1 或 1x4 矩阵。这是你的转换点。

但是非方阵有什么用呢?如果将 3x4 矩阵乘以 4x1 向量矩阵,则最终得到 3x1 矩阵;这比你开始的维度少一个。更不用说 3x4 矩阵不具备 4x4 矩阵的优良特性,例如与其他 4x4 矩阵相乘的能力仍然保持相同的维度。

GLSL 支持方阵和非方阵。为什么?

【问题讨论】:

    标签: 3d glsl matrix-multiplication


    【解决方案1】:

    您可以将 4x3 矩阵用于例如蒙皮中的骨骼骨骼变换。这些转换是仿射的,不包括投影,因此您不需要最后一列。

    1x4 向量和 4x3 矩阵相乘的结果是 1x3 向量,在这种特殊情况下,您不需要将它与矩阵相乘。

    将 4x3 矩阵而不是 4x4 传递给 GPU 将为您节省四分之一的带宽。

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 1970-01-01
      • 2017-07-06
      • 2019-01-20
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 2011-08-28
      • 1970-01-01
      相关资源
      最近更新 更多