《Unity着色器圣经》3.0.8 | MPD开关
目录索引 译文 译者注:MPD是MaterialPropertyDrawer(自定义材质属性绘制器,即上一小节所介绍的内容)的缩写。 在 ShaderLab 中我们无法使用布尔类型的属性,取而代之的是可以实现相同功能的...
《Unity着色器圣经》4.0.6. | Adding URP compatibility.
目录索引 译文 到目前为止,我们实现的许多变量、函数和向量都适用于Cg和HLSL,但是,在某些情况下,我们必须添加URP支持,以便着色器可以编译。在着色器图形的情况下,如果我们想通过使用通用R...
《Unity着色器圣经》8.0.3 | 阴影贴图
目录索引 译文 回到在本章开头创建的着色器 USB_shadow_map,在这一小节中,我们将定义一个用于在模型上接收阴影的纹理。为了实现该操作,让我们在颜色 pass 的 Tag 语义块中加入光照模型&...
《Unity着色器圣经》1.1.1 | 像素处理阶段
目录索引 译文 使用前序阶段得到的数据进行插值,当所有像素都准备好投射到屏幕上后,最后一个阶段——像素处理阶段就准备开始了。片元着色器阶段(也称为像素着色器阶段)负责决定每个像素是否...
《Unity着色器圣经》3.1.9 | SubShader颜色遮罩
目录索引 译文 颜色遮罩命令允许 GPU 只写入选定的颜色通道,兼容内置渲染管线(Built-in)和可编程渲染管线(SRP)。 当我们新建一个着色器时,GPU 默认写入颜色的所有通道(RGBA)。然而在某...
《Unity着色器圣经》4.1.7. | Frac function.
目录索引 译文 这个函数返回一个值的小数部分,也就是说,它的十进制值,例如,1.534f的frac返回0.534f; frac (3,27) = 0,27f It’s the same as 3,27f - 3.frac (0,47) = 0,47ffrac (1,0) = 0...
《Unity着色器圣经》10.0.1 | Compute shader structure.
目录索引 译文 到目前为止,我们的研究重点是对Unlit和Surface着色器的理解,它们具有非常相似的结构;两者都在ShaderLab字段中执行,正如我们所知,这是一种允许程序和Unity之间通信的声明性语...
《Unity着色器圣经》2.0.6 | 屏幕特效着色器
目录索引 译文 屏幕特效着色器(Image Effect Shader)在结构上与无光照着色器(Unlit Shader)非常相似。屏幕特效主要应用于内置渲染管线(Built-in RP)中的后处理效果,需要使用C#中的函数 ...
《Unity着色器圣经》3.3.0 | Cg/HLSL顶点输入&输出
目录索引 译文 我们在着色器中常常使用一种叫“结构体(struct)”的数据类型。对有使用过C语言的人来说,结构体是一种复合数据类型,它定义了由相同类型的多个元素组成的分组列表,并允许通过...
《Unity着色器圣经》7.0.1 | 光照模型
目录索引 译文 “光照模型”指的是模型表面与光源之间相互作用的结果。根据该定义,光照模型包括了光源属性(如颜色、强度等)和指定的材料属性。 在着色器中,我们可以逐像素或逐顶点地计算光...