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

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

相关推荐
南無忘码至尊5 小时前
Unity学习90天-第2天-认识Unity生命周期函数并用 Update 控制物体移动,FixedUpdate 控制物理
学习·unity·游戏引擎
小林up8 小时前
【Unity URP源码阅读1】ColorGradingLUT
unity·游戏引擎
风酥糖11 小时前
Godot游戏练习01-第27节-升级选项选择生效
游戏·游戏引擎·godot
星夜泊客13 小时前
unity 海底海洋资源OceanEnviromentPackUrp材质丢失修正
unity·游戏引擎·材质
weixin_4242946714 小时前
Unity 的Button Animator
unity·游戏引擎
UQ_rookie14 小时前
【Unity3D】在URP渲染管线下使用liltoon插件出现粉色无法渲染情况的解决方案
unity·游戏引擎·shader·urp·着色器·vrchat·liltoon
南無忘码至尊2 天前
Unity学习90天-第1天-认识Transform + 坐标系
学习·unity·游戏引擎
南無忘码至尊2 天前
Unity学习90天-第1天-认识Unity并书写我们的第一个脚本
学习·unity·游戏引擎
风酥糖2 天前
Godot游戏练习01-第26节-轮次结束后弹出升级选项
游戏·游戏引擎·godot
雪域迷影2 天前
Hazel游戏引擎结构分析
c++·游戏引擎·hazel