《Unity着色器圣经》8.0.4 | 阴影实现
目录索引 译文 现在我们已经理解了坐标空间的变换流程,我们可以回到先前创建的 USB_shadow_map 着色器中创建一个名为 NDCToUV 的函数。该函数表示从NDC空间变换到UV空间的过程,并将在顶点...
《Unity着色器圣经》3.1.2 | MPD空白与标题
目录索引 译文 这是我们最后介绍的两种绘制器,可以帮助我们让检查器中的属性们更有条理。“空白(Space)”允许我们在两个属性之间加入空白占位,可以方便我们在材质检查器中分隔开特定的属性...
《Unity着色器圣经》3.3.0 | Cg/HLSL顶点输入&输出
目录索引 译文 我们在着色器中常常使用一种叫“结构体(struct)”的数据类型。对有使用过C语言的人来说,结构体是一种复合数据类型,它定义了由相同类型的多个元素组成的分组列表,并允许通过...
《Unity着色器圣经》2.0.7 | 计算着色器
目录索引 译文 计算着色器(Compute Shader)的特点是在显卡上运行,而不是在正常的渲染管线上,在结构上与前文提到的几种着色器有很大不同。 与普通着色器不同的是,计算着色器的扩展名为'.com...
《Unity着色器圣经》3.1.0 | MPD枚举
目录索引 译文 枚举(Enum)跟关键词枚举(KeywordEnum)很像,不同之处在于枚举可以定义一个 '值/id '作为参数,并传递到着色器命令中使用,从而从检查器中动态更改其功能。 声明语法如下所示...
《Unity着色器圣经》4.0.5. | Debugging a shader.
目录索引 译文 当我们用C#编写脚本时,在Unity中,我们可以使用debug.Log函数调试程序。该函数允许我们在控制台上打印代码的操作,但是,该函数在Cg或HLSL中不可用。那么我们如何调试着色器呢?...
《Unity着色器圣经》3.2.8 | Cg/HLSL编程
目录索引 译文 在我们的着色器中,可以找到至少三个编译指令(pragma)。这些都是处理器指令,包含在 Cg 或 HLSL 中,其作用是帮助我们的着色器识别和编译某些函数,如果没有这些指令这些函数就...
《Unity着色器圣经》1.0.5 | UV坐标
目录索引 译文 你给自己喜欢的游戏角色换过皮肤吗?UV坐标与角色换肤这件事息息相关,因为它允许我们在三维模型表面定位二维纹理。以UV坐标作为参考,可以控制网格中的每个顶点与贴图中的哪些像...
《Unity着色器圣经》2.0.1 | 什么是着色器(shader)?
目录索引 译文 欢迎来到第二章,本章我们将进入 Unity 着色器(shader)专题。着色器是一种带有“.shader”后缀(如 color.shader)的程序,经过编译它们可以在项目中实现有趣的效果。着色器的...
《Unity着色器圣经》9.0.2 | 准备Shader Graph环境
目录索引 译文 有两种往项目中添加 Shader Graph 的方式: 在创建项目时选择 URP 或 HDRP 模板 在 Unity 包管理器(路径:Window / Package Manager)中安装 Shader Graph 包 如果我们用 URP ...





