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

温州自助模板建站买国外空间哪个网站好

温州自助模板建站,买国外空间哪个网站好,中国旅游网站模板,广州市政务中心官网一、问题提出 在GAMES101-Lecture4 Transformation Matrices 一节中#xff0c;闫老师介绍了正交投影和透视投影。 在讲透视投影变换矩阵 M p e r s p → o r t h o M_{persp→ortho} Mpersp→ortho​时#xff0c;同学们对矩阵中的z分量是变化的还是不变的有很多争论。即下…一、问题提出 在GAMES101-Lecture4 Transformation Matrices 一节中闫老师介绍了正交投影和透视投影。 在讲透视投影变换矩阵 M p e r s p → o r t h o M_{persp→ortho} Mpersp→ortho​时同学们对矩阵中的z分量是变化的还是不变的有很多争论。即下图中z分量经过投影变换后的z底是保持不变依旧等于z还是unknown大家有不同的看法。基于查阅的资料我将在本文中谈一下自己对于这个问题的理解并对投影变换矩阵的计算公式进行解释。 二、投影变换 1. 正交投影 Orthographic Projection (1). 正交投影目标 将指定立方体内部的点映射变换到正则立方体canonical cube 内。正则立方体是一个中心点在原点(x,y,z)三个分量都在[-1,1]范围内的正方体。 如将下图所示左侧立方体内部的点先经过平移Translate再经过放缩Scale变换后即可投影到正则立方体内。 (2). 正交投影矩阵 M o r t h o M_{ortho} Mortho​ 正交投影矩阵可以由平移矩阵和放缩矩阵相乘得到 2. 透视投影 (1). 透视投影目标 将视体内部的点映射变换到**正则立方体canonical cube**内。视体 通常是一个 方平截头体可由fov, aspect_ratio, zNear和zFar这几个参数确定。 如下图所示 (2). 透视投影步骤 前面已经简单介绍过正交投影了正交投影相对简单只要进行平移放缩两次变换即可得到。透视投影 相对复杂 透视投影包含两步 将视体变换为立方体 First “squish” the frustum into a cuboid (n - n, f - f) ( M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho) 进行正交投影将立方体变换到正则立方体Do orthographic projection ( M o r t h o M_{ortho} Mortho​) 为什么不直接使用平移放缩非仿射变换 求得透视投影矩阵而是需要先将透视投影转为立方体再进行一次正交投影这两步这两步称之为透视规范化 这是因为 规范化使得只需要一个流水线体系就可以进行透视投影和正交投影尽可能位于四维齐次空间中以便保持隐藏面消除和明暗处理所需要的三维信息。透视投影的第一步将视体转到立方体依旧保持各点的z分量信息便于之后进行深度处理等操作简化了裁剪的操作。第一步转为立方体后由于立方体的边都与世界坐标系的x,y,z轴平行因此可以方便地裁剪掉立方体外的点 (3). 透视投影矩阵 在计算透视投影矩阵之前需要明确一点目标投影矩阵M必须是一个固定的矩阵针对视体内的任何一点都使用相同的一个矩阵条件(1)。 我们称第一步中从视体变换到立方体的矩阵 M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho为透视规范化矩阵。 对于空间内的点(x,y,z)这里的x,y,z是变量因为空间需要进行投影变换的点不只一个其变换后的点为(x,y,z)。 其中 x ′ n z x , y ′ n z y , z ′ ? x\frac{n}{z}x, y\frac{n}{z}y, z? x′zn​x,y′zn​y,z′? a. 假设令z不变 即 x ′ n z x , y ′ n z y , z ′ z x\frac{n}{z}x, y\frac{n}{z}y, zz x′zn​x,y′zn​y,z′z 我们可以逆向算出对应的透视规范化矩阵 M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho M p e r s p → o r t h o ( n / z 0 0 0 0 n / z 0 0 0 0 1 0 0 0 0 1 ) M{persp→ortho} \begin{pmatrix} n/z 0 0 0 \\ 0 n/z 0 0 \\ 0 0 1 0\\ 0 0 0 1 \end{pmatrix} Mpersp→ortho ​n/z000​0n/z00​0010​0001​ ​ 矩阵中nzNear是一个常数然而矩阵中的z是一个变量即n/z中的z对于视体中的每一个不同的点都需要一个特定的z值这并不满足条件(1)不是我们想要的我们想要一个固定的、不随目标点变化的矩阵。 b. 假设令z改变 根据a.中的分析可以得出假如令zz那么对于视体中的每个点都需要一个透视规范化矩阵M不能满足条件(1)。 因此我们需要令透视正则变换后的各点z值发生变化以消除透视规范化矩阵M中的变量z。 一个简单的方式是我们先假设此时不知道z等于什么并令x,y和齐次坐标中的w都乘以z。那么 透视规范化矩阵 M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho 可以写为 M p e r s p → o r t h o ( n 0 0 0 0 n 0 0 ? ? A B 0 0 1 0 ) M{persp→ortho} \begin{pmatrix} n 0 0 0 \\ 0 n 0 0 \\ ? ? A B\\ 0 0 1 0 \end{pmatrix} Mpersp→ortho ​n0?0​0n?0​00A1​00B0​ ​ 另外由于在投影变换后还需要进行阴影遮挡判断、隐藏面消除和明暗处理等操作因此我们需要保证原始空间中z值小的点在投影正则化变换后的z值依旧小原始空间中z值大的点在投影正则化变换后的z值依旧大条件(2)。 条件(2)也说明z只能跟原始点齐次坐标中的z和w相关跟x,y无关因此可以得到那么透视规范化矩阵 M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho 可以写为 M p e r s p → o r t h o ( n 0 0 0 0 n 0 0 0 0 A B 0 0 1 0 ) M{persp→ortho} \begin{pmatrix} n 0 0 0 \\ 0 n 0 0 \\ 0 0 A B\\ 0 0 1 0 \end{pmatrix} Mpersp→ortho ​n000​0n00​00A1​00B0​ ​ 除此以外我们还需要令原来在zzNear平面上的点经过变换后依旧在zzNear平面上原来在zzFar平面上的点依旧在zzFar平面上。这是因为我们需要保证 边界上的点变换后依旧在边界上条件(3)。 假如不能保证满足条件(3)那么在经过投影正则化变化后有可能原来在zFar外面的点在变换后到了立方体内了原本 视体 外需要被裁剪掉的点变换到了立方体内这可能导致裁剪错误。 因此根据条件(3)可以得到下面两个公式 ( 0 0 A B ) ∗ ( x y n 1 ) n 2 (0\ 0\ A\ B) * \begin{pmatrix} x \\ y \\ n \\ 1 \end{pmatrix} n^2 (0 0 A B)∗ ​xyn1​ ​n2 同时 ( 0 0 A B ) ∗ ( x y f 1 ) f 2 (0\ 0\ A\ B) * \begin{pmatrix} x \\ y \\ f \\ 1 \end{pmatrix} f^2 (0 0 A B)∗ ​xyf1​ ​f2 根据这两个公式即可求得 A n f , B − n f Anf, B-nf Anf,B−nf 这就是投影变换中 M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho的由来。 3. 总结 投影变换的目标是根据给出的 视体 参数fov, aspect_ratio, zNear, zFar等参数计算得到一个投影变换矩阵M这个矩阵需要满足三个条件 条件(1)这个矩阵是唯一固定的即这个矩阵中的元素值只跟视体相关跟视体中点的坐标无关条件(2)经过变换后必须保证各个点的z值相对关系不变即假如点a的z值大于点b的z值那么经过变换点a的z依旧大于点b变换后的z。那么z不能与(x,y,z,w)中的x,y相关只能由z,w确定条件(3)视体边界面zzNear平面和zzFar平面上点的经过变换后依旧在立方体边界面上 为了满足条件(1)z不能等于z除了zzNear和zzFar平面上的点。 为了满足条件(2) M p e r s p → o r t h o M{persp→ortho} Mpersp→ortho第三行 ( ? ? A B ) (?\ ?\ A\ B) (? ? A B) 前两个元素需要等于0。 为了满足条件(3) A n f , B − n f Anf, B-nf Anf,B−nf。 三、参考 1.计算机图形学第六章观察-黄章进-中国科学技术大学 2.GAMES101-Lecture 4:Transformation Matrices
http://wiki.neutronadmin.com/news/211622/

相关文章:

  • 网站有哪些平台艺术设计与制作
  • 企业建网站需要什么企业官网建设费用
  • 贵州省建设厅网站查山西seo优化
  • 青龙建站教程自学网dede 网站地图模板htm
  • 青岛手机建站多少钱wordpress新建文章页面
  • 织梦商城网站模板河北邢台特产
  • 创新的做网站哪里查网站备案信息
  • 聊城做网站的公司咨询wordpress frontopen2
  • h5响应式网站模板网站开发相关外文书籍
  • 什么网站做蔬菜生鲜比较好怎么注册公司公众号
  • 网站建设沛宣宿州推广公司
  • 做django后台网站做网站中山
  • 网站 关键词 怎么改数字媒体艺术网站建设
  • 百度site app网站添加到网站首页源文件中的代码是哪些?南宁网络推广平台有哪些
  • 淘宝客cms网站模板下载企业管理信息系统模式
  • 专题研究网站建设工作动态东莞市南城区
  • 个性化的个人网站简易网站 动态内容加速
  • 自主建站是什么意思百度官方网站入口
  • 刷赞抖音推广网站企业网站建站意义
  • h5营销型网站创立网站
  • 大连做网站企业国外代理服务器免费
  • 做电影网站需要什么条件自己做网站怎么赚钱
  • 国外网站谷歌seo推广中国建设工程项目网
  • 西安手机网站建设公司wordpress 金融 模板下载
  • 进下加强新闻宣传网站建设做购物网站公司
  • 影响网站速度吗网站建设每年有维护费吗
  • 做网站多少钱?wordpress hide title plugin
  • 怎样做类似淘宝网的网站网站开发使用哪种工具好
  • 正版素材网站连云港关键字优化案例
  • 建设厅投诉网站首页住房和城乡建设部监理工程师网站