学习教程来自:【技术美术百人计划】图形 1.2.1 向量基础

向量的计算

1.什么是向量

1.1.向量的定义

只有大小和方向的线段,从开始位置指向结束位置

几何意义:位置变化的方向和大小

1.2.向量与标量

只有大小,没有方向

几何意义:大小

1.3.向量与点

既没有大小,也没有方向

几何意义:位置

1.4.零向量

大小为0的向量,没有方向

几何意义:没有发生位移

2.如何计算

2.1.标量和向量的运算

乘法 除法运算

几何意义:将位移加倍(若为标量为负,则先反向再加倍)

2.2.向量的模长

每个分量的平方和再开方

几何意义:位移的长度

2.3.标准化向量

单位向量

几何意义:不关心距离的位移(只关心方向)

2.4.向量与向量的运算

加减

几何意义:2段位移的叠加

2.5.两点之间的距离

从原点出发分别到2点的2个向量,相减结果的模

几何意义:如题

2.6.向量点积

点积、点乘、内积,结果为标量,满足交换律

几何意义:2个向量的相似程度/夹角/一个向量在另一个向量上的投影长度

2个单位向量的点积结果从-1到1,方向完全相反到完全重合

2.7.Lambert光照模型

模拟漫反射

2.8.向量叉积

不满足交换律,满足逆交换律

几何意义:平行四边形面积/得到垂直于2个向量的向量(右手/左手坐标系下方向不同)

作业

向量各种计算的几何意义:见上文中

Lambert和半Lambert

float NdotL = dot(worldLight ,worldNormal);
float NdotL = (dot(worldLight ,worldNormal)+1.0)*0.5;