《Unity着色器圣经》4.0.8. | Abs function.
目录索引 译文 这个函数指的是一个数字的绝对值,作为参数,我们可以传递标量值和向量。 其语法如下: // return the absolute value of n float abs(float n) { return max(-n, n); } float2 a...
《Unity着色器圣经》1.0.9 | 几何处理阶段
目录索引 译文 应用阶段结束后,CPU 通过两个主要步骤向 GPU 请求我们在电脑屏幕上看到的图像: 配置渲染状态,即配置几何处理到像素处理的一系列阶段。 在屏幕上绘制图像。 几何阶段主要负责处...
《Unity着色器圣经》4.0.4 | HLSL函数的结构
目录索引 译文 与C#中的函数一样,在HLSL中,函数声明可以返回空(void)或者是一个值。我们必须使用依赖于函数类型的“声明”;它们确定一个值是对应于输入(in)、输出(out)、全局变量(unifo...
《Unity着色器圣经》1.0.5 | UV坐标
目录索引 译文 你给自己喜欢的游戏角色换过皮肤吗?UV坐标与角色换肤这件事息息相关,因为它允许我们在三维模型表面定位二维纹理。以UV坐标作为参考,可以控制网格中的每个顶点与贴图中的哪些像...
《Unity着色器圣经》1.1.6 | 矩阵与坐标系统
目录索引 译文 矩阵(matrix)是我们在编写着色器时经常遇到的一个概念,是由一组数字组成的阵列。矩阵计算遵循一定的算术规则,经常用于计算机图形学中。 在 Unity 中,矩阵常应用于坐标空间的...
《Unity着色器圣经》6.0.1 | 法线贴图
目录索引 译文 法线贴图是一种帮助我们在不增加模型顶点的前提下为模型表面生成更多细节的技术。 要想实现这个效果,物体表面的法线必须依照某种参考改变原本的方向。我们可以将每个顶点的法线...
《Unity着色器圣经》3.2.5 | ShaderLab Pass
目录索引 译文 着色器的第三个重要部分被称为 Pass。 在一个着色器中可以有多个 pass,但 Unity 在用户新建着色器时,在默认情况下只会在子着色器语义块中预设一个 pass。 回头看看我们在章节初...
《Unity着色器圣经》1.0.8 | 应用阶段
目录索引 译文 应用阶段从CPU开始,负责场景中的一系列操作,例如: 碰撞检测 纹理动画 键盘输入 鼠标输入 .... 应用阶段的功能是读取内存中的存储的模型数据,随后生成图元(如三角形、直线、...
《Unity着色器圣经》9.0.1 | 什么是Shader Graph
目录索引 译文 我们已经学习了大部分渲染管线的结构,并了解了 Unity 中着色器的工作原理。在本章节中,我们将介绍一种新的构建着色器的方式:Shader Graph,其结构基于我们之前所学习的知识。 ...
《Unity着色器圣经》3.2.3 | ShaderLab深度测试
目录索引 译文 深度测试(ZTest)通常用于在有多 pass 的着色器中生成颜色和深度差异。该属性有七个不同的值,分别是: Less. Greater. LEqual. GEqual. Equal. NotEqual. Always. 它们与比较操...