Unity Shader入门精要 阅读笔记四

点、矢量和矩阵

在基础的图形学数学中,点、矢量以及矩阵是较为基础的元素。

通常三维世界中最基础的就是点(x,y,z).

矢量可以看成是两点指向的方向。矢量是一种方向,与位置无关。

矩阵是一系列的运算。我们在学习矩阵的时候通常会先学习多元一次方程。矩阵其实就是运算的集合。

点与矢量的基础

这里我主要记录我自己觉得容易忘记的一些知识点。

矢量的加减

通常矢量的运算我们都是在平行四边形中去思考。
矢量相加,是指两个矢量首尾相接,然后从第一个矢量的尾连接第二个矢量的头,形成的新的矢量就是和。例如:

a+b

矢量相减,是指两个矢量尾部相接,b的头部指向a的头部。

ab

矢量的点积

矢量的点积又称为内积。矢量的点积的几何意义为一个矢量在另一个矢量方向上的投影。从几何意义上可以得到,点积其实得到的是一个值。

a⃗ b⃗ =(ax,ay,az)(by,by,by)=axbx+ayby+azbz

另一种表示:

a⃗ b⃗ =a⃗ b⃗ cosθ

矢量的叉乘

叉乘又被称为外积。叉乘的表示相对来说会困难一些,也相对难记:

a⃗ ×b⃗ =(ax,ay,az)×(by,by,bz)=(aybzazby,azbxaxbz,axbyaybx)

叉乘的结果也是一个向量,这个向量是垂直于原有的两个向量,向量的方向由不同坐标系判定。如果是左手坐标系通过左手判定,如果是右手坐标系通过右手判定。
以下面的式子为例:
a⃗ ×b⃗ 

方向判定方法为,四指摊开,方向朝向a向量方向,向b向量进行卷曲,大拇指摊开所指的方向就是结果向量的方向。

矩阵的基础运算

正交矩阵:

MMT=MTM=I

猜你喜欢

转载自blog.csdn.net/u011618339/article/details/78659234