PBR纹理转换简明教程

在这个教程中,我将演示如何将为传统着色器创建的内容转换到 PBR 着色器,如何将内容从一种 PBR 工作流程转换为另一种,并解释现代工作流程中的各种差异。 本教程面向中级到高级用户,因此请务必阅读 Jeff Russell 和我编写的前两篇 PBR 教程(1, 2), 因为基本概念已进行了非常详细的解释,这里可能仅简要提及。

NSDT在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

1、PBR:误解和神话

在开始之前,我想澄清一些事情。 关于什么是基于物理的渲染,以及 PBR 系统需要什么样的纹理输入,存在很多困惑。

首先,使用金属度贴图(metalness map)并不是 PBR 系统的要求,并且使用镜面反射贴图(specular map)并不意味着资产“不是 PBR”。 我经常在论坛上看到有关此问题的评论,当有人看到艺术家创建镜面反射和光泽贴图时,他们经常会问“为什么不使用 PBR?”,所以让我们来分解一下 PBR 到底是什么。

最基本意义上的 PBR 是代表光和物质物理的复杂着色器以及使用合理值校准以代表现实世界材质的艺术内容的组合。 PBR 本质上是一个内容创建和渲染的整体系统,在实际实现中可能而且经常确实存在差异(通常是着色器模型或纹理输入类型),具体取决于你使用的工具或引擎。

此外,将任何旧内容加载到 PBR 着色器中并不能保证物理上准确的结果。 我发现这种误解与“为什么不采用 PBR?”一样频繁地出现。 上面提到的一位。 精美的着色器只是等式的一半,你还需要经过逻辑校准的艺术内容。

最后一件事,它是漫反射(diffuse)还是反照率(albedo)? 这两个术语本质上意味着同一件事,即对象的基色,并且经常互换使用。

2、PBR:发生了什么变化?

要充分了解如何创建或转换适用于 PBR 系统的内容,了解着色器的变化非常重要。 最大的区别之一是现代着色器中照明计算的先进程度。 如今,我们拥有可投射真实阴影的动态光源,以及可提供准确的环境漫反射和镜面反射的基于图像的照明。 这意味着我们不再需要将光照、反射或阴影内容直接绘制到纹理中。 现在,我们比以往任何时候都可以专注于复制材质属性,而不是在特定的照明条件下进行烘焙。

此外,线性空间渲染意味着我们不再需要为漫反射的相反颜色的镜面贴图着色以获得中性白色高光,同时微表面功能中的能量守恒(随着光消散,粗糙的表面将在较大区域上具有更广泛的高光,外观更暗) 无需在镜面贴图中手动使粗糙区域变暗,使光泽区域变亮。 这意味着镜面反射贴图通常只包含每种材料类型的平面值(绝缘体为灰度,某些金属为彩色),而微表面贴图应定义大部分表面变化。

3、传统内容回顾

为了展示传统着色器和现代着色器之间的差异,我使用了我为《至暗之日》创建的一把枪。

该资产是一个很好的例子,因为它展示了许多我通常不会在 PBR 管道中使用的技术,例如:

  • 漫反射太暗,这可能是为了在特定的照明环境下看起来不错而进行了调整,这是一个很大的禁忌。
  • 环境光遮挡和空腔细节直接烘焙到漫反射和镜面反射贴图中。 AO/腔内容应通过单独的输入添加,以便着色器可以以更智能的方式使用它们。 此外,不应将大规模 AO 直接添加到镜面反射通道中,因为遮挡光与反射率较低的表面不同——这就是镜面反射贴图所定义的。
  • 渐变贴图也被烘焙到漫反射和镜面反射贴图中。 渐变贴图可以作为方便的工具来创建局部效果的蒙版(例如,角色下部区域的污垢);但是它们不应该直接在纹理上相乘。
  • 该资源最初使用的着色器不支持光泽贴图(gloss map)。 这意味着镜面贴图必须承担双重任务,试图同时表示反射率和微表面,同时对整个材质使用统一的光泽度值。
  • 镜面反射值是通过眼睛设置的,而不是考虑现实世界的材料属性。 因此,黑色涂漆金属的反光性太强,并且无缘无故地带有轻微的黄色色调,而塑料和橡胶材料的反光性则不够。

4、纹理转换:传统 -> PBR 高光

现在我们了解了传统着色器和 PBR 着色器之间的常见差异,我们可以更新内容以在基于物理的镜面工作流程中工作。

首先,我从反照率和镜面反射贴图中删除了所有烘焙光照和渐变内容。 AO 和空腔内容被移动到两个独立的纹理,并连接到着色器中适当的插槽中。 之后,我将漫反射贴图调亮到更合理的值。

从那里,我将镜面反射内容分为光泽贴图和镜面贴图。 我将所有表面变化从旧的镜面反射贴图移到新创建的光泽贴图中,并更新了基础值以表示每种材质的微表面结构。 如果你已经有了光泽图,应该仔细检查你的值并确保它们有意义。 例如,步枪上的底层原始金属通常比涂层的哑光表面更光滑/更有光泽,而光泽油漆表面的划痕可能会暴露出下面的底漆,底漆会更粗糙。

随着大部分纹理变化从镜面贴图转移到光泽度,我们可以专注于反射率值。 此时,识别什么是金属、什么不是金属非常重要(是的,即使你没有使用金属工作流程)。 原因很简单,绝缘体往往具有约 4% 线性(或 #383838 sRGB)的无色反射率值,最小值和最大值通常在 2-16% 范围内(尽管除宝石之外很少有绝缘体 > 4%) ,而纯金属的反射率值要高得多,通常在 70-100% 范围内。 因此,在寻找正确的反射率值时,准确地弄清楚所代表的材质类型非常重要。

专业提示:在选取值时,涂有不同物质的金属物体被视为绝缘体,只有表面被磨损的地方才是金属的。

5、金属度工作流程与镜面工作流程

在我们进一步讨论之前,了解金属度和镜面工作流程之间的主要区别非常重要。 大多数游戏引擎都支持其中之一;不过,Toolbag 2 两者都支持,这使我们可以直接比较它们的优点。

两个工作流程之间的最大区别在于如何在纹理贴图中定义漫反射和反射率内容。 在镜面工作流程中,这些值是使用两个唯一的纹理贴图显式设置的。

另一方面,金属度工作流程使用反照率图来定义漫反射和反射率内容,并使用金属度图来定义材料是绝缘体还是金属。 其原因是金属导电,这意味着大多数光子(电磁波)会从表面反射,并且任何穿过表面的光子都会被吸收而不是扩散,因此金属通常不具有扩散成分。 另一方面,绝缘体反射非常少量的光 (~4%),并且大部分照射到材料上的光会在表面周围漫射或反射,从而产生均匀的颜色分布。

实际上,这意味着漫反射或镜面反射贴图的大部分甚至全部(如果您的纹理仅具有金属或绝缘体,但不是两者)都将被浪费信息,因此金属度工作流程通常更有效。 然而,在同一纹理中存储漫反射和镜面反射内容的缺点之一是沿材质过渡的伪影。

光泽度和粗糙度图定义相同的信息,但通常采用相反的比例。 对于光泽度贴图,明亮值通常定义平滑/有光泽的表面,而粗糙度贴图通常使用明亮值来定义粗糙/无光泽的表面。 在某些地区,光泽度一词与反射率同义,因此有些人认为粗糙度是一个不太容易混淆的词。 这里重要的不是地图的名称,而是值代表的内容,如果有疑问,请咨询你的技术美工或工程师。

镜面工作流程的优点:

  • 漫射(diffusion)和反射率(reflection)直接通过两个显式输入进行设置,这对于有使用传统着色器经验的艺术家来说可能更可取。
  • 通过全色输入可以更好地控制绝缘体的反射率。

镜面工作流程的缺点:

  • 易于使用不合逻辑的反射率值,从而产生不准确的结果。
  • 比金属度工作流程使用更多的纹理内存。

金属度工作流程的优点:

  • 反照率(albedo)图定义了对象的颜色,无论材质的类型如何,这可能更容易让艺术家从概念上理解。
  • 将材质简化为两类:绝缘体和金属,这可能会使创作具有不切实际纹理值的内容变得更加困难
  • 与全色镜面工作流程相比,使用更少的纹理内存

金属度工作流程的缺点:

  • 材料转变点导致白线伪影
  • 对绝缘体反射率的控制较少*
  • 如果艺术家不了解工作流程,很容易在金属度图中使用不合逻辑的值并破坏系统

一些金属度工作流程提供金属度贴图和辅助镜面反射贴图来控制绝缘体反射率。 目前无法在 Toolbag 2 中进行设置。

有些人声称金属度工作流程更容易理解; 但就我个人而言,我认为这是均匀的。 当艺术家使用不合逻辑的内容时,每个工作流程都可能被破坏,并且根据你的经验,一个工作流程可能比另一个更容易掌握。 从本质上讲,这两种方法客观上并不比另一种更好,它们只是不同。

6、纹理转换:镜面 -> 金属度

现在我们已经正确校准了内容,并且知道了两个工作流程之间的差异,转换贴图实际上非常简单。

首先,根据表面情况为所有材质指定黑色(非金属)或白色(金属)值,创建金属遮罩。 如果你有纹理的 PSD,则可以通过使用各个层的蒙版内容来构建金属度信息来快速完成此操作。 你的金属度贴图应大部分为白色和黑色,灰色值仅适用于具有柔和过渡的效果,如污垢、灰尘、铁锈等。灰色值也可用于部分金属的材质; 然而,这些通常非常罕见。 通常,当金属物体具有任何类型的涂层时,它就充当绝缘体。

获得金属度贴图后,在 Photoshop 中创建一个新文件,并将漫反射贴图添加为背景图层。 然后,在顶部添加镜面反射层,并添加图层蒙版。 将金属度贴图粘贴到镜面反射层的图层蒙版中。 你应该看到的是金属表面所在的镜面内容和绝缘体所在的漫反射内容,这意味着你拥有适合金属度工作流程的正确反照率图。

7、纹理转换:金属度 -> 镜面反射

从金属度工作流程转换为镜面工作流程也很容易。 我们只需要将反照率图中的漫反射和镜面反射信息拆分为显式的漫反射和镜面反射纹理。

漫反射贴图:

  • 将反照率图加载到 Photoshop 中
  • 创建一个新的黑色填充图层(#000000)
  • 将金属度贴图粘贴到填充图层的图层蒙版中

高光贴图:

  • 复制原始反照率图并将其移动到填充图层上方
  • 创建另一个填充图层,值为#383838
  • 将金属度贴图粘贴到填充图层的图层蒙版中
  • 反转图层蒙版

8、比较和免责声明

现在我们可以比较上面解释的两种不同转换工作流程的有效性。

需要注意的一件事是,由于基本内容首先被校准为合理的值,因此转换过程非常顺利。 如果你的基础内容未经过校准,会发现转化方面存在更大的差异。 同样,如果你要表示某些材质,例如具有彩色反射的绝缘体(这通常非常罕见,并且通常最好使用针对头发或虹彩材质等典型材质的自定义着色器来表示),你将在转换过程中丢失一些信息。

理想情况下,你还应该为目标渲染系统创建内容,并且仅在切换系统并更新旧内容或需要为多个系统创建内容时才依赖转换。

9、材质逻辑

那么合理值或校准值是什么意思呢? 不幸的是,这是一个很难回答的问题,它在很大程度上取决于你想要表现的材料类型。 我不会创建备忘单,而是尝试解释一些我喜欢称之为物质逻辑的东西。

坚持图表和扫描数据可能有点困难。 首先,你将无法找到想要重新创建的每种材质的数据,因此需要使用一些逻辑来自行决定哪些值是合适的。 其次,同一材料类型的表面质量可能会因使用年限、磨损、光洁度等各种条件的不同而存在显着差异。

第一步是弄清楚物体是由什么材料制成的。 对于许多物体来说,这很简单,你只需看照片就可以看出它是由金属、塑料、橡胶等制成的。但是,其他物体可能更复杂或可能包含由多种材料制成的部件。 在这里,研究是你的朋友,找到参考图像或类似的现实世界对象进行研究,甚至研究特定对象的制造方式。

一旦你知道它是由什么制成的,你就可以开始得出各种结论。 例如,金属比绝缘体的反射率高得多,橡胶通常比塑料更粗糙,混凝土通常比沥青具有更亮的反照率,等等。 其中大部分可以通过简单的观察来弄清楚。

此时,你可以更具体地考虑希望纹理具有的品质。 例如,油漆往往有各种不同的饰面,从哑光到光泽,塑料也是如此,金属也会有很大的不同,具体取决于表面的抛光程度。

总之,使用基于物理的渲染系统需要许多与创建游戏艺术始终依赖的相同的艺术技能,例如观察和重新创建周围世界材料的能力。 了解 PBR 系统的基本概念非常重要; 然而,归根结底,你需要相信自己的艺术直觉。


原文链接:PBR纹理转换 - BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/196286.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

k8s安装步骤

环境: 操作系统:win10 虚拟机:VMware linux发行版:CentOS7.9 CentOS镜像:CentOS-7-x86_64-DVD-2009 master和node节点通信的ip(master): 192.168.29.164 0.检查配置 本次搭建的集群共三个节点,…

力扣:239. 滑动窗口最大值

题目&#xff1a; 给定一个数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 提示&#xff1a; 1 < nums.length < 10^5-10^4 < n…

ESP32-Web-Server编程-JS 基础 1

ESP32-Web-Server编程-JS 基础 1 概述 前述分别在 HTML 基础 和 CSS 基础 中介绍了 HTML、CSS 的基本内容。HTML 定义了网页中包含哪些对象&#xff0c;CSS 定义了对象的显示样式。JavaScript(LiveScript)是一种运行于客户端的解释性脚本语言&#xff0c;使 HTML 页面更具动态…

【MySql】悲观锁和乐观锁的介绍

一、并发控制 当程序中可能出现并发的情况时&#xff0c;就需要保证在并发情况下数据的准确性&#xff0c;以此确保当前用户和其他用户一起操作时&#xff0c;所得到的结果和他单独操作时的结果是一样的。这就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用…

数据安全:专业服务与您共同对抗.faust数字勒索的威胁

引言&#xff1a; 在数字世界的幕后&#xff0c;一股黑暗势力悄然崛起。.faust勒索病毒&#xff0c;如同数码时代的黑手党&#xff0c;通过其高度精密的加密技术&#xff0c;正在肆虐用户和组织的数据。本文将深入挖掘.faust的狡猾手法&#xff0c;为您揭示其隐藏在数字背后的…

居家适老化设计第三十三条---卫生间之暖风

居家适老化是指为了满足老年人居住需求而进行的住房改造&#xff0c;以提供更加安全、舒适、便利的居住环境。在居家适老化中&#xff0c;暖风系统是一个重要的考虑因素。暖风系统可以提供温暖舒适的室内温度&#xff0c;对老年人来说尤为重要。老年人常常身体机能下降&#xf…

浅谈基于EIoT能源物联网的工厂智能照明系统应用改造

【摘要】&#xff1a;随着物联网技术的发展&#xff0c;许多场所针对照明合理应用物联网照明系统&#xff0c;照明作为工厂的重要能耗之一&#xff0c;工厂的照明智能化控制&#xff0c;如何优化控制、提高能源的利用率&#xff0c;达到节约能源的目的。将互联网的技术应用到工…

PPSSPP (PSP游戏模拟器)最新版安装使用教程

PPSSPP优势 1、目前唯一的也是最好的psp模拟器 可运行绝大多数psp游戏且运行高速&#xff0c;即使是低配手机也能游玩经典大作。 2、支持自定义调节虚拟手柄和实体手柄连接 ppsspp模拟器支持使用虚拟手柄或者连接实体手柄游玩&#xff0c;同时还可以自定义调节按键选项。 …

mac电脑下载Netflix Mac(奈飞客户端)安装教程

Netflix Mac&#xff0c;奈飞官方客户端&#xff0c;带给您无限的电影和剧集体验&#xff01;与朋友分享最新热门剧集、电影&#xff0c;与家人一起享受高品质的流媒体内容。 通过Netflix Mac&#xff0c;您可以轻松地搜索、浏览和观看各种类型的影片&#xff0c;包括剧情片、…

Leetcode刷题之设计循环队列(C语言版)

Leetcode刷题之设计循环队列&#xff08;C语言版&#xff09; 一、题目描述二、题目示例三、题目解析Ⅰ、typedef structⅡ、MyCircularQueue* myCircularQueueCreate(int k)Ⅲ、bool myCircularQueueIsEmpty(MyCircularQueue* obj)Ⅳ、bool myCircularQueueIsFull(MyCircularQ…

老师怎样处理校园欺凌

校园欺凌是一个让人痛心又不可忽视的问题。作为老师&#xff0c;该如何处理这种问题&#xff0c;既能够保护受欺凌的学生&#xff0c;又能够让施暴者得到应有的教训呢&#xff1f; 及时发现并介入 经常关注学生的动态&#xff0c;一旦发现有校园欺凌的苗头&#xff0c;就要及时…

如何轻松将 4K 转换为 1080p 高清视频

由于某些原因&#xff0c;你可能有一些 4K 视频&#xff0c;与1080p、1080i、720p、720i等高清视频相比&#xff0c;4K 视频具有更高的分辨率&#xff0c;可以给您带来更多的视觉和听觉享受。但是&#xff0c;播放4k 视频是不太容易的&#xff0c;因为超高清电视没有高清电视那…

医疗器械企业升级路:直连客户盘活存量,布局出海寻求增量

随着随着医疗各领域VBP&#xff08;带量采购&#xff09;的稳步推进以及医疗机构DRG/DIP&#xff08;按疾病诊断相关分组/病种分值支付&#xff09;的深化应用&#xff0c;降本增效和精细化管理已经成为医院管理者的头等大事。 这也在倒逼医疗器械厂商提升管理水平和营销效率。…

FFA 2023|字节跳动 7 项议题入选

Flink Forward 是由 Apache 官方授权的 Apache Flink 社区官方技术大会&#xff0c;作为最受 Apache Flink 社区开发者期盼的年度峰会之一&#xff0c;FFA 2023 将持续集结行业最佳实践以及 Flink 最新技术动态&#xff0c;是中国 Flink 开发者和使用者不可错过的的技术盛宴。 …

竞赛选题 题目:基于机器视觉的图像矫正 (以车牌识别为例) - 图像畸变校正

文章目录 0 简介1 思路简介1.1 车牌定位1.2 畸变校正 2 代码实现2.1 车牌定位2.1.1 通过颜色特征选定可疑区域2.1.2 寻找车牌外围轮廓2.1.3 车牌区域定位 2.2 畸变校正2.2.1 畸变后车牌顶点定位2.2.2 校正 7 最后 0 简介 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享…

视频文案怎么写,媒介盒子支招

近几年短视频成为风口&#xff0c;各行各业都想分一杯羹&#xff0c;但是一头热的你&#xff0c;是否知道短视频的相关文案怎么写呢?正所谓兵马未动&#xff0c;文案先行&#xff0c;一个合适的文案是上热门的秘密武器&#xff0c;今天媒介盒子就来和大家聊聊&#xff1a;视频…

概要设计检查单、需求规格说明检查单

1、概要设计检查表 2、需求规格说明书检查表 概要&#xff08;结构&#xff09;设计检查表 工程名称 业主单位 承建单位 检查依据 1、设计方案、投标文件&#xff1b;2、合同&#xff1b;3、信息系统相关技术标准及安全规范&#xff1b; 检查类目 检查内容 检查…

汽车电子 -- 车载ADAS之RCW(后碰撞预警系统)

相关法规文件: RCW&#xff1a; GB 4785-2019 汽车及挂车外部照明和光信号装置的安装规定 一、后方碰撞预警系统 RCW&#xff08; Rear Collision Warning &#xff09; 参看&#xff1a;功能定义-后方碰撞预警 RCW 功能可以对自车行驶过程中对后方车辆进行监测&#xff0…

Tableau连接到mysql数据库,配置驱动

Tableau想要连接mysql数据库进行数据的可视化&#xff0c;但是没有ODBC驱动&#xff0c;看了几篇文章写的&#xff0c;不是很清楚&#xff0c;顺便写下自己的思路。 1、下载mysql对应的ODBC驱动 首先要知道自己mysql的版本&#xff0c;然后下载对应的ODBC驱动。 MySQL :: Dow…

colab notebook导出为PDF

目录 方法一&#xff1a;使用浏览器打印功能 方法二&#xff1a;使用nbconvert转换 方法三&#xff1a;在线转换 方法一&#xff1a;使用浏览器打印功能 一般快捷键是CTRLP 然后改变目标打印机为另存为PDF 这样就可以将notebook保存为PDF了 方法二&#xff1a;使用nbconver…