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

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

相关推荐
一步一个foot-print3 小时前
【Unity】Light Probe 替代点光源给环境动态物体加光照
unity·游戏引擎
@LYZY5 小时前
Unity 中隐藏文件规则
unity·游戏引擎·游戏程序·vr
Sator19 小时前
使用Unity ASE插件设置数值不会生效的问题
unity·游戏引擎
AA陈超9 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P07-08 点击移动
c++·游戏·ue5·游戏引擎·虚幻
程序猿追11 小时前
轻量级云原生体验:在OpenEuler 25.09上快速部署单节点K3s
人工智能·科技·机器学习·unity·游戏引擎
B0URNE11 小时前
【Unity基础详解】(7)Unity核心:动画系统
unity·游戏引擎
我的golang之路果然有问题12 小时前
mac M系列芯片 unity 安装会遇到的错误以及解决
经验分享·学习·macos·unity·游戏引擎
HahaGiver6662 天前
从0到1做一个“字母拼词”Unity小游戏(含源码/GIF)- 字母拼词正确错误判断
unity·游戏引擎·游戏程序
极客柒3 天前
Unity 协程GC优化记录
java·unity·游戏引擎
黄思搏3 天前
Unity SpriteRenderer 进度条 Shader 实现
unity·游戏引擎