渲染管线,节点树类型
节点树类型
Malt一共有5种节点树类型,分别是
渲染管线
渲染大概流程:
场景数据输入 -> 渲染层中进行渲染,输出渲染完成的图片 -> 屏幕的处理着色器进行后处理 -> 抗锯齿 -> 输出
可以看到渲染流水线的是非常清晰的,这里还可以加入其他的节点,比如添加多个渲染层进行多次渲染,添加多个屏幕Pass进行多次处理等等
- 场景灯光设置中可以调整阴影贴图的尺寸,越大阴影越清醒
- 渲染层中可以调整最大渲染的透明层数
- preview表示视图预览中的值,上面的表示实际渲染使用的值
- 渲染层中输出的一个透明的图像,灰色背景是在屏幕Pass里合成上去的
- SceneFilter节点可以过滤掉场景数据里的集合,这样输入到渲染层里过滤的集合就没了
渲染层
渲染层决定了每个物体是怎么渲染的,可以看到现在的渲染顺序:
场景数据输入 -> Pre Pass -> 线条渲染 -> 输出
可以在渲染管线中选择使用的渲染层
网格
网格类型的节点树就是主要写Shader的地方
这里决定了Pre Pas和Main Pass的内容,以及一些其他的数据输出,图中的输出从上到下是:
- 顶点数据输出
- 顶点着色器输出
- Pre Pass输出
- 深度偏移输出
- Main Pass输出
屏幕
屏幕节点树就是后处理的地方,输入一张图像进行处理后输出:
默认的节点树在物体渲染完成后,透明的地方混合一个背景色,然后输出
可以在渲染管线中选择使用的屏幕节点树
灯光
灯光节点树可以对灯光进行处理,定义灯光的颜色,衰减等信息
这个基本没过到不太熟,等用到了再补充
- 网格,屏幕,灯光节点树都要依赖材质,其实就是一个Shader
总流程