当前位置: 首页 > news >正文

浅析正交投影矩阵和透视投影矩阵的推导

先上矩阵的内容。在opengl中,分别通过glOrtho函数和glFrustum函数得到正交投影矩阵和透视投影矩阵。

glOrtho 函数描述生成正交投影矩阵。 (、 、 ) 和 (、 、 ) 参数分别指定近剪裁平面上映射到窗口左下角和右上角的点,假定眼睛位于 (0、0、0) 。 far 参数指定远剪裁平面的位置。 zNear 和 zFar 可以是正数或负数。 下图显示了相应的矩阵。

其中

在往NDC坐标系转化时,要求z在近裁剪面位置时,被转换为-1;而在远裁剪面位置时,转换为1

这就不难推导出以上的六个参数。

glFrustum 函数描述生成透视投影矩阵。 (、 、 zNear) 和 (、 、 zNear) 参数分别指定映射到窗口左下角和右上角的近剪裁平面上的点,假设眼睛位于 (0,0,0) 。 zFar 参数指定远距剪切平面的位置。 zNear 和 zFar 都必须为正数。 下图中显示了相应的矩阵。

 

这里一共有六个参数需要推导。其中前四个参数,通过相似三角形的比例关系得出。

参数C和D的推导,也是要求z在近裁剪面位置时,被转换为-1;而在远裁剪面位置时,转换为1。这就可以通过列一个二元一次方程组,求解出来。

参考链接:

glOrtho 函数 (Gl.h) - Win32 apps | Microsoft Learn

glFrustum 函数 (Gl.h) - Win32 apps | Microsoft Learn

若您还有什么疑惑之处,欢迎在下方留言评论!

http://www.lryc.cn/news/472497.html

相关文章:

  • python四舍五入保留两位小数不足补0
  • Mybatis-15.动态SQL-if
  • gb28181-sip注册流程
  • WEBRTC教程:局域网怎么调试,http://172.19.18.101:8080 ,无法访问摄像头和麦克风,请检查权限
  • Apache POI—读写Office格式文件
  • 3162. 优质数对的总数 I
  • (五)Web前端开发进阶2——AJAX
  • 数据结构(java)——数组的构建和插入
  • AI-CNN-验证码识别
  • React 前端框架全面教程:从入门到进阶
  • 重拾CSS,前端样式精读-布局(弹性盒)
  • Python 使用 LSTM 进行情感分析:处理文本序列数据的指南
  • MySQL:INSERT IGNORE 语句的用法
  • java模拟进程调度
  • 大模型AI在教育领域有哪些创业机会?
  • 网页上视频没有提供下载权限怎么办?
  • 【去哪里找开源商城项目】
  • ei会议检索:第二届网络、通信与智能计算国际会议(NCIC 2024)
  • vue添加省市区
  • 运维监控丨16条常用的Kafka看板监控配置与告警规则
  • ECharts饼图,配置标注示例
  • 【大象数据集】大象图像识别 目标检测 机器视觉(含数据集)
  • LN 在 LLMs 中的不同位置 有什么区别么
  • 【代码随想录Day57】图论Part08
  • 记录一次mmpretrain训练数据并转onnx推理
  • shodan5,参数使用,批量查找Mongodb未授权登录,jenkins批量挖掘
  • telnet 密码模式 访问路由器
  • 文心一言 VS 讯飞星火 VS chatgpt (380)-- 算法导论24.4 12题
  • Unity自定义数组在Inspector窗口的显示方式
  • ERC论文阅读(03)--SPCL论文阅读笔记(2024-10-29)