(笔记) RealTimeRender[实时渲染] C2
@author: 白袍小道
@来源:RealTime Render
@建议书籍:龙书、RealTimeR第四版、GPUGem和PRO
(来源:暗影不解释)
引点
这一章关注的管线中的管道功能,而非实现。
(这里开头一句话非常有意思:链条的坚固程度取决于它最薄弱的环节。切记,嘿嘿)
注点
1、视椎体裁剪,需要在装配之前(或者构建顶点缓冲区前)
2、基础管道图
说明:
管道的处理并行或串行的,管道的数据是串行的,流水线(货物一个是一部部来,但可以多个货物都在处理)
每一个阶段都是一个管道,当然管道中可以划分出子阶段
3、FPS 和 HertZ
帧每秒用来表示要么是特定帧的速率,要么是某段时间内的平均性能使用。
赫兹用于硬件,例如显示器,它被设置为一个轴速率。
四大基础管道
、应用程序阶段
该阶段是可以(记得GPU也可以做运算的哦)在CPU上,那就是你想做什么就做什么(物理,动画,碰撞等等)。 |
|
为了下一步的输入或者说有效输入 ( 点,线,和 三角形 ) 可以对数据(比如场景,模型,顶点,索引做一些有效的查询操作),或者说做一些延时处理(只是为了提高效率),再或者做一些统计(如有多少顶点要处理,有多少边要处理,等等) |
|
下一阶段是几何处理(不是几何着色) |
、几何处理
每个三角形和每个顶点的大部分操作
2.0 图元装配
.1 |
顶点着色处理 |
顶点着色有两个主要任务,即计算位置、计算程序想要的顶点输出数据(如正常坐标和纹理坐标,可能还会包含关联骨骼信息)。
目的:确定模型上顶点处材质的光照效果
关键词:模型空间,坐标系及其转换,顶点颜色,法线,视野空间,
2.2 |
投影和裁剪 |
视图卷转换为一个单位立方体
投影:【矩阵转换】
注意因为投影,Z坐标不会放在生成的图像中(二维),而放在深度缓冲区。
裁剪坐标: (注意一点是在 处理单元前,所以是除W前】
2.3 |
屏幕空间映射 |
前面计算输出的坐标映射到对应的屏幕坐标系。
注意:只有视图卷中的(剪切的)基元被传递到屏幕映射的进入这个阶段,坐标仍然是三维的。就是裁剪后。
2.4 |
选项(额外能力) |
当处理完顶点着色操作后,是可以进入到曲面细分,几何着色,输出流(依赖硬件)
3 光栅化阶段
光珊化rasterization:
a\在经过几何阶段处理得到的数据(顶点,颜色以及纹理坐标)基础上给每个像素(Pixel)正确配色,以便正确绘制整幅图像的过程
b\从二维顶点所处的屏幕空间(所有顶点都包含Z值即深度值,及各种与相关的着色信息)到屏幕上的像素的转换。
3.1 |
三角形设定:Triangle Steup |
在这一阶段,将计算三角表面差异和相关数据,在为其设计的硬件上执行。
3.2 |
三角形遍历:Triangle Traversal |
目的:采样点或像素在三角形中
通过逐像素进行判断(改像素的像素中心是否被三角形覆盖,若部分重合,将重合的部分生成片段),片段的属性来源于顶点数据的插值。
3.3 |
像素着色:Pixel Shading |
目的:将插值的数据,通过计算,得到颜色信息。
可编程GPU内执行、计算所有需逐像素操作的过程。
3.4 |
合并/融合 Mergin |
目的:合并/融合 当前储存于缓冲器中的由之前的像素着色阶段产生的 片段颜色
a\ GPU子单元执行,并非完全可编程
b\可配置(就是可根据需要调整参数,如半透处理,交叉)
c\可见性问题的处理( Z-buffer用起来)
d\缓冲区:模版缓冲区,深度缓冲区、累计缓冲区(卷积,来处一些特殊效果:软阴影,景深)
光栅化阶段:从相机视点处看到的东西就可以在荧幕上显示出来,但入DX交换链处理(就是双缓冲机制),先到BackBuffer,然后交换(不影响显示的时候)到前置缓冲区。
(笔记) RealTimeRender[实时渲染] C2的更多相关文章
- (笔记) RealTimeRender[实时渲染] C3
@author: 白袍小道 转载表明,查看随缘 前言: 从历史上看,图形加速始于每个像素扫描线上的插值颜色重叠一个三角形,然后显示这些值.包括访问图像数据允许纹理应用于表面.添加硬件 插入和测试z深度 ...
- 【原】实时渲染中常用的几种Rendering Path
[原]实时渲染中常用的几种Rendering Path 本文转载请注明出处 —— polobymulberry-博客园 本文为我的图形学大作业的论文部分,介绍了一些Rendering Path,比较简 ...
- 利用GPU实现无尽草地的实时渲染
0x00 前言 在游戏中展现一个写实的田园场景时,草地的渲染是必不可少的,而一提到高效率的渲染草地,很多人都会想起GPU Gems第七章 <Chapter 7. Rendering Countl ...
- 画面渲染:实时渲染(Real-time Rendering)、离线渲染(Offline Rendering)[转]
实时渲染(Real-time Rendering) 实时渲染的本质就是图形数据的实时计算和输出.最典型的图形数据源是顶点.顶点包括了位置.法向.颜色.纹理坐标.顶点的权重等.在第一代渲染技术中(198 ...
- 封装CIImage实现实时渲染
封装CIImage实现实时渲染 CIImage属于CoreImage里面的东东,用来渲染图片的,为什么要封装它呢?其实很简单,封装好之后使用更加方便. 如果直接使用CIImage渲染图片,使用的流程如 ...
- 如何实现最佳的跨平台游戏体验?Unity成亮解密实时渲染
7月31日,2018云创大会游戏论坛在杭州国际博览中心103B圆满举行.本场游戏论坛聚焦探讨了可能对游戏行业发展有重大推动的新技术.新实践,如AR.区块链.安全.大数据等. Unity大中华区技术经理 ...
- DirectX11笔记(十一)--Direct3D渲染7--RENDER STATES
原文:DirectX11笔记(十一)--Direct3D渲染7--RENDER STATES 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010 ...
- DirectX11笔记(十)--Direct3D渲染6--PIXEL SHADER
原文:DirectX11笔记(十)--Direct3D渲染6--PIXEL SHADER 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u01033 ...
- DirectX11笔记(九)--Direct3D渲染5--CONSTANT BUFFERS
原文:DirectX11笔记(九)--Direct3D渲染5--CONSTANT BUFFERS 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u0 ...
随机推荐
- 类似LCS,构成目标单词(POJ2192)
题目链接:http://poj.org/problem?id=2192 解题报告: 1.类似最长公共子序列,dp[i][j]表示用s1前i个字符和s2前j个字符来构成目标单词的一部分,是否成功 2.状 ...
- 7 MSSQL数据库备份与恢复
0 MSSQL数据库备份 1 SQLAgent配置 2 设置连接属性 3 输入SA账号密码 4 SQL备份脚本配置 5 生成SQL全量备份脚本 6 生成SQL差异备份脚本 7 修改SQL差异备份脚本 ...
- Matlab 绘图实例
概要 每次用 Matlab 绘图都要搜一堆资料设置一些参数,本次将绘图中的一些参数设置实例展示在这里,以备不时之需.暂包括折线图,面积图. 折线图实例 下图是效果图: 图 1:折线图效果图 ...
- burpsuite 出现 ssl_error_no_cypher_overlap
解决方案一:1.浏览器地址栏输入 about:config2.查找 security.tls.version.fallback-limit 和 security.tls.version.min,并将值 ...
- java读取pfx或P12格式的个人交换库公私钥
使用的是CFCA签发的用于银行间交换数据的证书,下载后直接添加到浏览器中 1.导出 从浏览器导出p12文件(包含私钥) 2.验证 两种方式: openssl 代码(请注意alias别名是如何获取的): ...
- vue学习--Props
Props: props用以从父组件接收数据: 使用: Vue.component('child',{ ...
- 申请qq第三方登录 http://www.php20.com/forum.php?mod=viewthread&tid=29 (出处: 码农之家)
百度 qq互联 进入网站 按图中的步骤申请第三方登录即可 先申请成为开发者 审核通过后再继续操作 提交 后列表中会出现提交的申请. 状态为审核中,审核通过会得到下图. 点查看 红线后面就是appi ...
- [C#]常用开源项目
[转][C#]常用开源项目 本文来自:http://www.cnblogs.com/sunxuchu/p/6047589.html Json.NET http://www.newtonsoft.com ...
- [USACO5.1]夜空繁星Starry Night
题目背景 高高的星空,簇簇闪耀的群星形态万千.一个星座(cluster)是一群连通的星组成的非空连通星系,这里的连通是指水平,垂直或者对角相邻的两个星星.一个星座不能是另一个更大星座的一部分, 星座可 ...
- 霍夫直线检测 opencv
本次实验是检测图像中的直线,用到了HoughLines()和HoughLinesP()函数,其中HoughLinesP()称为累计概率霍夫变换,实验结果显示累计概率霍夫变换要比标准霍夫变换的效果好.具 ...