一,什么是shader
shader着色器,Shader是可编程图形管线的算法片段
主要分为两类:Vertex Shader(顶点)和Fragment Shader(片段性)
二
、什么是渲染管线
渲染管线也称为
渲染流水线,是显示芯片内部处理图形信号相互独立的
并行处理单元。一个流水线是一序列可以并行和按照固定顺序进行的阶段,每个阶段都从它前一阶段接收输入,然后在输出发给随后的阶段。
从前到后的过程
DirectX:
DirectX主要功能是加强3D图形和声音效果,让游戏开发者不必为每一品牌的硬件来写不同的驱动程序,也降低用户安装及设置硬件的复杂度。4
三、渲染管线
流程:
①几何模型 美工美术把模型、贴图等→
②
unity导入→③unity引擎调用图形API→
④API驱动GPU开始运算→⑤运算后首先是顶点应用程序→⑥顶点应用程序传给片段处理器→⑦输出平面上显示的信息(帧缓冲——显示的颜色信息也不全是还有其他附加的信息)
Transform模型的空间变换(针对顶点的空间几何变换)
TexGen 纹理坐标的生成 (纹理坐标转换为UV取值)
Lighting 光照
Culling Depth Test 裁剪深度测试(背对着摄像机的面不被看到,加速图形处理)
光栅化阶段——Texturing Fog 纹理采样雾化处理(如何在屏幕上显示每个像素的颜色去采样,找一个点采样;雾化处理)
Alpha Test 阿尔法测试(绘制透明和半透明物体)
四、Shader和材质、贴图的关系
Shader(着色器)实际上就是一个小程序,把输入的贴图、颜色等组合起来,然后输出。
输入贴图或颜色等,对应的Shader,以及Shader的特定的参数设置,将这些内容打包存储在一起,得到的就是一个材质。之后,我们便可以将材质赋予三维物体来进行渲染(输出)了。
材质好比引擎最终使用的商品,shader好比生产这种商品的加工方法,而贴图就是原材料。
课程总结:
Shader是图形可编辑方案的程序片段
渲染管线是一种计算机从数据到最终图形成像的形象描述
材质是商品,Shader是方法,贴图是材料
|