Substance Painter 入门学习
使用Substance Painter的预备知识:对3D概念有个了解,懂的设置材质和UV映射,以及理解何为基于物理的渲染。THE PBR GUIDE(PBR指南)可以到Allegorithmic.com/pbr-guide 上找到,有中文版。该指南分为两部分,卷一涵盖理论,卷二为map创建指南。
官方帮助文档:Substance Painter Docs
创建新项目
File
>New
:Template
: PBR - Metallic Roughness(allegorithmic)Select
:选择需要进行贴图绘制的外部网格模型Import settings
:导入设置。全部取消勾选(UDIM详见帮助文档)Project settings
:Document resolution
- 文档分辨率设置(视口显示分辨率,之后可以无损调整)Normal map format
:OpenGL
/DirectX
Compute tangent space per fragment
:Import mesh mormal maps and baked maps for all materials
:添加网格的烘培贴图与材质(如果需要就添加,没有就用添加)
- 完成设置点击OK,完成新项目创建。完成创建后,进行保存项目。
重新导入网格物体:
Edit
>Project configuration
不同的3D软件烘培生成的Normal map可能不同。不清楚可以随意选择一种OpenGL
/DirectX
,如果法线图出现问题,如:该鼓起来的凹进去或凹进去的鼓出来了。那么就换一种。同样在Edit
>Project configuration
设置。
3D视口操作
- 旋转:
Alt+左键拖动
(围绕鼠标位置旋转);90度旋转:Shift+Alt+左键拖动
。 - 平移:
Alt+中键拖动
- 缩放:
Alt+右键拖动
/滚动滚轮
- 自适应视口大小显示:
F
在2D视图中,操作同3D视图。
在2D中旋转视图后,让其针对视图某个边进行垂直/水平对齐:Shift+Alt+左键点击
。
UI介绍
为了理解各个面板之间的关系,我们将所有的窗口都关闭(自动最小化到docks中,以图标的形式显示),让3D视图区域最大化。Tab
隐藏全部面板窗口。
Edit
>Settings
>Shortcuts
可自定义快捷方式,以下说明的均为默认设置。
各面板可以关闭,也可以拖动其标题栏让它浮动显示,也可吸附到其他位置。
菜单栏
File
:Edit > Settings
:可设置中文,快捷键以及Shelf路径等配置Window
:调整各个功能面板的显示、关闭以及重置窗口Mode
:绘制与渲染模式切换Viewport
:网格模型的显示方式Plugin
:插件Help
:帮助
视图切换
- 3D与2D并显,3D,2D,3D/2D调换:快捷键
F1
,F2
,F3
,F4
。 - 透视/正交切换:快捷键
F5
/F6
; - 相机旋转模式切换:Free rotation(自由旋转),Constrained rotation(受限旋转,基于鼠标位置为中心的旋转);
- 渲染
DISPLAY SETTINGS(显示设置)
其中有三个选项:Environment Settings(环境设置)、Camera Settings(相机设置)、Viewport Settings(视口设置)。
Environment Settings
Substance Painter的3D视图、2D视图中的环境都是由HDRI进行照明的。环境相关的设置在此项中进行(修改设置,3D、2D同步变化)。包含了以下几个主设置项:
- Environment
- Environment Map:切换环境HDIR贴图,或在SHELF中的环境选项卡直接将HDIR图片拖入到视口亦可;
- Environment Opacity:环境不透明度调节
- Environment Exposure(EV):曝光度调节
- Environment Rotation:旋转环境贴图,(快捷键操作:按住
Shift
并在视口中按住右键拖动
); - Environment Blur:环境贴图模糊度
- Shadows(阴影启用设置)
- ×/√ Shadows:关闭/启用阴影
- Computation:阴影计算模式
- Shadow opacity:阴影透明度
Camera Settings
相机调节,特效、抗锯齿、颜色矫正、色调映射,Post not found: FileName 次表面散射效果等设置
Viewport Settings
启用网格线框、颜色样式、透明度等
docks
当关闭所有的窗口面板后,它们都会自动的最小化到位于界面右侧的、以竖向排列docks
栏中。如下图左侧区:
TEXTURE SET LIST & TEXTURE SET SETTINGS & LAYERS
从外部导入3d网格模型到Substance Painter时,原3D程序赋予模型的材质都会一一对应到【TEXTURE SET LIST】列表中的各个项(以下称为“纹理集”)。在列表中的每个“纹理集”都拥有自身的【TEXTURE SET SETTINGS】和【LAYERS】,且互不干扰。
当同一个“纹理集”需要进行材质区分时,可以使用ID(颜色贴图进行遮罩选择)
TEXTURE SET LIST
可对列表的各个“纹理集”的网格物体进行孤立显示、全部显示、隐藏等操作
在3D视图中快捷选择“纹理集”:
Ctrl+Alt+右键
点击相应的网格物体,即可切换到所属“纹理集”每个“纹理集”默认都使用
Main Shader
,并且可以创建多个“Shader Instance”,并为“纹理集”指定某一个“Shader Instance”。在
Settings
下拉列表项的reassign Texture Sets
可以对“纹理集”进行重新分配外部网格物体进行调整后,在重新导入网格物体后,如果网格物体的材质名称、数量发生了变化,可能无法正确匹配原有的“纹理集”,此时可通过
reassign Texture Sets
进行手动匹配。TEXTURE SET SETTINGS
当前选中“纹理集”的具体参数配置(如贴图分辨率、增加/减少通道、网格贴图烘培等)
Size:贴图分辨率;
Channel:对“纹理集”的通道进行配置。该通道中所有的项就是最终素材的通道,可用于Marmoset或Unreal等游戏引擎中;
创建项目时。根据选择的模版不同,通道的数量以及类型会有所不同。例如,使用“PBR - Metallic Roughness(allegorithmic)”模版的通道分别为:“Base Color”、“Height”、“Roughness”、“Metallic”、“Normal”这五个。
如果需要添加通道,通过点击+
来增加。例如通常会增加的AO纹理(Ambient occlusion)。Channels mixing(通过混合):Normal mixing、Ambient Occlusion mixing(通常默认即可)
UV padding:UV孤岛间距
Mesh maps:可以通过
Bake Mesh Maps
烘培网格贴图,或者直接重外部导入已经烘培的网格贴图。
下图所示部分为支持性质的贴图,以供帮助我们处理纹理:
LAYERS
对应选中纹理集
的层堆栈管理(所有的绘制工作信息,应用于此)
SHADER SETTINGS(着色器设置)
该设置面板首部可以对相应名称的“Shader Instance”着色器实例进行更换类型,修改的是对应名称的着色器实例。(“Shader Instance”着色器实例可被多个“纹理集”共用)可以重命名着色器示例以及重置该着色器的设置。
新建项目后,默认所有“纹理集”都使用同一个“Instance SHader(着色器实例)”—— “Main shader”
在Instance name
中可以对着色器进行重命名以及重置该着色器的设置。对某个“纹理集”进行着色器实例修改
- 在某个“纹理集”列后的下拉列表选择
New Shader Instance
创建一个新的Shader,并使用该Shader; - 在选定该纹理集的情况下,
SHADER SETTINGS
将对应于该纹理集当前所选定的“Shader Instance”(着色器实例)。每个 “Shader Instance” 都独立于 “纹理集”,即每个纹理集都可以选择所有已创建的“Shader Instance”作为自己的着色器。每个“Shader Instance”都对应自身的
SHADER SETTINGS
。它们的关系如docks介绍的图示那样。Common Parameters(通用设置)
无
- 在某个“纹理集”列后的下拉列表选择
绘画工具栏
默认位于界面的左侧竖向排列。每个工具在PROPERTIES
都有对应的属性设置面板(3D视口顶部有部分快捷操作,在视口中右键也可以调出Properties
面板)。工具:
- Paint/Physical paint(绘画/物理绘画):
1
/Ctrl+1
- Eraser/Physical Eraser(橡皮/物理橡皮):
2
/Ctrl+2
- Projection/Physical Projection(?):
3
/Ctrl+3
- Polygon Fill(多边形填充):
4
/Ctrl+4
,以模型网格各元素层级或UV孤岛的形式进行选择并填充颜色。 - Smudge():
5
/Ctrl+5
- Clone(relative source)/Clone(absolute source)():
6
/Ctrl+6
PROPERTIES(绘画工具属性)
对应工具的属性项
- BRUSH
- ALPHA
- STENCIL
- MATERIAL
- PROJECTION
笔刷快捷键:
- 笔刷大小:
Ctrl+右键左右拖动
- 硬度(流量):
Ctrl+左键左右拖动
- 旋转角度:
Ctrl+左键上下拖动
- 边缘柔化:
Ctrl+右键上下拖动
Shift
绘制直线
SHELF
SHELF
用于管理项目中使用的所有资源,包括Substance Painter软件预设以及自定义外部导入的资源。其中包含位图、材质、自定义笔刷预设等等。
- 它分为两个部分:分类列表和预览区。
- 可以对当前过滤的状态新建
子SHELF
。 - 可以导入外部资源:1.通过软件内的
import resources
;2.直接拷贝内容文件到SHELF
目录下C:\Users\*username*\Documents\Allegorithmic\Substance Painter\shelf\
添加新资源时,要放到SHELF
文件夹下的对应类型子文件夹内。Bake Mesh Maps
烘培(baking):指将基于网格的信息传递到纹理中的操作。然后,shader或substance filters通过读取这些烘培纹理的信息用于制作高级效果。
大多数现代引擎和离线渲染器都使用这些烘培纹理。Substance Painter使用烘培纹理来添加细节,并通过advanced mask generators 和 filters 快速生成纹理效果
关于烘培功能更加详细的流程介绍:点击这里
可烘培的网格纹理信息
- Normal
- World Space Normals
- ID
- Ambient Occlusion
- Curvature
- Position
- Thickness
导入要烘培的网格
默认情况Substance Painter直接对在
的
导入的模型进行烘培- 在
Common parameters
下的High Definition Meshes
导入被烘培对象(即该项目网格物体,或该项目网格物体的高精度模型) - Bake all textrue sets / Bake Char textrue
- 在
如果需要对使用高模>低模的烘培方式查看:官方文档
https://support.allegorithmic.com/documentation/spdoc/matching-by-name-127074308.html
烘培完成的纹理将自动被
TEXTURE SET SETTINGS
中的Mesh maps引用。
烘培的纹理可在SHELF
列表的Project
中查看。