OpenGL渲染管线---概述(一)

渲染管线是OpenGL渲染场景的一整个过程,是将3D对象渲染到平面上的流程。OpenGL的渲染管线经历了由传统的固定管线(渲染过程中的步骤都是事先定义好的)到目前最新的可编程的方式(使用Shader实现),这主要得益于当前显卡的发展,新的显卡提供了用户可编程的能力。这一些列文章主要是描述OpenGL渲染管线的方方面面,从固定管线到可编程管线的差异说起,尽管固定管线目前被标识为Deprecated,但是从学习的意义上来说还是有价值的,让我们更好的了解图形学专家是如何设计这一流程的。通过对渲染管线的过程的学习,同时引入在学习过程中的一些理论知识以及其中涉及到的API。随着对这些内容的了解,尝试使用软的方式来模拟渲染的过程。

本文是这系列文章的开篇,主要简单介绍渲染管线的过程。

  • 固定管线

OpenGL固定管线的过程如下图所示:

上图中仅描述了对于顶点数据的处理,对于顶点类型的数据的处理过程描述的比较详细。事实上OpenGL也提供了对于Pixel-Based数据的处理,综合这两种数据,固定管线的一个描述如下图所示:

  • 可编程管线

可编程管线相比固定管线,将固定管线中的一部分内容可以用编程的方式实现,相对比较灵活。如下图所示:


可以看到主体没有什么变化,但是固定管线中的几何变换和光照计算被VertexShader(顶点Shader)取代了,固定管线中的纹理映射、雾效处理等被FragmentShader(片元Shaser)取代了。考虑到对于Pixel-Based数据的处理,详细的可编程管线的图示如下:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值