unity再战PBR材质流程与材质制作实践

article/2025/11/11 15:40:40

这篇在上一篇的基础上增加了对PBR的认识,主要包括了金属度和粗糙度(光滑度)的测试

unity里PBR流程,PBR材质属性具体分析

传统模型到PBR的流程,一些PBR制作转换工具介绍

以前这篇http://blog.csdn.net/shenmifangke/article/details/50587290


先上一张unity Scene场景的实时效果图(材质的贴图来自网络经过修改)

这两种材质都是基于unity自带材质球就是standard


下面就说说这个建立材质球后默认的材质

Unity5中重点推出了一套基于物理的着色(Physically Based Shading,PBS)的多功能Shader,叫做标准着色器(Standard Shader)。这套Shader的设计初衷是化繁为简。想用这样的一个多功能Shader,来代替之前多种多样的Shader各司其职,对于不同的材质效果,需要不同的Shader的局面。

 Unity 5中目前有两个标准着色器,一个名为Standard,我们称它为标准着色器的标准版,另一个名为Standard(Specular Setup),我们称它为标准着色器的高光版,它们共同组成了一个完整的PBS光照明模型,且非常易于使用。其实这两个Shader基本差不多,只是有细微的属性参数上的区别。标准版这边的_Metallic(金属性)、_MetallicGlossMap(金属光泽贴图),被高光版的_SpecColor(高光颜色)、_SpecGlossMap(高光颜色法线贴图)所代替。

标准着色器主要是针对硬质表面(也就是建筑材质)而设计的,可以处理大多数现实世界的材质,例如石头、陶瓷、铜器、银器或橡胶等。同时,它也可以非常出色地处理一些非硬质表面的材质,例如皮肤、头发或布料等。

上面一段理论摘自http://blog.csdn.net/poem_qianmo/article/details/49556461


下面是我翻译的官方金属度流程的截图(我认为金属度流程的更通用,但是由于技术限制也会有一些效果无法用这种材质实现)



可以看出光滑度(粗糙度)是存储在金属度的透明通道里的

这也就是为什么没有放贴图的时候有个smooth滑块,但是放了贴图以后就没有这项了,因为这项需要被一个通道的图片控制

下面我们来做个测试


可以在ps里做一张如上图所示的tiff或者tga格式,(估计psd也行吧)

注意可以新建一个通道,单独在上面绘制,不需要可见

另外说下png不行,它的透明通道是自动的

另外把红色通道做的和其他不一样也方便测试高光材质流程(这个可以自己调整材质测试)

然后就能得到下面图的效果


可以发现这两个参数还是非常重要的,严重影响了视觉效果

一般性的如果需要在unity里有好的PBR效果,需要三张贴图(可以说是四张图 因为金属度和粗糙度合并了)

颜色贴图

金属度+粗糙度

法线贴图

如果需要更好的效果可以再增加height map ,occlusion map ,细节贴图等等

需要注意到是occ贴图在unity中遇到光照会自动计算,能显著增加空间效果


另外说下金属度和高光流程,其实两种是可以在一定程度上相互转化的,substance就可以搞定(可以看后面讲到)

两种其实也没有强求用哪种,只是金属度的参数更加理性,其他的还是要看项目的艺术效果

当然虽然两种材质在效果上有很大重合空间,也有不能达到的地方,举个例子,对于黑色几乎不反光的物体

http://blog.csdn.net/shenmifangke

金属度不能做到高光流程那么黑的效果(除非去掉环境球)

下面是金属度和流程的区别,我加了自己的想法(需要更多内容可以关注或者加我qq)


PBR图制作流程

流程上有很多东西可以使用,我这里说的主要是substance designer软件

因为unity直接支持它的材质,sbsar格式能直接在unity中使用,而且据说还有其他软件的支持性

Quxel\Substance\Maya\3dsMax\UE\U3D5\ce已经全线PBR向进化,Disney Principled BRDF就是一个很好的范例,Hyperion和最新的RenderMan都采用了这个技术。虚幻引擎4中的材质系统也是基于这个模型的简化版(Real Shading in UE4)。

SP(substancepainter)、SD(substance designer)、Quxel(NDO、DDO、3DO以及MegaScan材质库,四个合起来叫做Quixel Suite套件)这些生产工具使得美术在工作时增加了效率,理清了思路,越来越趋向于及时反馈和所见即所得,而且与几大引擎接口互导也方便了许多,很大程度的减轻了纯美术方面的负担。


下面是简单操作流程图

具体的就不说了,自己可以搜教程有很多的,需要注意到是软件有两个

substance designer是修改和创建材质的,如果需要直接刷贴图可以用substance painter 可以直接看到刷上去的效果

他们之间可以互相导,主要还是看工作流程,下面这张就是工作关系


substance designer可以导出可供unity使用的材质球

substance painter可以画贴图到substance designer看效果并修改

link贴图和模型


这里记得双击项目才能关联带有多套uv的模型(原始模型不好看还有版权问题 所以打个码)


这是处理后的效果,可以看出没打码的部分更加真实了

http://blog.csdn.net/shenmifangke

一般导出的时候可以直接将粗糙度贴图并入金属度的alpha通道里

要导出材质的话可以之际publish如下

也可以选中结果图片后在贴图窗口里直接导出图片



http://chatgpt.dhexx.cn/article/ysQZMQyn.shtml

相关文章

我的Substance Designer 学习笔记02-PBR材质学习理解

首先定义PBR:Physics-based rendering,基于物理的渲染。 由来。2012年迪士尼公司在技术论坛发布的文章,讲述自己作品的制作流程。 2014年被某大佬提出简化版本的制作流程。优化后只用5中材质通道。 BSDF:双向散射率分布函数(Blender) BRDF:双向反射率分布函数&a…

unity build-in管线中的PBR材质Shader分析研究

PBR分析 前言我理解的PBRPBR组成部分直接光漫反射直接光镜面反射(高光)间接光漫反射间接光镜面反射最终加和 结果 前言 近来,用到了几次Surface Shader,对于其封装好的PBR计算部分,如果不是复杂的效果其实是挺方便实用…

UE4 虚幻引擎,处理PBR材质

处理PBR(Physically Based Rendering基于物理的渲染)材质 虚幻引擎可以提供非常真实的基于物理的材质和渲染系统,基于物理的材质是一种以三种材质核心输入为基础的实时算法,十分方便美术师使用。这三种输入分别是Mtallic金属感&a…

【LearnOpenGL】-PBR材质

PBR,或者用更通俗一些的称呼是指基于物理的渲染(Physically Based Rendering),它指的是一些在不同程度上都基于与现实世界的物理原理更相符的基本理论所构成的渲染技术的集合。正因为基于物理的渲染目的便是为了使用一种更符合物理学规律的方式来模拟光线…

源码分析学习记录(9)——PBR材质

2021SCSDUSC Dust3D中的材质采用PBR模型。PBR就是Physically-Based Rendering的缩写,意为基于物理的渲染。它提供了一种光照和渲染方法,能够更精确的描绘光和表面之间的作用。由于PBR基于物理的渲染旨在以物理上合理的方式模拟光,因此与我们…

UE4 PBR材质使用记录

参考文章:https://www.bilibili.com/video/BV1Dv411w7x6 参考文章:https://www.bilibili.com/video/BV1TQ4y167sG 引擎:4.26 初试两种纹理混合 纹理来源于【初学者内容包】 首先,新建一个材质文件。 然后将纹理拖入材质中。 …

01_ue4进阶_PBR材质

PBR材质,在不同的角度,通过不同的图层,来虚拟出一些物理效果。 用一个砖墙的例子来演示一下不同的图层。 这些图共同组成一个材质。 建立两个文件夹 将这些图层导入 这是基本颜色图片。 法线图:给材质一种凹凸不平的立体感。 标…

PBR物理材质

本人笔记,不喜勿喷 PBR在英文里面是 Physically Based Rendering 翻译成中文就是基于物理的渲染。 反射 散射 生成diffuse 漫反射 反射 生成Specular 镜面反射 进入物体生成透射 实现pbr渲染,抽象出来了相应的渲染方程 BSDF 双向散射表面分布函数&…

UE4材质(二):PBR材质

摘自并整理自虚幻官方教程:https://learn.unrealengine.com/course/2449699 课程中的工程项目文件下载: 链接:https://pan.baidu.com/s/1o7m3pR7BvaCYAmlx57B9HQ 提取码:uenb 一、PBR材质介绍 Physical Based Rendering&#xf…

Unity PBR材质

unity两种pbr材质工作流 Standard材质(metallic工作流) 通过metallic参数(金属度)和smoothness(光滑度)影响反射率和强度 非金属sRGB[50-243]金属sRGB[186-255]metallic金属度(灰度图,R通道值)smoothness光滑度(金属…

【数学】Frobenius范数

Frobenius范数简称F范数,这个范数是针对矩阵而言的,具体定义可以类比向量的L2范数。 简单来说就是矩阵的每个元素的平方和的开方。

日志-Frobenius norm,共轭矩阵

Frobenius norm 就是矩阵各个元素平方和,然后开平方根。 如果这个算出来的difference太大,就说明backpropagation出现了错误。 可以使用numpy算出两个矩阵之间frobenius norm numpy.linalg.norm import numpy as np print(np.linalg.norm(np.array([1…

Perron-Frobenius定理和一些相关定理的证明

图片来源:非负矩阵之Perron–Frobenius定理 - 纯粹的文章 - 知乎 Oskar Perron 在1907年发表了关于正矩阵的一些基本发现称之为Perron定理,后来Frobenius将其推广到非负矩阵上,称为Perron-Frobenius定理。 下面先证明一些预备定理&#xff0…

基于Frobenius范数的标准NMF更新公式推导

目标函数 在标准非负矩阵分解中,其目标函数很简单,形式为,其中V为观测矩阵,W为基矩阵,H为系数矩阵, 这里假设V为mn维的,W为ml维的,H为ln维的。 更新公式推导 其更新公式是基于梯度下降法&…

线性代数笔记 Frobenius 范数和矩阵的迹之间的关系

线性代数笔记:Frobenius 范数_UQI-LIUWJ的博客-CSDN博客 先给出结论: 举个例子: 任取22的矩阵A 它的 Frobenius 范数为: 而 所以

Frobenius标准型与Jordan标准型总结

1.数域不同 Frobenius标准型:任意数域P Jordan标准型:复数域 Jordan标准型,可以形式化理解为把Frobenius标准型中的d(λ)继续分解,进而细化到一次因式的乘机,因此Frobenius标准型为任意数域,Jordan标准型为复数域 2…

弗罗贝尼乌斯范数 matlab,【Frobenius norm(弗罗贝尼乌斯-范数)(F-范数)】

(1)Frobenius 范数(F-范数) 一种矩阵范数,记为:。 即矩阵中每项数的平方和的开方值。 这个范数是针对矩阵而言的,具体定义可以类比 向量的L2范数。 可用于 利用低秩矩阵来近似单一数据矩阵。 用数学表示就是去找一个秩为k的矩阵B,使得矩阵B与原始数据矩阵A的差的F范数尽可…