CPU和GPU之间的通信把数据加载到显存中设置

CPU和GPU之间的通信把数据加载到显存中设置

1、CPU和GPU之间的通信将数据加载到显存中,设置渲染状态并调用Draw Call

将数据加载到显存中

硬盘 --> RAM --> 显存

max顶点着色_unity 顶点着色器_unity 顶点着色器

资源:

设置渲染状态

定义用于场景中的网格的顶点(片段)着色器、照明属性、材质等。

unity 顶点着色器_max顶点着色_unity 顶点着色器

max顶点着色_unity 顶点着色器_unity 顶点着色器

资源:

调用绘制调用

CPU 向 GPU 发送的渲染命令

max顶点着色_unity 顶点着色器_unity 顶点着色器

图片来源:2.几何渲染阶段顶点着色器图元组装几何着色器裁剪和屏幕映射

顶点着色器

单个顶点作为输入允许我们对顶点属性进行一些基本操作。其主要目的是将 3D 坐标转换为另一个 3D 坐标。

元件组装

将顶点着色器输出的所有顶点作为输入,将所有点组装成指定图元的形状。

几何着色器

几何着色器将一组图元形式的顶点作为输入(输入是图元),并且它可以通过生成新的顶点来构造新的(或其他)图元来生成其他形状。

裁剪和屏幕映射

unity 顶点着色器_unity 顶点着色器_max顶点着色

裁剪掉不在相机视野中的顶点unity 顶点着色器,并剔除一些三角形图元的补丁(可以设置)。然后将每个图元的坐标转换为屏幕坐标系。

unity 顶点着色器_unity 顶点着色器_max顶点着色

资源:

unity 顶点着色器_max顶点着色_unity 顶点着色器

图片来源:3.光栅化阶段三角形设置和遍历片段着色器测试和混合

三角形设置和遍历

unity 顶点着色器_max顶点着色_unity 顶点着色器

在三角形设置阶段,需要根据输入的三角形网格顶点计算三角形每条边上的像素坐标。三角形遍历阶段根据三角形顶点对三角形覆盖的像素进行插值。

max顶点着色_unity 顶点着色器_unity 顶点着色器

资源:

片段着色器

主要目的是计算一个像素的最终颜色。

max顶点着色_unity 顶点着色器_unity 顶点着色器

max顶点着色_unity 顶点着色器_unity 顶点着色器

资源:

测试和混合

这个阶段检测片段对应的深度(和模板)值,使用它们来确定像素是在其他物体的前面还是后面3D动画,并决定是否应该丢弃它。此阶段还检查 alpha 值(alpha 值定义对象的透明度)并混合对象。因此,即使在片段着色器中计算了一个像素的输出颜色橙光游戏,在渲染多个三角形时,最终的像素颜色也可能完全不同。

max顶点着色_unity 顶点着色器_unity 顶点着色器

资源:

unity 顶点着色器_max顶点着色_unity 顶点着色器

资料来源:4. 其他

我的知识和知识很少。如有误会unity 顶点着色器,敬请期待雅正。

插图引自:随书《Unity Shader入门精要》彩图(侵删)