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

一.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 = 漫反射纹理 + 法向纹理 + 高光纹理 + 自定义参数

相关推荐
Wanda121412 小时前
机器人与机电一体化3D数字孪生机器-Day5
人工智能·unity·游戏引擎·数字孪生
淡海水1 天前
05-02-源码-Boehm GC标记阶段
算法·unity·c#·游戏引擎·gc
淡海水2 天前
05-03-源码-Boehm GC分配与碎片管理
开发语言·算法·unity·c#·游戏引擎·gc
xiaogai_gai5 天前
BOM 物料清单同步实战:金蝶云星空 → 四化智造 MES 修改场景深度拆解
unity·游戏引擎
/**书香门第*/6 天前
Cocos Creator 打螺丝游戏的实现
游戏引擎·cocos2d·螺丝·打螺丝
mxwin7 天前
Unity Shader 光线追踪原理与实战案例
unity·游戏引擎
xcLeigh8 天前
Unity基础:Instantiate实例化——在运行时动态创建游戏物体
游戏·unity·游戏引擎·教程·instantiate
辻弋20114 天前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
淡海水18 天前
02-02-原理篇-分代GC
算法·unity·c#·游戏引擎·.net·gc
淡海水19 天前
02-03-原理篇-大对象堆
unity·c#·游戏引擎·.net·gc