《Unity着色器圣经》3.2.3 | ShaderLab深度测试
目录索引 译文 深度测试(ZTest)通常用于在有多 pass 的着色器中生成颜色和深度差异。该属性有七个不同的值,分别是: Less. Greater. LEqual. GEqual. Equal. NotEqual. Always. 它们与比较操...
《Unity着色器圣经》3.1.0 | MPD枚举
目录索引 译文 枚举(Enum)跟关键词枚举(KeywordEnum)很像,不同之处在于枚举可以定义一个 '值/id '作为参数,并传递到着色器命令中使用,从而从检查器中动态更改其功能。 声明语法如下所示...
《Unity着色器圣经》4.0.6. | Adding URP compatibility.
目录索引 译文 到目前为止,我们实现的许多变量、函数和向量都适用于Cg和HLSL,但是,在某些情况下,我们必须添加URP支持,以便着色器可以编译。在着色器图形的情况下,如果我们想通过使用通用R...
《Unity着色器圣经》3.2.9 | Cg/HLSL Include
目录索引 译文 指令“.cginc”(Cg include)包含几个文件,可用于在着色器中引入预定义变量和辅助函数。 如果我们检查 USB_simple_color 着色器,我们可以发现以下几个在 pass 中声...
《Unity着色器圣经》10.0.1 | Compute shader structure.
目录索引 译文 到目前为止,我们的研究重点是对Unlit和Surface着色器的理解,它们具有非常相似的结构;两者都在ShaderLab字段中执行,正如我们所知,这是一种允许程序和Unity之间通信的声明性语...
《Unity着色器圣经》3.3.1 | Cg/HLSL变量与连接向量
目录索引 译文 继续回顾我们的 USB_simple_color 着色器,不难发现着色器中有一个 sampler2D 类型的变量和一个四维向量,用于定义 _ MainTex 纹理: sampler2D _MainTex; float4 _MainTex_S...
《Unity着色器圣经》10.0.4 | Buffers.
目录索引 译文 在某些情况下,需要同时处理多个数据,例如粒子开发、后处理、光线跟踪功能、模拟等。它们的特点是计算单元产生大量的图形负载。然而,对我们有利的是,我们可以在程序中使用两种...
《Unity着色器圣经》1.0.4 | 切线
目录索引 译文 根据Unity官方文档给出的定义: 切线是单位长度的矢量,它顺着网格表面沿水平 (U) 纹理方向。 意思是切线与每个几何面 UV 的 U 坐标轴方向一致。 Fig. 1.0.4a. 通常情况下我们无...
《Unity着色器圣经》4.1.9. | Min and Max function.
目录索引 译文 “min”是指两个向量或标量之间的最小值,而“max”则相反。我们将在不同的操作中经常使用这些函数,例如,我们可以在计算漫反射时用到max函数:用来返回“0”和法线与光方向之间...
《Unity着色器圣经》1.0.3 | 法线
目录索引 译文 假设我们面前有一张白纸,现在请一位朋友在白纸的正面画画。如果白纸的两面都完全一样,我们要如何区分白纸的“正面”和“反面”呢?这就是法线(normal)存在的原因。法线对应垂...



