SD2.PBR材质系统 您所在的位置:网站首页 什么叫PB系统 SD2.PBR材质系统

SD2.PBR材质系统

2024-07-13 07:41| 来源: 网络整理| 查看: 265

本章不讨论PBR材质系统的实现细节,而是一些基础的知识普及,具体到实时渲染那个专栏会深入研究。

什么是PBR? PBR “基于物理的渲染(Physically Based Rendering)” – 简称 PBR

对计算机图形学感兴趣的朋友可以去阅读《PBRT》open in new window这本书

传统材质 为什么要用到PBR呢? 这里不得不提到游戏中的传统三件套了diffuse(漫反射)、specular(镜面反射)和normal(法线)

Diffuse(漫反射):

定义:漫反射是表面对光的散射,即光线在物体表面被吸收然后均匀地散射到各个方向。特点:漫反射表面通常不会产生明显的高光,而是呈现出均匀的亮度。

Specular(镜面反射):

定义:镜面反射是光线直接从表面反射,形成明亮的高光。特点:通常用于模拟物体表面的光泽和反光。

Normal(法线):

定义:法线是在表面上的垂直方向,用于描述表面的方向。特点:法线在渲染中用于计算光照和阴影,影响表面的视觉外观。 在早期的游戏中,由于计算机硬件的限制,包括处理能力和图形性能,游戏开发者无法使用复杂的光线追踪和全局光照等技术来实现真实的物理效果。 因此,游戏开发者必须依赖于艺术家的创造力和设计技巧来表现光照、高光和阴影等效果。 难怪我解包有些游戏贴图上还会带着光影和高光信息。 是的,可能是你已经先入为主的接触了PBR材质,所以对这个比较陌生。下面我们以木板为例康康有哪些PBR材质通道 PBR贴图Albedo Map(反照率贴图)/Base Color Map(基础颜色贴图):描述物体表面的颜色,即光线直接照射表面后的颜色。在PBR中,Albedo Map通常表示物体表面对入射光的反射程度。Normal Map(法线贴图):用于模拟表面的微小细节和凹凸不平。法线贴图通过改变每个像素的法线方向,使得光照计算考虑到这些微小细节。Metallic Map(金属度贴图):描述物体表面的金属或非金属属性。黑色通常表示非金属,白色表示金属。Roughness Map(粗糙度贴图)/Glossiness Map(光泽度贴图):描述物体表面的粗糙度。在Metal/Roughness工作流中,Roughness Map通常表示表面的粗糙度;而在Specular/Glossiness工作流中,Glossiness Map表示光泽度。Height/Displacement Map(高度/位移贴图):描述表面的高度信息,用于模拟凹凸不平的表面细节。在一些情况下,这种信息也可以通过法线贴图来表示。Emissive Map(自发光贴图):描述物体表面的自发光部分,即在没有外部光照的情况下自己发光的区域。Ambient Occlusion Map(环境光遮蔽贴图):描述物体表面各部分受到环境光照的遮蔽程度。黑色表示较强的遮蔽,白色表示无遮蔽。 很显然,我们的木板上并没有安装灯具和金属,所以金属和发光贴图都是黑色。 PBR材质的两个流程 我看到很多渲染引擎例如Vray(早期版本)好像没有PBR贴图 确实,VrayNEXT(4.0)以后加入了金属工作流,才使得他的工作流更加解决游戏那一套。但他使用的是PBR流程中的离线流程那一套! 听你的意思是游戏的pbr和离线渲染的pbr不一样? 是的,一般来说,游戏是要保证实时性,对各种计算公式都有自己的简化,比如UE大大简化了PBR,满足1ms/60fps的要求。

Metal/Roughness Workflow:

Metallic(金属度): 使用这个工作流的材质系统中,通常通过一个Metallic Map来定义物体表面的金属度。黑色表示非金属,白色表示金属。Roughness(粗糙度): 使用Roughness Map来描述表面的粗糙度,白色表示光滑,黑色表示粗糙。

这种工作流较为直观,因为它使用了两个相对简单的参数来描述材质的重要特性。

Specular/Glossiness Workflow:

Specular(镜面反射): 这个工作流使用Specular Map来定义物体表面的镜面反射。Specular Map中的颜色通道通常表示表面的反射颜色。Glossiness(光泽度): 使用Glossiness Map来描述表面的光泽度,白色表示光滑,黑色表示光泽度较低。

这种工作流与Metal/Roughness不同,但在一些离线渲染引擎和工具中仍然被使用。

参考链接open in new window

通道合并 说到简化,好像有些软件打包的PBR材质好像没有Metallic、Roughness、Ambient Occlusion,取而代之的是一张叫做ARM的贴图。 是的,为了节省内存,我们会将Metallic、Roughness、Ambient Occlusion三个通道贴图各自存放到贴图的R、G、B三个通道中。 我有问题!为什么这三个贴图可以合并?法线、颜色贴图不能? 首先一个常识问题,颜色贴图你猜他为什么叫颜色贴图? Metallic、Roughness、Ambient Occlusion都是纯色贴图,你可以用PS点开看他们三个通道的颜色值是一致的。 颜色空间 可是我导入UE中为什么看不到应该有的光泽?我明明给了0.25的光泽度? 应该是你贴图颜色空间没有正确设置 贴图类型颜色空间Albedo Map / Base Color Mapgamma_srgbNormal Mapgamma_linearMetallic Mapgamma_linearRoughness Map / Glossiness Mapgamma_linearAmbient Occlusion Mapgamma_linearHeight/Displacement Mapgamma_linearEmissive Mapgamma_linearARM(Ambient, Roughness, Metallic)gamma_linearHeight/Displacement.EXR/HDR 等32位的贴图lin_srgb

修改前

修改后



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有