GAMES101笔记-01

发布时间 2023-04-13 17:33:30作者: miku今天吃什么

前言:这篇以及未来的一系列随笔是根据b站上的GAMES101现代计算机图形学入门课程所写的笔记,但笔记的篇章并非和课程一一对应。比如这篇对应的是第二课~第三课的内容。并且整理时不一定会将推导过程全部列出,做成只有总结概括的内容也不是没有可能。


 

1.向量叉乘的矩阵表示:

 

 这是向量叉乘后得到的结果

 

 用矩阵表示如图

在这里顺带一提矩阵相乘的计算方式

假设矩阵A是(N*M)的组成(n行m列),矩阵B是(P*Q),当M==P时两矩阵可以相乘(即第一个矩阵的列数等于第二个矩阵行数

相乘得到的矩阵为(N*Q)排列。

如图所示

至于得到矩阵之中的每个数字怎么计算,要看该数字处于结果矩阵的第几行第几列。假设是第n行m列则将第一个矩阵的第一行与第二个矩阵的第m列进行点乘

如上图结果中第一行第一列的9,是由(1,3)与(3,2)点乘获得。

2.向量叉乘在空间中的作用

①判断左右

②判断内外

由于向量叉乘方向可以用右手定则确定,四指方向为第一个向量指向第二个向量,颠倒顺序时得到的向量方向完全相反

因此可以倒过来通过结果向量的方向来判断相乘的两个向量的位置关系。

 

例如该图中假设向量a和b都处于xy平面,假如a×b,得到向量方向为z轴正方向。反之若已知向量b和结果向量方向为z轴正半轴,可以推出向量a在向量b的右边。

判断内外其实同理。

 

 

 判断位置关系,当需要判断的点形成的向量相对来说均在同一侧,即在图形内部,不在同一侧则在外部

3.关于矩阵的一些性质

①矩阵没有交换律,但有结合律和分配率

②矩阵的转置。矩阵转置后行变成列,列变成行

性质:两个矩阵相乘后转置等于颠倒顺序分别转置

 

 

 

③关于逆矩阵

 

逆矩阵定义:当两个矩阵相乘等于单位矩阵,则互为逆矩阵,记作A-1

 

逆矩阵有如下性质:(AB)-1=B-1A-1

 

 和转置矩阵的性质类似。

 

 

 4.二维平面物体的操作

①缩放

 

 

 

 得到矩阵结果为[sx,sy]   实际上是竖着的

②反转

 

 

 

 

 ③切变

 

 

 

 任意在图形内取一点,利用相似知识可以知道x变为x+ay,可以得出矩阵

 

 

 ④旋转

 

 

 

 

方法:将矩阵设成这样的形式

然后代入多个点得出结果

 

 

 ⑤平移

平移为非线性变换,2×2矩阵无法满足其要求,需要引入齐次坐标

 

 

 

 

加入齐次坐标后,其他操作也可以改成类似形式,从上至下分别为缩放,旋转,平移(可以看出原来的2×2相比之前是没有变化的)

 

 

 

 

 

 

 当平移和线性变换同时出现在同一矩阵操作时,先进行线性变换后平移

end.