游戏引擎中顶点着色&像素着色

一.GPU渲染管线

     GPU在接收到游戏端提交的Mesh,Shader数据后,渲染管线开始工作,将数据进行处理投射为2D屏幕中光栅图像.

     GPU硬件中着色单元有两类,分别为顶点着色器和像素着色器.

二.顶点着色器

    完成Mesh网格中顶点(3D)到屏幕(2D)计算

    vertex_fvf(灵活顶点格式) = 3D坐标 + 法向  + UV + 颜色(布料,摇曳等特殊效果) + 自定义

struct Vetex_Fvf
{
   float x, y, z; //3D坐标数据
   float n_x, n_y, n_z; //坐标法向数据
   int r, g, b, a; //顶点颜色数据 R, G, B, A四种颜色通道
   float u, v //为像素着色器设计,可映射至2D纹理图片
   int flag; //自定义数据
}

三.像素着色器

    完成2D屏幕中顶点映射坐标转化为像素颜色的计算

    material = 漫反射纹理 + 法向纹理 + 高光纹理 + 自定义参数

   

你可能感兴趣的:(游戏开发基础理论,游戏引擎,顶点着色器,像素着色器,顶点颜色,顶点UV,顶点法向)