《Unity着色器圣经》8.0.3 | 阴影贴图
目录索引 译文 回到在本章开头创建的着色器 USB_shadow_map,在这一小节中,我们将定义一个用于在模型上接收阴影的纹理。为了实现该操作,让我们在颜色 pass 的 Tag 语义块中加入光照模型&...
《Unity着色器圣经》3.2.1 | ShaderLab剔除
目录索引 译文 内置渲染管线(Built-in)和可编程渲染管线(SRP)都支持剔除命令,它能够在像素深度处理中选择删除模型的哪个面。这是什么意思?回想一下,模型对象有内表面和外表面。默认情况...
《Unity着色器圣经》4.1.8. | Lerp function.
目录索引 译文 顾名思义,该函数通常用于颜色转换,它允许在两个值之间进行线性插值,例如,我们可以通过lerp,使一个角色的皮肤渐变到另一个皮肤。 其语法如下: float lerp (float a, float b...
《Unity着色器圣经》3.3.2 | Cg/HLSL顶点着色器
目录索引 译文 顶点着色器对应于渲染管线中的一个可编程阶段,顶点在这里从三维空间变换为屏幕上的二维投影。顶点着色器的最小计算单位相当于一个独立的顶点。 在 USB_simple_color 着色器中,...
《Unity着色器圣经》1.1.4 | 延迟渲染
目录索引 译文 延迟渲染确保了场景中只有一个用于计算每个光源的pass,而且只计算受光源影响的部分像素,这些计算都是通过分离几何体和光源实现的。延迟渲染的优点在于我们可以在场景中设置大量...
《Unity着色器圣经》1.1.0 | 光栅化阶段
目录索引 译文 几何处理的第三个阶段是光栅化。此时,我们的模型已经有了屏幕坐标(二维坐标),现在我们必须在投影区域内找到屏幕上物体所占据的所有像素,这个过程被称为光栅化。光栅化可以看...
《Unity着色器圣经》3.3.0 | Cg/HLSL顶点输入&输出
目录索引 译文 我们在着色器中常常使用一种叫“结构体(struct)”的数据类型。对有使用过C语言的人来说,结构体是一种复合数据类型,它定义了由相同类型的多个元素组成的分组列表,并允许通过...
《Unity着色器圣经》2.0.8 | 光线追踪着色器
目录索引 译文 光线追踪着色器是一种扩展名为“.raytrace”的实验性程序,它可以在 GPU 上进行光线追踪计算。光线追踪着色器只能在高清渲染管线(HDRP)下运行,并且有一些限制,比如如果我们想...
《Unity着色器圣经》5.0.2 | 向量
目录索引 译文 在我们正式开始实现光照之前,我们需要先理解什么是“向量”,并了解它是如何应用在计算机图形学中的。 向量本身必须被视为一条线或一个箭头,具有大小和方向。 Fig. 5.0.2a 上图...
《Unity着色器圣经》6.0.1 | 法线贴图
目录索引 译文 法线贴图是一种帮助我们在不增加模型顶点的前提下为模型表面生成更多细节的技术。 要想实现这个效果,物体表面的法线必须依照某种参考改变原本的方向。我们可以将每个顶点的法线...



