OpenGL ES系列一--向量和矩阵

本文介绍了OpenGL ES中的向量和矩阵基础知识,包括向量的定义、加减法、乘法(数乘、点乘、叉乘),矩阵的定义、乘法以及常见矩阵变换(缩放、投影、平移)的概念。向量和矩阵在3D图形绘制中起着关键作用,是理解OpenGL ES的基础。
摘要由CSDN通过智能技术生成

OpenGL ES之向量、矩阵

OpenGL ES是一个很强大的库,可以绘制各种酷炫的3D图形,既然涉及到3D图形,那么跟3D数学肯定是脱离不了关系的,在我们正式进行OpenGL ES之前,我们需要先搞清楚一些数学上的东西,这样在你后面进一步学习OpenGL ES的时候才不至于懵逼。主要涉及到的一些数学概念有:

  1. 向量
    • 向量的定义
    • 向量的加法、减法
    • 向量的乘法(数乘、点乘、叉乘)
  2. 矩阵
    • 矩阵的定义
    • 矩阵的乘法(数乘、乘法、向量和矩阵的乘法)
    • 一些常见的矩阵变换:缩放、投影、平移等(含4维齐次坐标的使用)

向量

向量的定义

定义:数学上区分向量(矢量)和标量(数量),标量就是我们平常所用的数字,强调数量值;向量的话其实就是带有方向的标量,常用有向线段表示。向量根据所在的坐标系(平面坐标、3D坐标、4D坐标等),分为2维坐标、3维坐标等,依次类推

向量的大小就是向量的长度(模),长度非负。计算方式为向量各分量的平方之和开平方,比如二维向量二维向量a](C:\Users\cpMark\Desktop\CSDN文章\OPenGL ES\参考图\二维向量a.jpg),那么它的模为![img

​ 向量的方向描述了空间中向量的指向。箭头是向量的末端(向量“结束”于此),箭尾是向量的“开始”

日常生活中很多量都有大小和方向,比如:位移(向前三步,由大小三步和方向向前构成)、速度(我们以50公里每小时的速度向北行驶,由大小50公里每小时和方向北构成),注意位移和速度与距离、速率是完全不同的,前两者为向量,后两者为标量。

一些常用的向量类型:

类型名 定义
法向量 垂直于平面的直线所表示的向量为该平面的法向量。由于空间内有无数个直线垂直于已知平面,因此一个平面都存在无数个法向量
标准化向量(法线) 向量大小为1的向量称为单位向量,单位向量经常也被称作标准化向量或更简单地秤为法线。对于任意非零向量v,都能计算出一个和v方向相同的单位向量,这个过程被称作向量的“标准化”,要标准化向量,将向量除以它的大小(模)即可。(零向量不能标准化)

OpenGL ES在求光照的时候会用到法向量和标准化向量,具体的我们在涉及到光照的知识的地方会说明。

向量的加法和减法

向量加法的运算法则:两个向量相加,将对应的分量相加即可(前提条件:两个向量的维数相同&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值