1. Rendering pipeline的作用就是在给定的虚拟相机、三维物体、光源、着色方程式、纹理等的条件下产生(渲染)二维图像

2. pipeline包含很多个stage,其效率由最慢的stage决定

3. 一个实时渲染系统可以包含三个阶段:application, geometry, rasterizer,每个阶段可能自己也是由pipeline组成的(geometry stage),或者是并行化的(rasterizer)

4. Hertz用来表示硬件的刷新率=1/sec
FPS可以表示某一帧用的时间,也可以表示某段时间内的平均performance

找到pipeline中的最慢stage,就可以算出FPS
在pipeline中,名词 throughput (吞吐率)用来表示渲染速度

渲染速度举例:一台刷新率为60Hz的显示器,rendering pipeline的瓶颈需要62.5ms来执行,则最大渲染速度为1/0.0625=16FPS;显示器60Hz,60/2=30Hz,60/3=20Hz,60/4=15Hz。所以最终渲染速度为15Hz

5. application stage: 在CPU上执行,开发者有绝对控制权。

这一阶段的行为有可能会影响后续阶段的performance.

这一阶段的输出为rendering primitives, 即点/线/三角形等

6. geometry stage:矩阵变换,投影。计算画什么,怎么画,在哪里画。
分为这几个功能stage: 建模和视图变换,顶点shading,投影,clipping,screen mapping

7. Rendering pipeline

这里讲的rendering pipeline是real-time rendering pipeline,这不是唯一一种rendering pipeline,还有离屏rendering pipeline。譬如,电影制作中最常使用的是micropolygon pipelines,学术研究和predictive rendering applications(如建筑物可视化预览等)通常采用ray tracing(光线追踪) renderers

Rendering pipeline overview(读书笔记1 --- Real-Time rendering)的更多相关文章

  1. DirectX 11游戏编程学习笔记之6: 第5章The Rendering Pipeline(渲染管线)

            本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com         注:我给的电子版是700多页,而实体书是800多页,所以我在提到相关概念的时候 ...

  2. 部署:持续集成(CI)与持续交付(CD)——《微服务设计》读书笔记

        系列文章目录:     <微服务设计>读书笔记大纲 一.CI(Continuous Integration)简介  CI规则1:尽量频繁地把代码签入到分支中以进行集成 CI规则2: ...

  3. 《Apache kafka实战》读书笔记-管理Kafka集群安全之ACL篇

    <Apache kafka实战>读书笔记-管理Kafka集群安全之ACL篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家能看到这篇博客的小伙伴,估计你对kaf ...

  4. Understanding Scroll Views 深入理解 scroll view 读书笔记

    Understanding Scroll Views 深入理解 scroll view  读书笔记   It may be hard to believe, but a UIScrollView is ...

  5. 6 Specialzed layers 特殊层 第一部分 读书笔记

    6 Specialzed layers 特殊层  第一部分  读书笔记   Specialization is a feature of every complex organization. 专注是 ...

  6. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  7. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  8. 《C#本质论》读书笔记(18)多线程处理

    .NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...

  9. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

随机推荐

  1. FileSystem.DeleteDirectory遇到"无法删除 文件:无法读取源文件或磁盘"

    Microsoft.VisualBasic.FileIO.FileSystem.DeleteDirectory(fileFolder, UIOption.AllDialogs, RecycleOpti ...

  2. Oracle表空间(tablespaces)

    http://www.cnblogs.com/fnng/archive/2012/08/12/2634485.html 我们知道oarcle数据库真正存放数据的是数据文件(data files),Oa ...

  3. Linux Epoll相关知识

    其实在Linux下设计并发网络程序,向来不缺少方法,比如典型的Apache模型(Process Per Connection,简称PPC),TPC(Thread PerConnection)模型,以及 ...

  4. AJAX怎么用POST 传参数

    //注册回调函数.注意注册回调函数是不能加括号,加了会把函数的值返回给onreadystatechange xmlhttp.onreadystatechange = callback; //设置连接信 ...

  5. npoi本地文件

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...

  6. sevice__属性介绍: android:exported

    http://blog.csdn.net/lhf0000/article/details/6576327 http://blog.csdn.net/berry666/article/details/2 ...

  7. Could not find com.android.tools.build:gradle:1.3.0.

    * What went wrong:          A problem occurred configuring project ':TZYJ_Android'.> Could not re ...

  8. sklearn学习笔记1

    Image recognition with Support Vector Machines #our dataset is provided within scikit-learn #let's s ...

  9. mybatis动态调用表名和字段名

    以后慢慢启用个人博客:http://www.yuanrengu.com/index.php/mybatis1021.html 一直在使用Mybatis这个ORM框架,都是使用mybatis里的一些常用 ...

  10. [AS3.0] Error #2044: 未处理的 NetStatusEvent:。 level=error, code=NetStream.Record.NoAcces 解决办法

    突然又需要FMS做视频录制,却遇到一些意想不到的问题,我在想当年做的时候怎么没遇到... 报错: Error #2044: 未处理的 NetStatusEvent:. level=error, cod ...