OpenGL向量、矩阵相关

2020-07-17  本文已影响0人  ugpass

向量

定义:既有大小,又有方向的一个几何对象。

单位向量:不论方向,大小为1的向量

向量大小(长度/模)的计算公式


向量大小计算公式

非单位向量(x, y, z)转化为单位向量


非零单位向量转为单位向量

向量的点乘

向量的叉乘

两个向量\vec{a}\vec{b}叉乘得到的结果仍然是一个向量\vec{c},该向量\vec{c}垂直于两个向量\vec{a}\vec{b}所构成的平面。

矩阵(Matrix)

矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合。可以用一维或二维数组表示,在OpenGL中习惯使用一维数组。

矩阵的运算

单位矩阵

主对角线值为1,其余值为0的矩阵称为单元矩阵

OpenGL矩阵变换

矩阵变换

行矩阵:逐行读取

行矩阵

列矩阵:逐列读取

列矩阵

行矩阵通过矩阵转置后可以得到列矩阵。

在数学中,习惯使用行矩阵来进行运算,此时mpv的顺序为position * m * v * p

在OpenGL中,习惯使用列矩阵来进行运算,此时mpv相乘的顺序为p * v * m * position

上一篇 下一篇

猜你喜欢

热点阅读