美文网首页
OpenGL 变换

OpenGL 变换

作者: Joe_Game | 来源:发表于2019-03-16 21:17 被阅读0次

1.向量:指几何关系,可以描述出具体的三维空间特征
2.矩阵:指代数,是加速解决向量问题的工具。矩阵能解决的问题很多,三维向量问题只是他能轻松解决的一种
3.向量和一维矩阵的+、-、*、/都差不多(相同之处)

  • 矩阵的乘法,标量要写在前面;向量的乘法,标量要写在后面
  • 向量与向量的加减(等同一维矩阵与一维矩阵的加减)
    4.向量与矩阵不同之处
  • 向量与向量的乘法=>Dot/Cross(点乘/叉乘)
    1)点乘:算投影
    2)叉乘:(左/右)手坐标空间下(左/右)手旋转的方向
  • 矩阵与矩阵的乘法 =>矩阵行列乘法
  • 向量与矩阵的乘法 =>把向量看成一维矩阵(列为主的矩阵:column matrix)
  • 例外:GLSL的vec4 * vec4是逐元乘法(componet wise)(数学上没有,GLSL特定的运算)
    5.单位矩阵:单位矩阵是一个除了对角线以外都是0的N×N矩阵。



    单位矩阵与向量相乘后结果是这个向量,保持不变
    6.缩放矩阵
    分别在S1,S2,S3的位置写上对于x,y,z位置的缩放系数


7.位移矩阵
分别在TX,TY,TZ的位置写上要移动的值



8.齐次坐标:向量的w分量也叫做齐次坐标。

  • 齐次坐标允许我们在3D向量上进行位移。
  • 如果齐次坐标是0,则是方向向量
  • 如果齐次坐标是1,则是位移向量
    9.旋转矩阵
  • 弧度转角度:角度 = 弧度 * (180.0f / PI)
  • 角度转弧度:弧度 = 角度 * (PI / 180.0f)
  • PI约等于3.14159265359
  • 旋转矩阵在3D空间中每个单位轴都有不同定义,旋转角度用θ表示:




  • 万向节死锁:当最外侧的轴和最内侧的轴重叠,中间的轴会卡住。
  • 避免万向节死锁的真正解决方案是使用四元数

相关文章

  • OpenGL基础变换

    OpenGL ⾥的基础变换 OpenGL中涉及的基础变化主要有以下5种: 变换解释视图变换指定观察者位置模型变换在...

  • 初探计算机图形编程技术之OpenGL编程变换的秘密

    变换的流程 变换流程对应的OpenGL函数:对应的OpenGL函数下面详细的介绍下各个过程: 几何变换 平移:平移...

  • OpenGL 变换

    1.向量:指几何关系,可以描述出具体的三维空间特征2.矩阵:指代数,是加速解决向量问题的工具。矩阵能解决的问题很多...

  • OpenGL-矩阵压栈出栈浅析

    OpenGL绘制图形需要经过变化才能达到用户目的,而变换是通过矩阵进行操作的。 OpenGL一般通过视图变换、模型...

  • OpenGL-18-变换与矩阵堆栈

    一、变换 1、OpenGL中的变换 2、视图变换 视图变换是应⽤到场景中的第⼀种变换, 它⽤来确定场景中的有利位置...

  • OpenGL坐标系与几何变换

    title: OpenGL坐标系date: 2015-3-14tags: OpenGL 坐标系统 想要弄懂几何变换...

  • OpenGL基础变换

    1. 视觉坐标 视觉可以理解为屏幕坐标。是一个虚拟的固定的坐标系。 2. 视图变换 视图变化是当观察者移动位置时视...

  • OpenGL基础变换

    本章的主要目的是通过修改键盘是的上下左右键,来旋转点、线、三角形,观察形状的变化。 ——视角不动,物体动openg...

  • OpenGL基础变换

    1.理解变换 变换应用视图指定观察者或照相机的位置模型在场景中移动物体模型视图描述视图和模型变换的二元性投影改变视...

  • OpenGL 矩阵变换

    视图变换 视图变换是指定观察者的位置,是应用到场景中的第一种变换,它用来确定场景中的有利位置。 在默认情况下,透视...

网友评论

      本文标题:OpenGL 变换

      本文链接:https://www.haomeiwen.com/subject/ywnsmqtx.html