《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着色器圣经》8.0.3 | 阴影贴图
目录索引 译文 回到在本章开头创建的着色器 USB_shadow_map,在这一小节中,我们将定义一个用于在模型上接收阴影的纹理。为了实现该操作,让我们在颜色 pass 的 Tag 语义块中加入光照模型&...
《Unity着色器圣经》11.0.2 | Projecting a texture.
目录索引 译文 继续使用USB_SDF_fruit着色器,这一次,我们将在之前生成的SDF平面上投影纹理。我们将首先添加一些稍后将使用的属性。 Shader 'USB/USB_SDF_fruit' { Properties { _Maintex ('Te...
《Unity着色器圣经》3.2.0 | SubShader剔除与深度测试
目录索引 译文 要想理解这两个概念,我们需要先了解什么是 Z 缓冲(深度缓冲)和深度测试的工作原理。 在正式开始之前,我们需要先了解的是:像素是有深度值的。这些值被存储在一个叫做深度缓...
《Unity着色器圣经》10.0.4 | Buffers.
目录索引 译文 在某些情况下,需要同时处理多个数据,例如粒子开发、后处理、光线跟踪功能、模拟等。它们的特点是计算单元产生大量的图形负载。然而,对我们有利的是,我们可以在程序中使用两种...
《Unity着色器圣经》1.1.6 | 矩阵与坐标系统
目录索引 译文 矩阵(matrix)是我们在编写着色器时经常遇到的一个概念,是由一组数字组成的阵列。矩阵计算遵循一定的算术规则,经常用于计算机图形学中。 在 Unity 中,矩阵常应用于坐标空间的...
《Unity着色器圣经》2.0.3 | 着色器的种类
目录索引 译文 要想开始我们的着色器(shader)学习之路,我们需要先在 Unity 中创建一个项目。如果你使用 Unity Hub 进行项目管理,那么我建议你使用较新的 Unity 版本(例如2019、2020、2021...
《Unity着色器圣经》4.1.4. | Floor function.
目录索引 译文 此函数返回一个不大于其参数的整数值,即没有小数位数的标量或矢量,向下取整,例如1.97f的底数返回1;为什么?因为这个函数将一个数字的小数从总数中减去。 floor (1.56) = 1 it...
《Unity着色器圣经》11.0.1 | Implementing functions with Sphere Tracing.
目录索引 译文 为了正确使用该技术,有必要在着色器中定义至少两个函数。为此,我们必须考虑: 用于确定曲面类型的SDF函数。 另一个计算球体投影的函数。 在Unity中,我们将创建一个类型为“Unl...
《Unity着色器圣经》3.1.7 | SubShader混合
目录索引 译文 混合(Blending)是将两个像素处理成一个的过程,是内置渲染管线(Built-in)与可编程渲染管线(SRP)都兼容的一种命令。 混合 发生在“合并(merging)”的阶段,它将像素的最...







