《Unity着色器圣经》1.0.7 | 渲染管线架构
目录索引 译文 在当前的Unity版本中,一共有三种类型的渲染管线,分别是内置渲染管线、通用渲染管线(在早期版本中被称为轻量渲染管线)和高清渲染管线。 所以,什么是渲染管线呢?要想回答这个...
《Unity着色器圣经》1.0.5 | UV坐标
目录索引 译文 你给自己喜欢的游戏角色换过皮肤吗?UV坐标与角色换肤这件事息息相关,因为它允许我们在三维模型表面定位二维纹理。以UV坐标作为参考,可以控制网格中的每个顶点与贴图中的哪些像...
《Unity着色器圣经》3.0.8 | MPD开关
目录索引 译文 译者注:MPD是MaterialPropertyDrawer(自定义材质属性绘制器,即上一小节所介绍的内容)的缩写。 在 ShaderLab 中我们无法使用布尔类型的属性,取而代之的是可以实现相同功能的...
《Unity着色器圣经》3.0.9 | MPD关键词枚举
目录索引 译文 关键词枚举会在材质检查器中生成一个弹出式样式菜单。与开关不同的是,这种绘制器允许我们为着色器配置多达九种不同的状态。类似我们在上一小节中所提到的,在声明关键词枚举时,...
《Unity着色器圣经》3.2.0 | SubShader剔除与深度测试
目录索引 译文 要想理解这两个概念,我们需要先了解什么是 Z 缓冲(深度缓冲)和深度测试的工作原理。 在正式开始之前,我们需要先了解的是:像素是有深度值的。这些值被存储在一个叫做深度缓...
《Unity着色器圣经》2.0.4 | 标准表面着色器
目录索引 译文 标准表面着色器的特点是代码完善适合编写,可与基本光照模型交互,并且仅适用于内置渲染管线(Built-in RP)。如果我们想创建一个与光线交互的着色器,我们有两种选择: 使用 '无...
《Unity着色器圣经》3.1.0 | MPD枚举
目录索引 译文 枚举(Enum)跟关键词枚举(KeywordEnum)很像,不同之处在于枚举可以定义一个 '值/id '作为参数,并传递到着色器命令中使用,从而从检查器中动态更改其功能。 声明语法如下所示...
《Unity着色器圣经》3.0.3 | ShaderLab的属性
目录索引 译文 属性与一系列可以在 Unity 检查里修改的变量相对应,一共有八种有用的类型。我们可以在动态地、甚至在运行时通过着色器的属性调整效果。声明属性的语法如下所示: PropertyName (...
《Unity着色器圣经》1.1.6 | 矩阵与坐标系统
目录索引 译文 矩阵(matrix)是我们在编写着色器时经常遇到的一个概念,是由一组数字组成的阵列。矩阵计算遵循一定的算术规则,经常用于计算机图形学中。 在 Unity 中,矩阵常应用于坐标空间的...
《Unity着色器圣经》2.0.8 | 光线追踪着色器
目录索引 译文 光线追踪着色器是一种扩展名为“.raytrace”的实验性程序,它可以在 GPU 上进行光线追踪计算。光线追踪着色器只能在高清渲染管线(HDRP)下运行,并且有一些限制,比如如果我们想...