OpenGL基础之三维理论基础

计算机图形学是研究用计算机及其图形设备来输入、表示、变换、运算和输出图形的原理、算法及系统的一门学科。

学习目标

  • 了解OpenGL ES的渲染流程
  • 学习三维图形基本的理论
  • 掌握常用的三维数学方法,向量,四元数,矩阵
  • 掌握模型矩阵,观察矩阵,投影矩阵
  • 根据三维数理实现一套纯软件的三维流程
OpenGL基础之三维理论基础_第1张图片
固定管线.PNG
  • 输入顶点数据
  • 模型矩阵做变换,通过世界坐标或局部坐标做变换
  • 观察矩阵
  • 投影矩阵,远大近小
  • 标准化设备坐标系(NDC)

在计算机中,图像文件主要分为2类:

  • 位图
    由排列成行列的像素点(pixel)组成,能真实的记录图像中每个像素的颜色和特征。
  • 向量图
    图像文件中只记录生成图的算法和图上的某些特征点。比如从(0,0)点到(1,1)点绘制一条直线。当把图像放大之后,图像不会失真。常用的图像存储格式有:PCX、BMP/DIB、GIF、TIFF、JPG/PIC、PCD、TGA、PNG、DDS。
    JPG是有损压缩,PNG是无损压缩,DDS是近几年发展起来的一种压缩纹理格式。

1. 向量

  • 向量求模
    向量的模可以理解为表示向量的直线段的长度。
  • 向量相等
    如果两个向量拥有相同的大小和方向,那么两个向量相等。
  • 向量点乘
    uv = ux * vx + uy * vy + uz * vz
    u
    v = |u| * |v| * cos$
    如果=0,那么相互垂直。
    如果>0,那么向量uv之间的夹角小于90度。
    如果<0,那么向量uv之间的夹角大于90度。
  • 向量叉乘
    叉乘,也叫向量的外积、向量积,叉乘的结果是另外一个向量。u和v进行叉乘后得到另一个向量p,向量p同时垂直于 u,v。
    反对称性: U x V = - V x U
    齐次性:(kU) x V = k ( U x V)
    可加性:U x (V x R) = U x V + U x R

2. 矩阵

  • 矩阵转置
    矩阵的转置指交换矩阵的行和列。
    转置矩阵具有如下特性:矩阵的转置的转置等于原矩阵。


    OpenGL基础之三维理论基础_第2张图片
    转置矩阵的性质
  • 逆矩阵


    OpenGL基础之三维理论基础_第3张图片
    捕获.PNG

参考矩阵的应用

3. 四元数

四元数(quaternion)是由爱尔兰数学家哈密顿于1843年发明的,四元数并不代表现实世界的任何东西,只在数学意义上存在。
四元数本身可视为是在复数基础上的扩展。可称为是超复数。四元数是指由一个实部和三个虚部的复数。

你可能感兴趣的:(OpenGL基础之三维理论基础)