版本:Unity 6 (6000.0)
语言:English
透明剪裁凹凸漫反射
自发光着色器系列

透明剪裁凹凸镜面反射

注意。Unity 5 引入了标准着色器,它取代了此着色器在 GPU 上运行的程序。 更多信息
参见 术语表

此着色器的一个考虑因素是,基础纹理的 Alpha 通道同时定义了透明区域和镜面反射贴图。

透明剪裁属性

注意。Unity 5 引入了标准着色器,它取代了此着色器。

剪裁着色器是显示透明对象的另一种方法。剪裁和常规透明着色器之间的区别是

  • 此着色器不能具有部分透明区域。所有内容都将完全不透明或完全透明。
  • 使用此着色器的对象可以投射和接收阴影!
  • 使用此着色器时,通常与透明着色器相关的图形排序问题不会发生。

此着色器使用包含在基础纹理中的 Alpha 通道来确定透明区域。如果 Alpha 包含透明和不透明区域之间的混合,则可以手动确定将显示哪些区域的截止点。可以通过调整Alpha 截止滑块来更改此截止值。

法线贴图属性

漫反射着色器类似,它计算简单的(朗伯)照明模型。随着表面与其和光源之间的角度减小,表面上的光照也随之减小。光照仅取决于角度,并且不会随着摄像机一个组件,它在场景中创建特定视点的图像。输出要么绘制到屏幕上,要么捕获为纹理。 更多信息
参见 术语表
在周围移动或旋转而改变。

法线贴图使用纹理模拟细小的表面细节,而不是花费更多多边形来实际雕刻出细节。它实际上不会改变对象的形状,而是使用称为法线贴图一种凹凸贴图纹理,允许您向模型添加表面细节,例如凸起、凹槽和划痕,这些细节会捕捉光线,就像它们由真实几何体表示一样。
参见 术语表
的特殊纹理来实现此效果。在法线贴图中,每个像素计算机图像中的最小单位。像素大小取决于屏幕分辨率。像素光照在每个屏幕像素处计算。 更多信息
参见 术语表
的颜色值表示表面法线的角度。然后,通过使用此值而不是几何体中的值,计算光照。在计算对象的光照时,法线贴图有效地覆盖了网格Unity 的主要图形基元。网格构成了 3D 世界的大部分内容。Unity 支持三角形或四边形多边形网格。Nurbs、Nurms、细分曲面必须转换为多边形。 更多信息
参见 术语表
的几何体。

创建法线贴图

您可以导入在 Unity 之外创建的法线贴图,或者您可以导入常规的灰度图像并将其从 Unity 内部转换为法线贴图。(此页面指的是已被标准着色器取代的旧版着色器,但您可以了解有关如何在标准着色器中使用法线贴图的更多信息)

技术细节

法线贴图是切线空间类型的法线贴图。切线空间是“跟随模型几何体表面”的空间。在此空间中,Z 始终指向远离表面的方向。切线空间法线贴图比其他“对象空间”类型法线贴图稍微昂贵一些,但具有一些优势

  1. 可以在变形模型上使用它们 - 凸起将保留在变形表面上并正常工作。
  2. 可以在模型的不同区域重复使用法线贴图的一部分;或在不同的模型上使用它们。

镜面反射属性

镜面反射计算与漫反射相同的简单(朗伯)照明,加上一个与观察者相关的镜面反射高光。这称为 Blinn-Phong 照明模型。它具有一个镜面反射高光,该高光取决于表面角度、光线角度和视角。高光实际上只是模拟光源模糊反射的一种实时适用方法。检查器一个 Unity 窗口,显示有关当前选定的游戏对象、资产或项目设置的信息,允许您检查和编辑值。 更多信息
参见 术语表
中的光泽度滑块控制高光模糊的程度。

此外,主纹理的 Alpha 通道充当镜面反射贴图(有时称为“光泽贴图”),定义对象哪些区域比其他区域更具反射性。Alpha 的黑色区域将为零镜面反射,而白色区域将为完全镜面反射。当您希望对象的不同区域反射不同级别的镜面反射时,这非常有用。例如,生锈的金属会使用低镜面反射,而抛光的金属会使用高镜面反射。口红比皮肤具有更高的镜面反射,而皮肤比棉布衣服具有更高的镜面反射。制作精良的镜面反射贴图可以在给玩家留下深刻印象方面发挥巨大作用。

性能

通常,此着色器的渲染成本中等。有关更多详细信息,请查看着色器性能页面

TransCutBumpedSpecular

透明剪裁凹凸漫反射
自发光着色器系列