1.5 OpenGL渲染管线
来源:互联网 发布:始作俑者其无后乎意思 编辑:程序博客网 时间:2024/05/01 23:45
先来解释渲染管线。渲染是一个过程,将对物体的描述转换成图像的过程。管线,又叫流水线,通常为了完成一项比较大的任务,将任务分成很多小步骤,没一步做完该步骤的事之后,又交给下一个步骤做,直到最终完成。这一系列步骤就叫流水线。
OpenGL渲染管线,是指将图形描述转换成图像过程中,一系列相关的处理阶段。
下面是书中的渲染管线图。
这个图中的内容很多,书中建议首次接触的时候,跳过,以后每看完一章,再来看这个图。
先来看两头两尾。这个渲染管线是将图形描述,转换成图像。 图形描述有图中的顶点数据,像素数据,显示列表。最终图像存储在帧缓冲区中。
显示列表
显示列表是一组存储在一起的OpenGL函数,可以在以后执行。调用一个显示列表时,它所存储的函数就会按照顺序执行。
这个其实就是将一些操作集合到一起,存起来,供以后使用。比如我想画一个心,则可以把画这个心的函数存起来,放在显示列表中,在需要画的地方再调用显示列表。
求值器
求值器提供了一种方式,只用少数的控制点来指定曲线或表面上的点。然后,就可以按照任意的精度来渲染曲线或表面。
举个例子,我们指定两个点(-1.0, 0, 0) 和 (1.0, 0, 0),要求用这两个点来画一条直线。 由于直线是由很多的点组成的,那么位于
这两个端点之间的点,需要由求值器计算出来。这就是求值器的作用。
基于顶点的操作
这个步骤的任务是将顶点数据,投影到屏幕上的一个位置。比如指定了顶点(0, 0, 0),那么这个点,投影到屏幕上,可能就是二维屏幕上的一个点,比如(200, 200)。
图元装配
图元装配产生的结果就是完整的几何图元。也就是根据相关的颜色、深度(有时还有纹理坐标值以及和光栅化处理有关的一些指导信息)进行了变换和裁剪的顶点。
图元装配有好几个任务,一个任务是裁剪,一个任务是透视除法,还有视口和深度操作。
裁剪的任务是消除位于半空间之外的那部分几何图元,这个半空间是由一个平面所定义的。简单的说就是OpenGL的绘制范围有限,只绘制位于绘制范围内的点。
透视除法的任务是使远处的物体看起来比近处的物体更小一些。
视口操作,将几何图元放置在视口之中。
深度操作,根据当前OpenGL状态,选择离观察者近的点覆盖远的点,或者将两者进行混合。
接下来还有像素操作、纹理装配、光栅化、片段操作。
像素操作
这个像素操作,指的是将像素数据,在内存和帧缓冲区之间进行转移,交换。比如,我要将OpenGL绘制的图形,保存为一个bmp文件,那么需要从帧缓冲区中读取像素数据到内存中,然后将内存中的数据写入文件。
纹理装配
纹理,就是覆盖在物体表面的贴图。比如刚买的毛坯房,刷上大白,这就算是一个贴图。汽车上喷漆,也算是纹理贴图。
OpenGL对物体进行纹理装配之后,物体呈现出了更加真实的视觉效果。
光栅化
光栅化就是把几何数据和像素数据转换为片段(fragment)的过程。每个片段方块对应于帧缓冲区的一个像素。
这就是一个汇总的过程,将原来的分开的数据,都汇总到一个像素上。
片段操作
形成片段之后,还需要对这个片段进行修修补补,才能将片段放到最终的帧缓冲区中。对片段的修修补补,就叫片段操作。
片段操作 有 纹理处理,组合主颜色和辅助颜色,可能还会应用一次雾计算,然后执行可用的裁剪测试、alpha测试、模板测试和深度缓冲区测试,然后还可能有混合、抖动、逻辑操作以及根据一个位掩码的屏蔽操作。
我的理解
只能理解到这里了。
0 0
- 1.5 OpenGL渲染管线
- OpenGL渲染管线
- opengl渲染管线理论
- OpenGL 渲染管线--1
- Opengl 渲染管线 -- 2
- OpenGL渲染管线
- openGL渲染管线
- 渲染管线(OpenGL)
- OpenGL渲染管线
- OpenGL 渲染管线理论
- OpenGL—渲染管线
- OpenGL 渲染管线理论
- OpenGL渲染管线总结
- OpenGL 渲染管线理论
- OpenGL渲染管线
- OpenGL: 渲染管线理论
- OpenGL渲染管线
- OpenGL: 渲染管线理论
- B\S备忘录07——Request
- struts2框架连数据库简单应用
- (2817)POJ-状态压缩
- Oracle 日期四舍五入
- 研发人员绩效考核案例
- 1.5 OpenGL渲染管线
- Maven安装及与Eclipse集成
- PAT A1035 Password 三个经验仔细看!
- 使用Mongoose对MongoDB进行分页
- UVa 10410 - Tree Reconstruction(树)
- 数组-06. 找出不是两个数组共有的元素(20)
- 4.磁盘分区结构划分
- Spring bean定义解析源码分析
- YT14-HDU-S与D的故事