渲染管线过程

应用程序阶段 Application
在CPU上运行,Cocos2dx单线程,碰撞检测,操作输入等

几何阶段 Geometry
在GPU中执行,每个图元和每个顶点的处理,主要执行顶点坐标变换,输出(0,0)到(1,1)坐标,及顶点光照等

模型及视图变换 Model & View Transform
模型变换转换的是模型的顶点和法线,当对象物体的坐标系应用模型变换后,模型就处于世界坐标系下。所有模型用对应的模型变换转换后,所有的模型处于相同空间。
视图变换目的是将摄像机放置原点,并对准,look-at朝-z方向,up朝y。此时为视觉空间

顶点着色 Vertex Shading
vertex shader编写

投影 Projection
将摄像机可见物体转换到单位立方体(规范可视体)中,与分辨率无关。从(-1,-1,-1)到(1,1,1)分正交投影与透视投影

裁剪 Clipping
处于可视体的图元才会被传递到光栅化

屏幕映射 Screen Mapping
每个图元的x,y坐标转换到屏幕的坐标系中

光栅化阶段 Rasterizer
计算一个多边形覆盖区域的每个点的颜色值

三角形建立 Triangle Setup

三角形遍历 Triangle Traversal
检查三角形覆盖的每个像素,并产生一个片段,遍历时对每个顶点属性进行线性插值

像素着色阶段 Pixel Shading
Pixel Shader编写,根据输入的线性插值,对每个像素执行PS,输出一个片段的颜色值

融合阶段 Merging
在这里插入图片描述
深度缓冲:将当前像素的深度(z)与深度缓冲区上同位置比较,若新z值小于缓冲区z值,则离摄像机近,更新缓冲区,若新z值大于,则被丢弃。对半透明图元无效。半透明图元需在所有不透明图元渲染后,按从后到前的顺序去渲染。
即不透明物体从前往后,因为被遮挡的部分无需渲染,透明物体从后往前,因为需要颜色混合

模板缓冲:通常每个像素占8bit。缓冲的内容可用于控制颜色缓冲和深度缓冲。如一个被填充的圆环已被渲染到模板缓冲中,通过某种操作可使后续图元仅在图形所出现的地方进行渲染。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值