Unity-Shader(第一章-渲染流水线)

前言

今天开始,正式开始关于unity的Shader

接触Shader首先要从基本概念开始-渲染流水线

1,什么是渲染流水线

渲染流水线也叫渲染管线,指的不是具体某一样东西,而是一个流程。而Shader是渲染流程中的一个小小的,可编程的片段。渲染管线可以分为可编程渲染管线和固定渲染管线(已弃用)

2,渲染流水线工作过程

工作任务:

由CPU和GPU合作,将一个三维场景渲染为一张二维图像

实现过程:

渲染流水线可以分为应用阶段、几何阶段、光栅化阶段:

  • 应用阶段

输出需要渲染的几何信息。用户搭建好场景后,由CPU进行处理后得到场景的几何信息,即渲染图元

  • 几何阶段

用于处理所有和我们要绘制的几何相关的事情,这一阶段通常由GPU来完成,最终会输出屏幕空间的二维顶点坐标,每个顶点的深度值、折射等相关信息,并传递给下一个阶段

  • 光栅化阶段

这一阶段使用上一阶段的数据来产生屏幕上的像素,并渲染处最终的图像。这一阶段同样是在GPU上来完成

3,详细流程

从CPU到GPU:

1,把数据加载到显存中

2,设置渲染状态

3,调用Draw Callf

GPU流水线:

1,顶点着色器

2,裁剪

3,屏幕映射

4,三角形设置

5,三角形遍历

6,片元着色器

猜你喜欢

转载自blog.csdn.net/xinzhilinger/article/details/109707908