《Unity着色器圣经》3.2.8 | Cg/HLSL编程
目录索引 译文 在我们的着色器中,可以找到至少三个编译指令(pragma)。这些都是处理器指令,包含在 Cg 或 HLSL 中,其作用是帮助我们的着色器识别和编译某些函数,如果没有这些指令这些函数就...
《Unity着色器圣经》3.0.9 | MPD关键词枚举
目录索引 译文 关键词枚举会在材质检查器中生成一个弹出式样式菜单。与开关不同的是,这种绘制器允许我们为着色器配置多达九种不同的状态。类似我们在上一小节中所提到的,在声明关键词枚举时,...
《Unity着色器圣经》2.0.1 | 什么是着色器(shader)?
目录索引 译文 欢迎来到第二章,本章我们将进入 Unity 着色器(shader)专题。着色器是一种带有“.shader”后缀(如 color.shader)的程序,经过编译它们可以在项目中实现有趣的效果。着色器的...
《Unity着色器圣经》4.0.7. | Intrinsic functions.
目录索引 译文 在Cg和HLSL中,我们都可以找到有助于我们编程效果的内在函数。这样的函数对应于一般的数学运算,我们根据希望获得的结果在特定情况下使用它们。我们可以找到最常见的函数如下: ...
《Unity着色器圣经》1.0.4 | 切线
目录索引 译文 根据Unity官方文档给出的定义: 切线是单位长度的矢量,它顺着网格表面沿水平 (U) 纹理方向。 意思是切线与每个几何面 UV 的 U 坐标轴方向一致。 Fig. 1.0.4a. 通常情况下我们无...
《Unity着色器圣经》2.0.7 | 计算着色器
目录索引 译文 计算着色器(Compute Shader)的特点是在显卡上运行,而不是在正常的渲染管线上,在结构上与前文提到的几种着色器有很大不同。 与普通着色器不同的是,计算着色器的扩展名为'.com...
《Unity着色器圣经》6.0.2 | DXT压缩
目录索引 译文 法线贴图对于增加模型表面的细节来说非常有用。然而,法线贴图很大,这会给 GPU 造成较大的图形负担,导致移动设备发烫等影响用户体验的问题。出于上述原因,在着色器中压缩法线...
《Unity着色器圣经》8.0.4 | 阴影实现
目录索引 译文 现在我们已经理解了坐标空间的变换流程,我们可以回到先前创建的 USB_shadow_map 着色器中创建一个名为 NDCToUV 的函数。该函数表示从NDC空间变换到UV空间的过程,并将在顶点...
《Unity着色器圣经》3.0.5 | 颜色与向量类型
目录索引 译文 有了这两种属性,我们就可以在着色器中定义颜色与向量了。 现在假设我们想编写一个用于在运行时更改颜色的着色器,那么,为了能够修改颜色的 RGBA 值,我们就需要为着色器添加颜...
《Unity着色器圣经》3.2.3 | ShaderLab深度测试
目录索引 译文 深度测试(ZTest)通常用于在有多 pass 的着色器中生成颜色和深度差异。该属性有七个不同的值,分别是: Less. Greater. LEqual. GEqual. Equal. NotEqual. Always. 它们与比较操...





