《Unity着色器圣经》3.1.0 | MPD枚举
目录索引 译文 枚举(Enum)跟关键词枚举(KeywordEnum)很像,不同之处在于枚举可以定义一个 '值/id '作为参数,并传递到着色器命令中使用,从而从检查器中动态更改其功能。 声明语法如下所示...
《Unity着色器圣经》3.1.9 | SubShader颜色遮罩
目录索引 译文 颜色遮罩命令允许 GPU 只写入选定的颜色通道,兼容内置渲染管线(Built-in)和可编程渲染管线(SRP)。 当我们新建一个着色器时,GPU 默认写入颜色的所有通道(RGBA)。然而在某...
《Unity着色器圣经》1.0.5 | UV坐标
目录索引 译文 你给自己喜欢的游戏角色换过皮肤吗?UV坐标与角色换肤这件事息息相关,因为它允许我们在三维模型表面定位二维纹理。以UV坐标作为参考,可以控制网格中的每个顶点与贴图中的哪些像...
《Unity着色器圣经》4.0.9. | Ceil function.
目录索引 译文 根据NVIDIA的官方文档: Ceil returns the smallest integer not less than a scalar or each vector component. 这是什么意思?函数ceil(n)将返回一个整数,也就是说,没有小...
《Unity着色器圣经》8.0.6 | 通用渲染管线下的阴影映射
目录索引 译文 我们在实现阴影的过程中使用的技术可以根据我们想要实现的类型而有所不同。我们使用的流程是 Unity 中实现阴影的最佳流程,但具体的实现可能因开发者所选的渲染管线而异,例如,...
《Unity着色器圣经》4.1.4. | Floor function.
目录索引 译文 此函数返回一个不大于其参数的整数值,即没有小数位数的标量或矢量,向下取整,例如1.97f的底数返回1;为什么?因为这个函数将一个数字的小数从总数中减去。 floor (1.56) = 1 it...
《Unity着色器圣经》9.0.7 | 用户自定义函数
目录索引 译文 要使用自定义函数节点,我们必须了解计算机图形学的基本概念以及如何用 HLSL 编写函数。自定义函数允许我们创建自己的函数,并在 Shader Graph 中以节点的形式使用它们。我们可以...
《Unity着色器圣经》6.0.3 | TBN矩阵
目录索引 译文 我们已经知道,TBN矩阵由模型的切线、副切线和法线组成。在本书的第 6.0.1 小节中,我们已经学习了如何将这三种向量从模型空间变换到世界空间,那么接下来我们就要创建一个用于将...
《Unity着色器圣经》11.0.3 | Smooth minimum between two surfaces.
目录索引 译文 在使用球体跟踪时,通常会使用运算符来生成详细的对象,例如,如果我们想在着色器中创建十字架,我们可以使用六个立方体,将它们连接起来并模拟形状(如图11.0.3a所示)。这种技...
《Unity着色器圣经》1.0.3 | 法线
目录索引 译文 假设我们面前有一张白纸,现在请一位朋友在白纸的正面画画。如果白纸的两面都完全一样,我们要如何区分白纸的“正面”和“反面”呢?这就是法线(normal)存在的原因。法线对应垂...