Unity - 材质和着色器



在本章中,我们将简要了解材质和着色器。为了更好地理解,我们将创建一个新的3D 项目,而不是我们当前的2D项目。这将帮助我们看到各种变化。

创建新项目后,转到层次结构并右键单击,然后转到3D 对象 → 立方体。这将在场景中间创建一个新的立方体。您可以通过按住右键单击并在场景视图中拖动鼠标来查看立方体周围的环境。您还可以使用滚轮放大和缩小。

现在,单击立方体,查看其属性。

3D Cube Creation

最下面的属性似乎具有一个默认材质和一个标准着色器。

什么是材质?

在 Unity(以及许多 3D 建模方面),材质是一个包含有关使用该材质的对象照明的文件。请注意,灰色的球体表示材质,顶部有一些光线照射进来。

现在,不要与名称混淆;材质与质量、碰撞甚至一般的物理无关。材质用于定义照明如何影响具有该材质的对象。

让我们尝试创建自己的材质。在资源区域中右键单击,转到创建 → 材质并为其命名,例如“我的材质”。

Create Material

这些属性与我们迄今为止研究的任何内容都不一样。这是因为这些属性是在着色器中编程的,而不是在材质中。

材质首先使您的对象可见。事实上,即使在 2D 中,我们也使用一种不需要照明的特殊材质。当然,Unity 为我们生成并应用它到所有内容,所以我们甚至没有注意到它在那里。

什么是着色器?

着色器是一个程序,它定义了屏幕上每个像素是如何绘制的。着色器不是用 C# 甚至 OOP 语言编写的。它们是用一种称为 GLSL 的类似 C的语言编写的,该语言可以向 GPU 提供直接指令以进行快速处理。

广告