《Unity着色器圣经》8.0.1 | 阴影映射
目录索引 译文 阴影映射(Shadow Mapping)是一种允许我们在场景中生成阴影贴图的技术,它的概念非常简单:光影区域是由我们使用的光源产生的,也就是说,如果光源对应的是平行光,那么阴影的投...
《Unity着色器圣经》4.1.8. | Lerp function.
目录索引 译文 顾名思义,该函数通常用于颜色转换,它允许在两个值之间进行线性插值,例如,我们可以通过lerp,使一个角色的皮肤渐变到另一个皮肤。 其语法如下: float lerp (float a, float b...
《Unity着色器圣经》4.0.3 | 为Cg/HLSL着色器加上透明度
目录索引 译文 在本节中,我们将添加“Blend”,以便着色器具有明确的Alpha通道。在USB_simple_color的先前配置中,我们添加了颜色来更改纹理的色调。现在,值得一提的是,颜色属性有四个通道(...
《Unity着色器圣经》4.1.4. | Floor function.
目录索引 译文 此函数返回一个不大于其参数的整数值,即没有小数位数的标量或矢量,向下取整,例如1.97f的底数返回1;为什么?因为这个函数将一个数字的小数从总数中减去。 floor (1.56) = 1 it...
《Unity着色器圣经》8.0.4 | 阴影实现
目录索引 译文 现在我们已经理解了坐标空间的变换流程,我们可以回到先前创建的 USB_shadow_map 着色器中创建一个名为 NDCToUV 的函数。该函数表示从NDC空间变换到UV空间的过程,并将在顶点...
《Unity着色器圣经》3.1.1 | MPD指数滑条与整数范围
目录索引 译文 这两种绘制器在处理数字范围和精度时非常有用,比如我们可以用指数滑条(PowerSlider)非线性地控制曲线。 指数滑条的声明语法如下所示: [PowerSlider(3.0)] _PropertyName ('Di...
《Unity着色器圣经》7.0.3 | 漫反射
目录索引 译文 一般来说,物体表面有两种类型的反射:漫反射和镜面反射。漫反射(Diffuse Reflection)遵循约翰·海因里希·兰伯特(Johann Heinrich Lambert)的兰伯特余弦辐射体,兰伯特在考...
《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.0.8 | MPD开关
目录索引 译文 译者注:MPD是MaterialPropertyDrawer(自定义材质属性绘制器,即上一小节所介绍的内容)的缩写。 在 ShaderLab 中我们无法使用布尔类型的属性,取而代之的是可以实现相同功能的...
《Unity着色器圣经》7.0.5 | 环境反射
目录索引 译文 环境反射与高光反射的原理类似,不同在于后者仅被主光源影响,而环境光反射被照射到表面上的每一束光线影响。 Fig. 7.0.5a 实时计算这种类型的反射需要占用大量GPU资源,因此一种...






