Unity3D - 内建标准着色器(StandardShder)
2017-09-03 13:34
197 查看
StanderdShder是一种新增的基于物理着色的内建着色器。它有选择吸收了许多其他不同着色器的特色功能。
StandardShader属性介绍:
这些贴图本身不包含光照信息。StandardShader是基于物理的着色器,不论材质选择是什么贴图或者什么值,创建的物体都会与光照产生反应。
StandardShader基本原理
基于物理着色的标准着色器是遵循Conservation of Energy(能量守恒)原理,可以创建在不同光照环境下都接近真实的材质来。
应用Conservation of Energy原理的规则:
表面反射的光线不会比它们收到的更多。
光滑的表面会有更多的反射。
粗糙的表面反射会更弱一些。
高光强度会随着漫反射的强度而改变。
所有的表面从某一特定角度看上去会有或多或少的高光。
所有表面在掠射角会有更多反射。
Unity5.0内建了基于物理着色所需的框架。使用标准着色器时,光照需要在Window->Lighting面板中设置。
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 Maps | 2号贴图。带UV通道的2号贴图 |
Detail Albedo | 细节漫反射。2号贴图的漫反射贴图 |
Normal Map | 法线贴图。2号贴图的法线贴图 |
Tilling | 平铺。用于设置2号贴图在物体表面的平铺值。 |
Offset | 偏移。用于设置2号贴图在物体表面的偏移值。 |
UV Set | UV集。用于设置物体的UV集。 |
StandardShader基本原理
基于物理着色的标准着色器是遵循Conservation of Energy(能量守恒)原理,可以创建在不同光照环境下都接近真实的材质来。
应用Conservation of Energy原理的规则:
表面反射的光线不会比它们收到的更多。
光滑的表面会有更多的反射。
粗糙的表面反射会更弱一些。
高光强度会随着漫反射的强度而改变。
所有的表面从某一特定角度看上去会有或多或少的高光。
所有表面在掠射角会有更多反射。
Unity5.0内建了基于物理着色所需的框架。使用标准着色器时,光照需要在Window->Lighting面板中设置。
相关文章推荐
- Unity3D 5 官方教程:标准着色器
- Unity3D 5 官方教程:标准着色器:内容和环境;金属与镜面工作流
- Unity3D 5 官方教程:标准着色器之材质参数(一)
- Unity3D 5 官方教程:标准着色器之材质参数(二)
- Unity3D开发之标准顶点光照Shader模板
- 【浅墨Unity3D Shader编程】之六 暗黑城堡篇: 表面着色器(Surface Shader)的写法(一)
- Unity3d的着色器
- Unity3d 着色器语法(Shader)
- Unity3d 顶点和片段着色器学习笔记
- 着色器【unity3d教程】
- Unity3D Shader官方教程翻译(十九)----Shader语法,编写表面着色器
- Unity3D Shader官方教程翻译(十九)----Shader语法,编写表面着色器
- [Unity3d]Shader 着色器 学习前了解知识
- Unity3D - 图形性能优化:优化着色器加载时间
- Unity3d的着色器
- [Unity3d]Shader 着色器 学习前了解知识
- Unity3D Shader官方教程翻译(十九)----Shader语法,编写表面着色器
- 【浅墨Unity3D Shader编程】之六 暗黑城堡篇: 表面着色器(Surface Shader)的写法(一)
- 教程 :在unity3d中编写你的第一个着色器
- Unity3D Shader官方教程翻译(十九)----Shader语法,编写表面着色器