Games101 正交投影矩阵推导

目录

正交投影

投影矩阵推导


正交投影

正交投影不管是远处还是近处,都是直接挤在屏幕上就好,它没有近大远小的效果

首先,把相机放在原点上,往-z方向看,上方向是y;

这样摆放相机的好处是,把z坐标扔掉,得到的结果自然而然就是平面的上的一张图

将z扔掉后,所有的像素都在xy平面上了,不管xy的覆盖范围有多大,都给他移到**-1~1 * -1~1** 的区间,此时就是正交投影的成像结果

投影矩阵推导

首先,如下最左侧定义空间中的一个立方体,需要知道立方体的 左右在x轴上是多少、上下在y轴上是多少、前后在z轴上是多少

然后,视图把这个立方体映射到最右侧的规范立方体的形状,即,不管空间中的是一个什么样的长方体,我都可以把他映射为规范立方体

  1. 把立方体的中心移到坐标原点 (右侧矩阵)
  2. 把xyz的轴分别拉成 -1到1 (左侧矩阵):-r*s=2 , s是缩放的倍数,规范正方体边所占长度是(-1,1),就是2,则缩放倍数 s=2/(1-r)
相关推荐
做cv的小昊12 小时前
【TJU】应用统计学——第五周作业(3.1 假设检验的基本思想、3.2 单个正态总体参数的假设检验)
学习·线性代数·机器学习·数学建模·矩阵·概率论·tju
Hello.Reader13 小时前
为什么学线性代数(一)
线性代数·算法·机器学习
书中玉14 小时前
矩阵行最简形唯一
线性代数·矩阵·行最简形
烛阴14 小时前
Three.js 材质完全入门指南:让你的 3D 物体「活」起来
webgl·three.js
kyle~15 小时前
工程数学---Eigen库(C++唯一标配线性代数库)
开发语言·c++·线性代数
披着羊皮不是狼15 小时前
矩阵乘加速@CPU
线性代数·矩阵
Hello.Reader16 小时前
什么是线性代数(二)
线性代数
郝学胜-神的一滴18 小时前
[简化版 GAMES 101] 计算机图形学 04:二维变换上
c++·算法·unity·godot·图形渲染·unreal engine·cesium
charlie1145141912 天前
通用GUI编程技术——图形渲染实战(二十九)——Direct2D架构与资源体系:GPU加速2D渲染入门
开发语言·c++·学习·架构·图形渲染·win32
star learning white2 天前
线性代数1
线性代数