《Unity着色器圣经》5.0.1 | 配置输入与输出
目录索引 译文 Chapter II | 光照,阴影与表面 在计算机图形学中,最复杂的概念之一是计算光照、阴影与表面。想要得到良好的视觉效果,必须执行一些函数或属性。在大多数情况下,这些函数或属性...
《Unity着色器圣经》8.0.1 | 阴影映射
目录索引 译文 阴影映射(Shadow Mapping)是一种允许我们在场景中生成阴影贴图的技术,它的概念非常简单:光影区域是由我们使用的光源产生的,也就是说,如果光源对应的是平行光,那么阴影的投...
《Unity着色器圣经》9.0.7 | 用户自定义函数
目录索引 译文 要使用自定义函数节点,我们必须了解计算机图形学的基本概念以及如何用 HLSL 编写函数。自定义函数允许我们创建自己的函数,并在 Shader Graph 中以节点的形式使用它们。我们可以...
《Unity着色器圣经》1.1.3 | 前向渲染
目录索引 译文 前向渲染是默认的渲染路径,支持诸如法线贴图、逐像素光照、阴影等多种材质功能。前向渲染包含了两种可以在着色器内编程的pass,分别是 base pass 和 additional ...
《Unity着色器圣经》3.1.3 | ShaderLab子着色器
目录索引 译文 着色器的第二个重要组成是子着色器(SubShader),着色器如果想完美的加载运行至少需要包含一个子着色器。当一个着色器中有多个子着色器时,Unity 将逐一处理,并根据硬件特性从...
《Unity着色器圣经》3.2.2 | ShaderLab深度写入
目录索引 译文 深度写入这个命令控制了物体表面像素写入 Z 缓冲(深度缓冲)的这一过程。它允许我们忽略或写入物体与相机间的深度。深度写入有两个可以设置的值,分别是开启(On)和关闭(Off)...
《Unity着色器圣经》3.2.8 | Cg/HLSL编程
目录索引 译文 在我们的着色器中,可以找到至少三个编译指令(pragma)。这些都是处理器指令,包含在 Cg 或 HLSL 中,其作用是帮助我们的着色器识别和编译某些函数,如果没有这些指令这些函数就...
《Unity着色器圣经》8.0.2 | 阴影投射
目录索引 译文 我们将从生成阴影开始,让我们先创建一个无光照着色器并命名为 USB_shadow_map。在这个过程中,我们需要两个 pass,其中一个用于阴影投射,另一个用于接收它们(阴影贴图)...
《Unity着色器圣经》3.2.7 | 数据类型
目录索引 译文 在继续学习编写着色器之前,我们需要先了解一下数据类型以及数据类型在 Cg 与 HLSL 之间的微小差异。 当我们在当前版本的Unity中创建着色器时,我们可以找到以下几种精度不同的浮...
《Unity着色器圣经》10.0.1 | Compute shader structure.
目录索引 译文 到目前为止,我们的研究重点是对Unlit和Surface着色器的理解,它们具有非常相似的结构;两者都在ShaderLab字段中执行,正如我们所知,这是一种允许程序和Unity之间通信的声明性语...





