冯乐乐之一 图形学基础 Shader入门精要

什么是渲染流水线

渲染三大阶段

1.应用阶段:输出图元;2.几何阶段:输出屏幕空间的顶点信息3.光栅化阶段:绘制像素。

五大空间:

模型(局部)空间:建模软件决定的原点

世界空间:scene中的原点,

观察(相机)空间:相机为原点的空间,

裁剪空间:FOV,nearclip,FarClip构成的空间

屏幕空间:二维平面空间,注意左上角还是左下角是原点。

应用阶段

CPU主导,开发者可以完全控制,开发者三个任务1准备场景数据2粗粒度提出3设置渲染状态

重要目标:输出的几何数据,即渲染图元(rendering primitive),不是本书重点,进入下一步几何阶段。

几何阶段

GPU完成,处理渲染图元进行逐个顶点,逐个多边形操作,这里细分成多个流水线,本书重点。

重要任务:顶点转换到屏幕空间,输出二维顶点坐标,深度,着色信息。进入光栅化阶段。

光栅化阶段

GPU完成,处理二维顶点像素,绘制屏幕像素。这里细分成多个流水线,本书重点。

 

CPUGPU通信:应用阶段

应用阶段的三步骤:1数据加载显存2设置渲染状态3调用DrawCall(重点)

渲染数据物理移动路径:硬盘HDD->内存RAM->显存VRAWM。

设置渲染状态包括:指定顶点着色器,片元着色器,光源属性,混合属性,材质贴图1等。

DrawCall是完成上述工作之后,CPU通知GPU进行渲染的指令。DC会指向本次渲染的图元列表。

 

GPU流水线两大阶段:几何阶段,光栅化阶段。

几何阶段:顶点着色器,曲面细分着色器,几何着色器,裁剪,屏幕映射

光栅化阶段:三角形设置,三角形遍历,片元着色器,逐个片元操作。(粗体为可编程的)

 

顶点着色器:顶点空间变化,顶点着色等。

曲面细分着色器:可选项,可以细分图元

几何着色器:可选项,可以逐个图元操作,或者产生更多图元

裁剪:剔除摄像机视野外面的三角面。

屏幕映射:不可编程,将图元的空间坐标转换到屏幕坐标。

三角形设置,三角形遍历:固定函数控制不可编程。

片元着色器:可编程,逐个片元Fragment着色。

逐片元操作:不可编程但是可配置,逐个片元Fragment处理,如修改颜色,深度缓冲,混合等。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值