梳理从MVP变换到光栅化的过程

1.梳理从MVP变换到光栅化的过程

相关博客:
1.MVP变换
2.Rasterization(光栅化)

1.1 View/Camera transformation


此例中相机初始位置为(0,0,5)【备注:详见主函数中输入的值】经过 M view M_{\text{view}} Mview将相机移动到原点且相机方向朝向z轴负向,zNear与zFar均为负数
下图仅为示意图

1.2 Model Transformation



此例中将空间中三角形绕z轴旋转,每一次按键A则左旋10度,每一次按键D则右旋10度

1.3 Projection Transformation

Projection Transformation包含两种:
1.Orthographic projection(正交投影)

2.Perspective projection(透视投影)

MVP变换中的投影变换



我们这里用透视投影(Perspective Projection)
透视投影的过程需要将视锥(Frustum)的远处面zFar挤压到与zNear同大小,随后进行正交投影


下图仅为示意图


为什么要挤压?因为要进行透视投影,只有挤压后才能体现出近大远小(小就是因为被挤压了)
挤压过程中zNear平面不变,即近处画面不变,zFar中心点位置不变,zNear与zFar之间的所有物体均被挤压
如果是进行正交投影,则无需挤压,直接进行投影即可

1.4 Viewport Transformation

空间中的物体透视投影后,经过视口变换,将其投影缩放到与屏幕相适应的大小



左侧为透视投影结果,右侧为空间的俯视图


经过视口变换后的效果如下

1.5 Rasterization

如何用像素描述这个图像的投影?就是光栅化的意思,光栅化的本意是drawing onto the screen
三角形可以构成复杂图形,3D物体经过MVP变换到2D平面,随后通过光栅化进行渲染

利用三角形三边的三个向量叉积来判断像素中心点是否在三角形内,如果在三角形内,则对该像素进行采样(也就是所有屏幕中的像素中,属于图形内部的像素被选中),被采样的像素将进行上色


如果直接采样进行光栅化容易产生锯齿等走样问题


为了减轻锯齿问题,我们需要进行抗锯齿
需要的操作是光栅化之前进行模糊处理(滤波或者卷积操作),随后进行光栅化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/633117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python222网站实战(SpringBoot+SpringSecurity+MybatisPlus+thymeleaf+layui)-贴子列表分页显示实现

锋哥原创的SpringbootLayui python222网站实战: python222网站实战课程视频教程(SpringBootPython爬虫实战) ( 火爆连载更新中... )_哔哩哔哩_bilibilipython222网站实战课程视频教程(SpringBootPython爬虫实战) ( 火…

使用 ClassFinal 对SpringBoot jar加密加固并进行机器绑定

写在前面:各位看到此博客的小伙伴,如有不对的地方请及时通过私信我或者评论此博客的方式指出,以免误人子弟。多谢!如果我的博客对你有帮助,欢迎进行评论✏️✏️、点赞👍👍、收藏⭐️⭐️&#…

【正点原子STM32】初识STM32(芯片分类、资料下载、命名规则、选型)

一、STM32是什么 二、STM32芯片分类 三、STM32命名规则 四、STM32选型 五、总结 一、STM32是什么 STM32是STMicroelectronics(意法半导体)公司推出的一系列32位的嵌入式系统微控制器(Microcontroller Unit,MCU)产品。…

网络安全 | 苹果承认 GPU 安全漏洞存在,iPhone 12、M2 MacBook Air 等受影响

1 月 17 日消息,苹果公司确认了近期出现的有关 Apple GPU 存在安全漏洞的报告,并承认 iPhone 12 和 M2 MacBook Air 受影响。 该漏洞可能使攻击者窃取由芯片处理的数据,包括与 ChatGPT 的对话内容等隐私信息。 安全研究人员发现,…

策略模式在工作中的运用

前言 在不同的场景下,执行不同的业务逻辑,在日常工作中是很寻常的事情。比如,订阅系统。在收到阿里云的回调事件、与收到AWS的回调事件,无论是收到的参数,还是执行的逻辑都可能是不同的。为了避免,每次新增…

零售的数字化转型,利用AWS云服务资源如何操作?

国内市场趋于饱满,各行各业的发展接近瓶颈,就连零售行业都竞争激烈,随处可见的零售小店也预示着需要投入大量的人力,而且由于消费者的行为和预期已经发生了根本性变化,这迫使零售商不得不加速整个价值链的数字化转型&a…

Java中List接口两个实现,ArrayList类和LinkedList类的常用方法(一)

List接口 要了解List接口,就不得不说起Java的集合框架。 (该图来自菜鸟教程) Collection接口和Map接口 Java 集合框架主要包括两种类型的容器,集合Collection和图Map。 Collection接口代表了单列集合,它包含了一组…

1月下半笔记(个人向)

最近才开始看d2l(这种东西早该在两年前看的,拖到现在了) 为了做项目还得学一手OpenGL(被windows安装GLFW逼疯了) 1.15 打完ICPC EC final回来,也许可以出一篇博客写下简单的题解。 对蛋白质相似空间子结…

如何获取一个德国容器

1.注册discord账号 discord注册网址:https://discord.com/ 下面是容器的discord邀请链接 https://discord.com/Discord邀请链接:https://discord.com/invite/jVMSWrchC4 2.进入discord群聊点击link 在点击网址,这个网址每星期都会变就是图…

Docker容器添加映射端口

方式一 简单粗暴(需要等一段时间) 直接给现在容器停了(当然你要不想停也可以,只是打包会慢一点,当然我是没出意外,如果你怕出现特殊情况,那就先把容器停了),然后把这个容…

C语言总结十三:程序环境和预处理详细总结

了解程序的运行环境可以让我们更加清楚的程序的底层运行的每一个步骤和过程,做到心中有数,预处理阶段是在预编译阶段完成,掌握常用的预处理命令语法,可以让我们正确的使用预处理命令,从而提高代码的开发能力和阅读别人…

图像处理中,采用极线约束准则来约束特征点匹配搜索空间,理论上在极线上进行搜索。这里的极线是什么线,怎么定义的?基本矩阵F和本质矩阵E有什么区别?

问题描述:图像处理中,采用极线约束准则来约束特征点匹配搜索空间,理论上在极线上进行搜索。这里的极线是什么线,怎么定义的?基本矩阵F和本质矩阵E有什么区别? 问题1解答: 极线是通过极线几何学…

qt-c++多窗口编程

1、QMessageBox 消息对话框 QMessageBox继承自QDialog,显示一个模态对话框。用于用户前台信息通知或询问用户问题,并且接收问题答案。 QDialog再Qt源码中,派生类往往都是一些在特定场合下使用的预设好的对话框窗口。这些窗口无需创建对象&…

蓝凌EIS智慧协同平台frm_form_upload.aspx接口存在任意文件上传漏洞

@[toc] 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 1. 蓝凌EIS智慧协同平台frm_form_upload.aspx接…

C#winform上位机开发学习笔记2-串口助手的中文支持功能添加

分为两步: 1.串口接收支持中文显示 1.1.在软件初始化时写入此代码以支持汉字显示 //串口接收支持中文显示serialPort1.Encoding Encoding.GetEncoding("GB2312"); //串口1的解码支持GB2312汉字 2.串口发送支持中文输出 //支持中文输出Encoding Chine…

OpenAI 公布2024选举虚假信息打击计划

据统计,2024 年预计将有 50 多个国家举行大选,虚假信息的威胁成为人们关注的焦点。 人工智能聊天机器人 ChatGPT 和图像生成器 DALL-E 的开发商 OpenAI 近日宣布了一项新的措施,以防止在今年大选之前再次出现虚假信息滥用和误导事件。 本周…

域环境权限提升

Windows系统配置错误 在Windows系统中,攻击者通常会通过系统内核溢出漏来提权,但是如果碰到无法通过系统内核溢出漏洞法国提取所在服务器权限的情况,就会系统中的配置错误来提权。Windows系统中常见哦欸之错误包括管理员凭证配置错误&#x…

思绪记忆:伦敦金是以美元计价的黄金!

伦敦金是以美元计价的黄金衍生投资品种,是一种交易网络遍及各个主要市场的黄金保证金交易方式。目前投资者通过香港到伦敦金平台入市,只需要付出2%的保证金,就可以拥有一手100盎司、价值20多万的标准化黄金合约的交易权益,无论在涨…

ChatGPT Plus续费充值,到账延迟,如何申诉?

ChatGPT Plus充值总是到账延迟比较严重,一般多是通过充值链接代充值遇到,如果是账号登陆充值,是即时到账。但是有的客户不愿意提供账号密码,遇到延迟到账的情况如何解决呢?客户可按下面操作申诉,可快速到账…

npm pnpm yarn 报错或常见问题处理集锦

各种卡死,报错问题处理汇总 1. npm 安装 卡死了怎么办,npm # 切换源 npm config set registry https://registry.npmmirror.com # 查看源 npm config get registry2. pnpm安装 卡死了怎么办 方法1:切换源 npx pnpm config set registry h…