渲染管道(2)几何阶段三“曲面细分着色器”子阶段

1. 三个子阶段

  • Hull-Shader Stage(HS细分控制)
    可编程,操作人员设定细分的操作与数量。接收控制点信息, 与一些系数发送到 Domain Shader, 同时发送一些系数到 Tesselator。可以指挥GPU如何对顶点进行曲面细分操作,但是还未具体执行细分。
  • Tessellation Stage(TS细分操作)
    不可编程,由硬件管理,GPU会根据 Hull-Shader Stage 阶段对曲面细分的指令,执行曲面细分,这个阶段才是真正的曲面细分执行阶段。
  • Domain-Shader Stage(DS细分计算)
    可编程,设置新生成点的信息并转换到匹配的空间。将所有接收到的信息整合,可以控制计算经过曲面细分后的顶点。
    在这里插入图片描述

1.1 曲面细分实现三角面的划分

step1. 外壳着色器(hull shader)将顶点数据传输给domain shader,细分规则传输给tessellator
step2. 镶嵌器(tessellator)根据细分规则和重心坐标进行细分(添加新的顶点)
step3. 域着色器(domain shader)生成mesh

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/thefist11cc/article/details/124114612