渲染流程分为的三个阶段:应用阶段(Application Stage)、几何阶段(Geometry Stage)、光栅化阶段(Rasterizer Stage)

应用阶段CPU完成, 几何阶段光栅化阶段GPU完成。
《unity shader 入门精要》阅读笔记1 - 渲染流水线
《unity shader 入门精要》阅读笔记1 - 渲染流水线

1.应用阶段

将需要在屏幕上显示出来的物体的几何信息,即渲染图元(点,线,三角面等)传递给下一阶段。

2.几何阶段

几何阶段负责和每个渲染图元打交道,把顶点坐标变换到屏幕空间中。

  1. 顶点着色器( Vertex Shader)是完全可编程的,它通常用于实现顶点的空间变换、顶点着色等功能。
  2. 曲面细分着色器( Tessellation Shader)是一个可选的着色器,它用于细分图元。
  3. 几何着色器( Geometry Shader)同样是一个可选的着色器,它可以被用于执行逐图元(Per- Primitive)的着色操作,或者被用于产生更多的图元。
  4. 裁剪( Clipping),这一阶段的目的是将那些不在摄像机视野内的顶点裁剪掉,并别除某些三角图元的面片。这个阶段是可配置的。
  5. 屏幕映射( Screen Mapping),这一阶段是不可配置和编程的,它负责把每个图元的坐标转换到屏幕坐标系中。

3.光栅化阶段

光栅化阶段有两个最重要的目标:计算每个图元覆盖了哪些像素,以及为这些像素计算它们的颜色。

  1. 三角形设置( Triangle Setup),这个阶段会计算光栅化一个角网格所需的信息。
  2. 三角形遍历( Triangle Traversal),阶段将会检査每个像素是否被一个三角网格所覆盖,如果被覆盖的话,就会生成一个片元。
  3. 片元着色器( Fragment Shader)是另一个非常重要的可编程着色器阶段,它的输入是上一个阶段对顶点信息插值得到的结果,而它的输出是一个或者多个颜色值。这一阶段可以完成很多重要的渲染技术,其中最重要的技术之一就是纹理采样。
  4. 逐片元操作( Per-fragment Operations)是对每一个片元进行一些操作(模板测试,深度测试,颜色混合)。
    《unity shader 入门精要》阅读笔记1 - 渲染流水线

相关文章:

  • 2021-04-25
  • 2021-05-05
  • 2021-04-09
  • 2021-09-19
  • 2022-12-23
  • 2021-05-19
  • 2021-09-06
猜你喜欢
  • 2021-10-12
  • 2022-01-11
  • 2021-07-12
  • 2021-07-07
  • 2021-06-04
  • 2021-09-23
  • 2022-12-23
相关资源
相似解决方案