您的位置:首页 > 移动开发 > Unity3D

Unity3D - 内建标准着色器(StandardShder)

2017-09-03 13:34 197 查看
StanderdShder是一种新增的基于物理着色的内建着色器。它有选择吸收了许多其他不同着色器的特色功能。



StandardShader属性介绍:

属性说明
Rendering Mode渲染模式。在Opaque(不透明)、Fade(渐变)、Transparent(透明)、Cutout(镂空)四个选项
Albedo漫反射。设置漫反射的贴图和颜色值
Metallic金属。设置金属的贴图和颜色值(不能和Smoothness属性同时应用)
– Smoothenss光滑度。设置物理表面的光滑程度(不能和Metallic同时使用)
Normal Map法线贴图。用于描绘物体表面凹凸程度的法线。
Height Map高度图。用于描述视差偏移的灰度图。
Occlusion散射。用于设置照射到物体表面的非直接光照散射的贴图
Emission自发光。用于控制物体表面自发光颜色和强度的贴图
Detail Mask细节蒙版。用于设置Secondary Maps的蒙版贴图
Tilling平铺。用于设置贴图在物体表面的平铺值
Offset偏移。用于设置贴图在物体表面的偏移值
Secondary Maps2号贴图。带UV通道的2号贴图
Detail Albedo细节漫反射。2号贴图的漫反射贴图
Normal Map法线贴图。2号贴图的法线贴图
Tilling平铺。用于设置2号贴图在物体表面的平铺值。
Offset偏移。用于设置2号贴图在物体表面的偏移值。
UV SetUV集。用于设置物体的UV集。
这些贴图本身不包含光照信息。StandardShader是基于物理的着色器,不论材质选择是什么贴图或者什么值,创建的物体都会与光照产生反应。

StandardShader基本原理

基于物理着色的标准着色器是遵循Conservation of Energy(能量守恒)原理,可以创建在不同光照环境下都接近真实的材质来。

应用Conservation of Energy原理的规则:

表面反射的光线不会比它们收到的更多。

光滑的表面会有更多的反射。

粗糙的表面反射会更弱一些。

高光强度会随着漫反射的强度而改变。

所有的表面从某一特定角度看上去会有或多或少的高光。

所有表面在掠射角会有更多反射。

Unity5.0内建了基于物理着色所需的框架。使用标准着色器时,光照需要在Window->Lighting面板中设置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: