征服Unity3d何三思Unity3D技术文档翻译

【Unity3D技术文档翻译】第2.3篇 标准着色器 (Stan

2018-05-28  本文已影响19人  何三思
Unity3D技术文档翻译

上一章:【Unity3D技术文档翻译】第2.2篇 创建和使用材质

本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Materials, Shaders & Textures】→【Standard Shader】

标准着色器 (Standard Shader)

Unity 标准着色器是一个综合了一系列特性的内置着色器。它可被用于渲染“真实世界(real-world)”物体,比如:石头、木头、玻璃、塑料和金属,并且提供了广泛的 shader 类型及组合。它的所有特性可以很简单地被启用或关闭:使用或不使用纹理框体、使用或不使用 material 编辑器中的参数。

标准着色器同时集成了一个高级光照模型,即基于物理的着色模型(Physically Based Shading,简称 PBS)。PBS 模拟了真实世界中 materials 和光照的交互。PBS 目前只能用于实时绘制。它最好的应用场景是:光照和 material 需要直观、写实地同时存在。

设计 PBS 的初衷是创建一个人性化的方式,使得在不同的光照条件下,获得一致、可信的视觉效果。它模拟了现实中光照是如何表现的,而不需要使用那些时而有效、时而无效的专用模型。为此,它遵循了物理原则,包括能量守恒(意味着物体反射的光线永远不会超过它接收到的)、菲涅尔反射(在切线角,物体表面反射更强烈)、物体表面封闭的方式,等等。

标准着色器被设计用于硬的物体表面(也被称为“建筑材质”),能够处理大多数真实世界的材质,比如石头、玻璃、陶瓷、铜、银、橡胶。对于不是硬的表面,它也能够处理的不错,比如皮肤、头发和布料。

场景中所有模型都使用标准着色器进行渲染

在标准着色器中,大量的 shader 类型(比如:漫反射(Diffuse)、镜面反射(Specular)、凹凸反射(Bumped Specular)、反射(Reflective))被整合进单个 shader 中,使得可以和所有 material 类型配合使用。这样做的好处是:场景中所有区域将使用相同的光照计算。所有使用了标准着色器的模型,将呈现真实、一致、可信的光照和阴影分布。

相关术语

当谈及 Unity 中的 PBS,有一些概念是很有用的。包括:

表面每一点上渲染的光线,与从环境中接收到的光线数量相等。粗糙表面上的一小面受到更宽广区域光线的影响。越光滑的表面反光越强、越细小。图中点A反射了照向摄像机的光线。点B展现了来自天空的蓝色渐变。点C反射了来自周围地面的渐变颜色。 一个使用HDR的场景。车窗上反射的阳光远亮于场景中的其他物体,因为它使用了HDR处理。

如果本文对你有帮助的话,点个赞或者评论一下吧!

上一篇 下一篇

猜你喜欢

热点阅读