OpenGL渲染流程

2019-02-21  本文已影响0人  Arlene_M

1、CPU

FBX→MeshRender

FBX:模型文件(里面包含了UV、顶点位置、法线、切线等渲染所需要的信息)

MeshRender:将这些信息传递到GPU,分为 Skin mesh render 和 Mesh render mesh filter。

Skin mesh render :带蒙皮的骨骼渲染。

Mesh render :主要是将顶点等信息传递到GPU。

Mesh filter:过滤器的作用,表示将哪个模型的信息传递给GPU。

2、GPU

渲染管线

顶点着色器→光栅化→片段着色器→alpha测试→模板测试→深度测试→Blend→Gbuffer→FrontBuffer→FrameBuffer→显示器

2.1顶点着色器

①计算顶点的颜色;

②将物体坐标系统转换成相机坐标系统。

2.2光栅化

将顶点转换成像素(通过插值运算)。

2.3片段着色器

①纹理采样

①像素跟灯光进行计算。

像素: RGBA 由4个通道组成。

屏幕:720*1280  横排有 720个像素 ,竖排有1280个像素。

结论:顶点着色器运行4次,片段着色器会运行10000次。

           顶点着色器和片段着色器运算次数不是一个量级。

           尽量在顶点着色器里进行计算。

2.4Alpha测试、模板测试和深度测试

达到设置条件的像素进行显示,其余舍弃。

2.5Blend

将当前要渲染的像素和已经渲染好的像素进行混合运算。

上一篇下一篇

猜你喜欢

热点阅读