【MVP矩阵】裁剪空间、NDC空间、屏幕空间

这篇具有很好参考价值的文章主要介绍了【MVP矩阵】裁剪空间、NDC空间、屏幕空间。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

裁剪空间概述

裁剪空间是一个顶点乘以MVP矩阵之后所在的空间Vertex Shader的输出就是在裁剪空间上(划重点)

NDC空间概述

接上面,由GPU自己做透视除法将顶点转到NDC空间

两者的转换

透视除法将Clip Space顶点的4个分量都除以w分量,就从Clip Space转换到了NDC了。

而NDC是一个长宽高取值范围为[-1,1]的立方体,超过这个范围的顶点,会被GPU剪裁。
从裁剪空间到屏幕空间,图形学,矩阵,线性代数
从裁剪空间到屏幕空间,图形学,矩阵,线性代数

屏幕空间

Vertex Shader的输出在Clip Space,那Fragment Shader的输入在什么空间?不是NDC,而是屏幕空间Screen Space。

我们前面说到Vertex Shader的输出在Clip Space,接着GPU会做透视除法变到NDC。这之后GPU还有一步,应用视口变换,转换到Window Space(Screen Space),输入给Fragment Shader:
坐标系转换流程:
(Vertex Shader MVP) => Clip Space => (透视除法(GPU自己完成)) => NDC => (视口变换(GPU自己完成)) => Window Space => (Fragment Shader)

前面提到了Fragment Shader的输入是经过视口变换后的坐标,Shader中访问的方法是:OpenGL中通过gl_FragCoord来访问

此输入参数的xy分量表示Screen Space的坐标,z表示写入到深度缓冲中的值,那么w分量表示什么呢?OpenGL中gl_FragCoord来说,存的是1/w

备注

从裁剪空间到屏幕空间,图形学,矩阵,线性代数

参考

https://sites.cs.ucsb.edu/~lingqi/teaching/games101.htm文章来源地址https://www.toymoban.com/news/detail-822186.html

到了这里,关于【MVP矩阵】裁剪空间、NDC空间、屏幕空间的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器学习-线性代数-3-矩阵与空间映射

    一个 m × n m times n m × n 的大小矩阵,直观上看是 m × n m times n m × n 的数字按矩阵排列。 从向量的角度看,看做是 n n n 个 m m m 维列向量从左到右的排列,也可以看做 m m m 个 n n n 维行向量从上到下的叠放。 方阵:行数等于列数 对称矩阵:原矩阵与其转置矩阵相等: A = A

    2024年02月11日
    浏览(36)
  • 线性代数本质系列(二)矩阵乘法与复合线性变换,行列式,三维空间线性变换

    本系列文章将从下面不同角度解析线性代数的本质,本文是本系列第二篇 向量究竟是什么? 向量的线性组合,基与线性相关 矩阵与线性相关 矩阵乘法与复合线性变换 三维空间中的线性变换 行列式 逆矩阵,列空间,秩与零空间 克莱姆法则 非方阵 点积与对偶性 叉积 以线性

    2024年02月02日
    浏览(39)
  • 线性代数拾遗(6)—— 向量空间投影与投影矩阵

    参考:麻省理工线性代数 阅读本文前请先了解矩阵四个基本子空间,参考:线性代数拾遗(5) —— 矩阵的四个基本子空间 考察二维平面投影,如下将向量 b pmb{b} b 投影到向量 a pmb{a} a 方向,得到 a pmb{a} a 的子空间中的向量 p pmb{p} p ,假设是 a pmb{a} a 的 x x x 倍 如图可见

    2024年02月07日
    浏览(39)
  • 【机器学习线性代数】03 再论矩阵:空间映射关系的描述

    目录 1.利用矩阵表示空间映射 2.矮胖矩阵对空间的降维压缩 2.1.空间降维的原理 2.2.实

    2024年03月13日
    浏览(30)
  • 线性代数:为什么所有3x3对称矩阵构成的向量空间是6维的?(mit第11讲中的疑问)

    对应mit线性代数第11讲矩阵空间,秩1矩阵,小世界图第6-7分钟的讲解问题:3x3对称矩阵构成的向量空间为什么是6维的 看了一些资料,发现这个国外的大哥讲得清楚 https://math.stackexchange.com/questions/2813446/what-is-the-dimension-of-the-vector-space-consisting-of-all-3-by-3-symmetric-mat 转成中文后如

    2024年02月03日
    浏览(38)
  • 矩阵分解是计算机科学中的一个重要研究领域,涉及到向量空间理论、线性代数、密码学等领域。以下是100篇热门博客文

    作者:禅与计算机程序设计艺术 矩阵分解是计算机科学中的一个重要研究领域,涉及到向量空间理论、线性代数、密码学等领域。在机器学习和深度学习等领域中,矩阵分解被广泛应用。本文将介绍矩阵分解的相关原理、实现步骤以及应用示例。 2.1 基本概念解释 矩阵分解是

    2024年02月15日
    浏览(40)
  • 线性代数(五) 线性空间

    《线性代数(三) 线性方程组向量空间》我通过解线性方程组的方式去理解线性空间。此章从另一个角度去理解 大家较熟悉的:平面直角坐标系是最常见的二维空间 空间由无穷多个坐标点组成 每个坐标点就是一个向量 反过来,也可说:2维空间,是由无穷多个2维向量构成 同样

    2024年02月11日
    浏览(36)
  • 线性代数|证明:线性空间的基本性质

    性质 1 零向量是唯一的。 证明 设 0 1 , 0 2 boldsymbol{0}_1, boldsymbol{0}_2 0 1 ​ , 0 2 ​ 是线性空间 V V V 中的两个零向量,即对任何 α ∈ V boldsymbol{alpha} in V α ∈ V ,有 α + 0 1 = α α + 0 2 = α begin{align*} boldsymbol{alpha} + boldsymbol{0}_1 = boldsymbol{alpha} tag{1} \\\\ boldsymbol{alpha} + bold

    2024年02月07日
    浏览(34)
  • 线性代数|线性空间的定义与性质

    定义 1 设 V V V 是一个非空集合, R R R 为实数域。如果在 V V V 中定义了一个 加法 ,即对于任意两个元素 α , β ∈ V boldsymbol{alpha}, boldsymbol{beta} in V α , β ∈ V ,总有唯一的一个元素 γ ∈ V boldsymbol{gamma} in V γ ∈ V 与之对应,称为 α boldsymbol{alpha} α 与 β boldsymbol{beta

    2024年02月07日
    浏览(37)
  • 线性代数(三) 线性方程组&向量空间

    如何利用行列式,矩阵求解线性方程组。 用矩阵方程表示 齐次线性方程组:Ax=0; 非齐次线性方程组:Ax=b. 可以理解 齐次线性方程组 是特殊的 非齐次线性方程组 如何判断线性方程组的解 其中R(A)表示矩阵A的秩 B表示A的增广矩阵 n表示末知数个数 增广矩阵 矩阵的秩 秩r= 未知

    2024年02月13日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包