《Unity着色器圣经》1.1.6 | 矩阵与坐标系统
目录索引 译文 矩阵(matrix)是我们在编写着色器时经常遇到的一个概念,是由一组数字组成的阵列。矩阵计算遵循一定的算术规则,经常用于计算机图形学中。 在 Unity 中,矩阵常应用于坐标空间的...
《Unity着色器圣经》2.0.4 | 标准表面着色器
目录索引 译文 标准表面着色器的特点是代码完善适合编写,可与基本光照模型交互,并且仅适用于内置渲染管线(Built-in RP)。如果我们想创建一个与光线交互的着色器,我们有两种选择: 使用 '无...
《Unity着色器圣经》3.0.7 | 自定义材质属性绘制器
目录索引 译文 在 ShaderLab 中还有一种叫做“绘制器”的属性类型,这个基类允许我们在 Unity 检查器中创建自定义属性,从而方便用户在着色器中进行条件编程。 通常情况下,除非我们需要声明它...
《Unity着色器圣经》2.0.8 | 光线追踪着色器
目录索引 译文 光线追踪着色器是一种扩展名为“.raytrace”的实验性程序,它可以在 GPU 上进行光线追踪计算。光线追踪着色器只能在高清渲染管线(HDRP)下运行,并且有一些限制,比如如果我们想...
《Unity着色器圣经》4.1.7. | Frac function.
目录索引 译文 这个函数返回一个值的小数部分,也就是说,它的十进制值,例如,1.534f的frac返回0.534f; frac (3,27) = 0,27f It’s the same as 3,27f - 3.frac (0,47) = 0,47ffrac (1,0) = 0...
《Unity着色器圣经》3.0.5 | 颜色与向量类型
目录索引 译文 有了这两种属性,我们就可以在着色器中定义颜色与向量了。 现在假设我们想编写一个用于在运行时更改颜色的着色器,那么,为了能够修改颜色的 RGBA 值,我们就需要为着色器添加颜...
《Unity着色器圣经》5.0.2 | 向量
目录索引 译文 在我们正式开始实现光照之前,我们需要先理解什么是“向量”,并了解它是如何应用在计算机图形学中的。 向量本身必须被视为一条线或一个箭头,具有大小和方向。 Fig. 5.0.2a 上图...
《Unity着色器圣经》3.0.4 | 数字与滑条类型
目录索引 译文 数字(number)与滑条(slider)两种类型的属性允许我们在着色器中添加数值类型的变量。假设我们打算创建一个实现光照功能的着色器,“0”代表亮度为 0%,“1”代表亮度为 100% ...
《Unity着色器圣经》3.2.6 | CGPROGRAM/ENDCG
目录索引 译文 在前面几个小节学习到的所有部分都是用 ShaderLab 这种声明式语言编写的,而我们在图形编程语言方面的真正挑战是从 CGPROGRAM 或 HLSLPROGRAM 声明开始的。 默认情况下,我们会发...
《Unity着色器圣经》4.1.6. | Length function.
目录索引 译文 正如其标题所提到的,length函数是指表示两点之间距离的大小。这个功能在创建几何形状时很有用,例如,我们可以生成圆形或具有圆角的多边形。 其语法如下: float length (float ...




