
自定义渲染管线:HDR (翻译十二)
实现高动态范围渲染、散射和高动态范围映射

实现高动态范围渲染、散射和高动态范围映射

创建简单的后处理栈,实现艺术性的泛光效果

为点光源和聚光灯添加实时阴影支持,使用透视投影渲染和采样阴影,并使用自定义立方体贴图。

扩展渲染管线以支持点光源和聚光灯,包含实时渲染和烘焙光照,同时实现每物体最多8个光源的限制。

创建一个电路板般的材质。 添加对 MODS 蒙版贴图的支持。 引入一个辅助细节贴图。 执行切线空间法线贴图。 背景 到目前为止,我们一直使用非常简单的材质来测试渲染管线。但它也应该支持复杂的材质,这样我们可以表现更有趣的表面。在本教程中,我们将借助几张纹理创建一个艺术风格的电路材质。 漫反射贴图 我们材质的核心是漫反射贴图(Albedo Map)。它由几层不同深浅的...

使用LOD Groups。 LOD 级别之间的渐变淡入淡出。 通过采样反射探针来反射环境。 支持可选的菲涅尔反射。 Core Principles 许多小型物体可以为场景增添细节,使其更加有趣。然而,太小而无法覆盖多个像素的细节会退化为模糊的噪点。在这些视觉尺度上,最好不渲染它们,这样也可以释放 CPU 和 GPU 来渲染更重要的东西。我们还可以决定在物体仍然可以区分时...

烘焙静态阴影。 将实时光照与烘焙阴影结合。 混合实时阴影和烘焙阴影。 支持最多四个阴影掩码光源。 烘焙阴影 使用光照贴图的一个优点是我们不受最大阴影距离的限制。烘焙阴影不会被剔除,但它们也无法改变。理想情况下,我们可以在最大阴影距离内使用实时阴影,而在那之后使用烘焙阴影。Unity 的阴影掩码(Shadowmask)混合光照模式使这成为可能。 距离阴影掩码 让我们考...

烘焙静态全局光照 创建Meta pass 支持自发光 烘焙静态光照 到目前为止,我们都是在渲染时计算所有光照,但这并不是唯一的选择。光照也可以预先计算并存储在光照贴图和探针中。这样做有两个主要原因:减少实时计算量,以及添加在运行时无法计算间接光照。后者就是所谓全局光照(Global Illumination)的一部分:光照不是直接从光源发出,而是通过反射、环境或自发光表面间...

渲染阴影 当绘制物体时,表面和光照信息就足以计算光照了。但是两者之间可能有东西阻挡光线,在我们正在绘制的表面上投下阴影。为了使阴影成为可能,我们必须以某种方式让着色器知道阴影投射物体。有多种技术可以做到这一点。最常见的方法是生成一个阴影贴图,存储光线从光源出发在击中表面之前可以传播多远。同一方向上更远的任何东西都不能被同一个光源照亮。Unity 的渲染管线使用这种方法,我们也一样。 ...

增加对多个方向光着色(shading)的支持。 已升级至 2022.3.62f2 1 光照 (Lighting) 如果我们想创建一个更真实的场景,那么我们就必须模拟光如何与表面相互作用。这需要一个比我们目前拥有的不发光(unlit)着色器更复杂的着色器。 1.1 受光着色器 (Lit Shader) 复制 UnlitPass.hlsl 文件并将其重命名为 LitPass.h...