注意。Unity 5 引入了标准着色器,它取代了此着色器在 GPU 上运行的程序。 更多信息
参见 术语表。
此着色器的一个考虑因素是,基础纹理的 Alpha 通道同时定义了透明区域和镜面反射贴图。
注意。Unity 5 引入了标准着色器,它取代了此着色器。
剪裁着色器是显示透明对象的另一种方法。剪裁和常规透明着色器之间的区别是
此着色器使用包含在基础纹理中的 Alpha 通道来确定透明区域。如果 Alpha 包含透明和不透明区域之间的混合,则可以手动确定将显示哪些区域的截止点。可以通过调整Alpha 截止滑块来更改此截止值。
与漫反射着色器类似,它计算简单的(朗伯)照明模型。随着表面与其和光源之间的角度减小,表面上的光照也随之减小。光照仅取决于角度,并且不会随着摄像机一个组件,它在场景中创建特定视点的图像。输出要么绘制到屏幕上,要么捕获为纹理。 更多信息
参见 术语表在周围移动或旋转而改变。
法线贴图使用纹理模拟细小的表面细节,而不是花费更多多边形来实际雕刻出细节。它实际上不会改变对象的形状,而是使用称为法线贴图一种凹凸贴图纹理,允许您向模型添加表面细节,例如凸起、凹槽和划痕,这些细节会捕捉光线,就像它们由真实几何体表示一样。
参见 术语表的特殊纹理来实现此效果。在法线贴图中,每个像素计算机图像中的最小单位。像素大小取决于屏幕分辨率。像素光照在每个屏幕像素处计算。 更多信息
参见 术语表的颜色值表示表面法线的角度。然后,通过使用此值而不是几何体中的值,计算光照。在计算对象的光照时,法线贴图有效地覆盖了网格Unity 的主要图形基元。网格构成了 3D 世界的大部分内容。Unity 支持三角形或四边形多边形网格。Nurbs、Nurms、细分曲面必须转换为多边形。 更多信息
参见 术语表的几何体。
您可以导入在 Unity 之外创建的法线贴图,或者您可以导入常规的灰度图像并将其从 Unity 内部转换为法线贴图。(此页面指的是已被标准着色器取代的旧版着色器,但您可以了解有关如何在标准着色器中使用法线贴图的更多信息)
法线贴图是切线空间类型的法线贴图。切线空间是“跟随模型几何体表面”的空间。在此空间中,Z 始终指向远离表面的方向。切线空间法线贴图比其他“对象空间”类型法线贴图稍微昂贵一些,但具有一些优势
镜面反射计算与漫反射相同的简单(朗伯)照明,加上一个与观察者相关的镜面反射高光。这称为 Blinn-Phong 照明模型。它具有一个镜面反射高光,该高光取决于表面角度、光线角度和视角。高光实际上只是模拟光源模糊反射的一种实时适用方法。检查器一个 Unity 窗口,显示有关当前选定的游戏对象、资产或项目设置的信息,允许您检查和编辑值。 更多信息
参见 术语表中的光泽度滑块控制高光模糊的程度。
此外,主纹理的 Alpha 通道充当镜面反射贴图(有时称为“光泽贴图”),定义对象哪些区域比其他区域更具反射性。Alpha 的黑色区域将为零镜面反射,而白色区域将为完全镜面反射。当您希望对象的不同区域反射不同级别的镜面反射时,这非常有用。例如,生锈的金属会使用低镜面反射,而抛光的金属会使用高镜面反射。口红比皮肤具有更高的镜面反射,而皮肤比棉布衣服具有更高的镜面反射。制作精良的镜面反射贴图可以在给玩家留下深刻印象方面发挥巨大作用。
通常,此着色器的渲染成本中等。有关更多详细信息,请查看着色器性能页面。
TransCutBumpedSpecular
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.