其中 表示向量 的长度。通过在方程中添加 ,可以很容易地将 其扩展到 3D。
I will give you \$2 if you can solve
转变#
我们现在知道如何创建物体,给它们着色,或者用纹理赋予它们精细的外观,但它们仍然不够有趣,因为它们都是静态物体。我们可以尝试通过改变它们的顶点并在每一帧重新配置它们的缓冲区来让它们动起来,但这很麻烦,而且会消耗大量的处理能力。其实有更好的方法来变换物体,那就是使用(多个)矩阵对象。但这并不意味着我们要讨论功夫和庞大的数字人工世界。
矩阵是非常强大的数学结构,乍一看似乎令人生畏,但一旦你熟悉了它们,就会发现它们非常有用。在讨论矩阵时,我们需要稍微了解一些数学知识,对于数学基础较好的读者,我还会提供一些额外的阅读资源。
然而,要充分理解变换,我们首先需要深入研究向量,然后再讨论矩阵。本章的重点是为你提供一些我们后续会用到的基本数学知识。如果这些内容比较难懂,请尽量理解它们,并在需要时再回到本章复习相关概念。
向量#
从最基本的定义来看,向量就是方向,仅此而已。向量具有方向和大小(也称为强度或长度)。你可以把向量想象成藏宝图上的指示:“向左走10步,然后向北走3步,再向右走5步”;这里,“向左”是方向,“10步”是向量的大小。因此,藏宝图上的指示包含了3个向量。向量可以是任意维度,但我们通常处理的是2到4维的向量。二维向量表示平面上的一个方向(想想二维图形),三维向量可以表示三维空间中的任何方向。
下面你会看到三个向量,每个向量在二维图中用 (x,y) 表示为箭头。由于二维(而非三维)表示向量更直观,你可以将这些二维向量视为 z 坐标为 0 的三维向量。由于向量表示方向,向量的原点不会改变其值。在下面的图中我们可以看到,向量 v¯ 和 w¯ 即使原点不同,它们的值也相等:




