《Unity着色器圣经》4.0.9. | Ceil function.
目录索引 译文 根据NVIDIA的官方文档: Ceil returns the smallest integer not less than a scalar or each vector component. 这是什么意思?函数ceil(n)将返回一个整数,也就是说,没有小...
《Unity着色器圣经》3.2.3 | ShaderLab深度测试
目录索引 译文 深度测试(ZTest)通常用于在有多 pass 的着色器中生成颜色和深度差异。该属性有七个不同的值,分别是: Less. Greater. LEqual. GEqual. Equal. NotEqual. Always. 它们与比较操...
《Unity着色器圣经》3.2.5 | ShaderLab Pass
目录索引 译文 着色器的第三个重要部分被称为 Pass。 在一个着色器中可以有多个 pass,但 Unity 在用户新建着色器时,在默认情况下只会在子着色器语义块中预设一个 pass。 回头看看我们在章节初...
《Unity着色器圣经》3.2.0 | SubShader剔除与深度测试
目录索引 译文 要想理解这两个概念,我们需要先了解什么是 Z 缓冲(深度缓冲)和深度测试的工作原理。 在正式开始之前,我们需要先了解的是:像素是有深度值的。这些值被存储在一个叫做深度缓...
《Unity着色器圣经》3.3.1 | Cg/HLSL变量与连接向量
目录索引 译文 继续回顾我们的 USB_simple_color 着色器,不难发现着色器中有一个 sampler2D 类型的变量和一个四维向量,用于定义 _ MainTex 纹理: sampler2D _MainTex; float4 _MainTex_S...
《Unity着色器圣经》3.0.4 | 数字与滑条类型
目录索引 译文 数字(number)与滑条(slider)两种类型的属性允许我们在着色器中添加数值类型的变量。假设我们打算创建一个实现光照功能的着色器,“0”代表亮度为 0%,“1”代表亮度为 100% ...
《Unity着色器圣经》1.0.4 | 切线
目录索引 译文 根据Unity官方文档给出的定义: 切线是单位长度的矢量,它顺着网格表面沿水平 (U) 纹理方向。 意思是切线与每个几何面 UV 的 U 坐标轴方向一致。 Fig. 1.0.4a. 通常情况下我们无...
《Unity着色器圣经》3.0.7 | 自定义材质属性绘制器
目录索引 译文 在 ShaderLab 中还有一种叫做“绘制器”的属性类型,这个基类允许我们在 Unity 检查器中创建自定义属性,从而方便用户在着色器中进行条件编程。 通常情况下,除非我们需要声明它...
《Unity着色器圣经》4.1.0. | Clamp function.
目录索引 译文 当我们想要限制运算的结果时,可以使用这个函数。默认情况下,它允许我们通过设置最小值和最大值来定义数值范围内的值。 当我们写一个函数时,我们会遇到一些运算,这些运算会导...
《Unity着色器圣经》4.1.1. | Sin and Cos function.
目录索引 译文 这些三角函数指的是角度的正弦和余弦,即: 余弦是指,相邻边和斜边之间的比率。 正弦是指,对边和斜边之间的比率。 其语法如下: float cos (float n); float2 cos (float2 n); ...






