OpenGL渲染流程
FBX→MeshRender
FBX:模型文件(里面包含了UV、顶点位置、法线、切线等渲染所需要的信息)
MeshRender:将这些信息传递到GPU,分为 Skin mesh render 和 Mesh render mesh filter。
Skin mesh render :带蒙皮的骨骼渲染。
Mesh render :主要是将顶点等信息传递到GPU。
Mesh filter:过滤器的作用,表示将哪个模型的信息传递给GPU。
渲染管线
顶点着色器→光栅化→片段着色器→alpha测试→模板测试→深度测试→Blend→Gbuffer→FrontBuffer→FrameBuffer→显示器
2.1顶点着色器
①计算顶点的颜色;
②将物体坐标系统转换成相机坐标系统。
2.2光栅化
将顶点转换成像素(通过插值运算)。
2.3片段着色器
①纹理采样
①像素跟灯光进行计算。
像素: RGBA 由4个通道组成。
屏幕:720*1280 横排有 720个像素 ,竖排有1280个像素。
结论 :顶点着色器运行4次,片段着色器会运行10000次。
顶点着色器和片段着色器运算次数不是一个量级。
尽量在顶点着色器里进行计算。
2.4Alpha测试、模板测试和深度测试
达到设置条件的像素进行显示,其余舍弃。
2.5Blend
将当前要渲染的像素和已经渲染好的像素进行混合运算。