Init
This commit is contained in:
204
03-UnrealEngine/LevelScene/LookDev流程.md
Normal file
204
03-UnrealEngine/LevelScene/LookDev流程.md
Normal file
@@ -0,0 +1,204 @@
|
||||
---
|
||||
title: LookDev流程
|
||||
date: 2022-12-21 11:25:40
|
||||
excerpt:
|
||||
tags: LookDev
|
||||
rating: ⭐⭐⭐
|
||||
---
|
||||
|
||||
# 前言
|
||||
## 工作内容
|
||||
- [[#流程解析]]
|
||||
- [x] [[#从拍摄真实环境照片到UE复现流程]](可选)
|
||||
- [ ] [[#材质检查]]
|
||||
- [[#配套的UE插件]]
|
||||
- [ ] 材质等窗口中的PreviewScene设置(位于Windows- PreviewSceneSettings中)
|
||||
- [ ] PBR 灯光
|
||||
- [ ] PBR Camera
|
||||
- [ ] OpenColorIO 与sRPG、Tonemapping(ACES)
|
||||
- DCC软件配套设置
|
||||
- [ ] UE
|
||||
- [ ] Maya
|
||||
- [ ] SubstancePainter
|
||||
- [ ] 配套的规范文档与检测工具
|
||||
- [ ] PPT与教学视频
|
||||
|
||||
## 相关资料
|
||||
- LookDevelopment
|
||||
- UnrealEngine
|
||||
- [x] [Enabling a Look Development Workflow for UE4](https://www.youtube.com/watch?v=70uNXZbUJVE)
|
||||
- [x] [Learn About Exterior Rendering and Vegetation Look Development in Unreal Engine](https://www.youtube.com/watch?v=Ehg4sLxOH1o)
|
||||
- [ ] 李文磊:[关于建立资产统一审查预览环境的一些说明](https://www.unrealengine.com/zh-CN/tech-blog/a-few-tips-for-building-unified-assets-reviewing-enviroment)
|
||||
- [ ] [安柏霖:物理正确的lookdev[1/2]--光照环境](https://zhuanlan.zhihu.com/p/338352699)
|
||||
- [ ] [安柏霖:物理正确的lookdev[2/2]--物理矫正](https://zhuanlan.zhihu.com/p/338352994)
|
||||
- [ ] [陈浮生:Unreal Engine 4 Look Dev制作浅析分享](https://zhuanlan.zhihu.com/p/394608910)
|
||||
- [ ] [日天:UE5引擎LookDev场景](https://zhuanlan.zhihu.com/p/500774794)
|
||||
- Maya
|
||||
- [在maya中还原substance painter材质效果(视频教程)](https://zhuanlan.zhihu.com/p/22741348)
|
||||
- 材质检查
|
||||
- [PBRBaseColor表](https://physicallybased.info/)
|
||||
- SubstancePainter
|
||||
- https://substance3d.adobe.com/tutorials/courses/the-pbr-guide-part-1-zh
|
||||
- https://substance3d.adobe.com/tutorials/courses/the-pbr-guide-part2-zh
|
||||
- Other
|
||||
- [Lighting and LookDev environment with physical units](https://www.slideshare.net/KurumiUranishi/lighting-and-lookdev-environment-with-physical-units)
|
||||
- 其他人的LookDev预设
|
||||
- Swats tuts
|
||||
- https://www.youtube.com/watch?v=OnbZvAO4enU
|
||||
- https://www.youtube.com/watch?v=YDFElKTs-Qk
|
||||
- [Dušan Ković的Maya Arnold LookDev工具](https://www.youtube.com/watch?v=VgkF3AsRAYo)
|
||||
- https://www.youtube.com/watch?v=oII26qMdpK8
|
||||
- https://www.youtube.com/watch?v=jyq11xOp-B4
|
||||
|
||||
## 概念整理
|
||||
开发LookDevelopment流程主要目的是:**建立一套流程,统一的资产评估标准,使得生产出来的资产符合物理规律**的同时保证资产**看起来漂亮**。
|
||||
|
||||
不同的人对于LookDevelopment的考虑与需求也不同,个人的方案如下:
|
||||
1. 构建一个矫正用关卡与配套蓝图工具。
|
||||
1. 用作XR拍摄、三维扫描、PBR流程等光照环境矫正。
|
||||
2. 构建一套多光照的室内外与影棚环境关卡与配套蓝图工具。
|
||||
1. 用作资产检查。
|
||||
3. 相关DCC的矫正工作
|
||||
4. 构建一个,类似李文磊视频中的图表。
|
||||
1. 方便在以后的创作进行环境参考。
|
||||
5. 以上方案都需要设置色彩管理,保证所有的显示设备(不同色域)看起来效果一样。
|
||||
|
||||
参考:
|
||||
1. [[#从拍摄真实环境照片到UE复现流程]](可选)
|
||||
|
||||
备注:
|
||||
1. 建立LookDev Neutrally 场景,***建立UE调试场景,最终应该让场景中的色卡呈现矫正后的标准颜色。***
|
||||
1. 关键的一点就是通过Gray球的亮度确定HDR贴图的亮度。
|
||||
2. 比色卡最好能贴在UI上。
|
||||
3. 在其他DCC软件中还原。
|
||||
|
||||
# 流程解析
|
||||
## 从拍摄真实环境照片到UE复现流程
|
||||
视频地址:[Enabling a Look Development Workflow for UE4](https://www.youtube.com/watch?v=70uNXZbUJVE)
|
||||
|
||||
主要过程是通过在现实世界拍摄比色卡照片与8方向照片,再使用8方向照片制作一个带有色彩管理数据的HDR Cubemap。最后再使用矫正环境关卡与内置蓝图工具进行手动环境矫正。但该流程中有部分步骤较为繁琐,如果不追求极致的准确性,其实是可以省略或者改进。
|
||||
|
||||
|
||||
|
||||
为什么不去网上下载HDR图片再进行矫正呢?因为你没办法了解到所有的细节,也无法保证颜色的正确性。所以有条件还是现场去做一下。
|
||||

|
||||
|
||||
### 所需工具
|
||||
1. Full frame DSLR with good AEB features (具有良好AEB功能的全画幅数码相机)
|
||||
2. Remote trigger (遥控触发器)
|
||||
3. General purpose lens, e.g 24-105 Macro (通用镜头,如24-105 Macro)
|
||||
4. 8mm fisheye, e.g Sigma EX DG fisheye (8毫米鱼眼镜头,如适马EX DG鱼眼镜头)
|
||||
5. Good quality tripod & head (优质的三脚架和云台)
|
||||
6. Nodal Ninja
|
||||
7. Nodal EZ-Leveller
|
||||
8. 18% Grey/White balance card (18%灰/白平衡卡)
|
||||
9. X-Rite ColorChecker
|
||||
10. 18% grey calibration ball (18%灰色校准球)
|
||||
11. Chrome calibration ball (铬制校准球)
|
||||
12. Lightweight tripod & clamp (轻型三脚架和夹具)
|
||||
|
||||
一些额外省钱方式:
|
||||

|
||||
|
||||
### 拍摄ColorCkecker与8方向矫正球照片
|
||||
主要是获取所有动态范围光照信息,之后再UE中进行还原。下面2个图主要介绍HDR的重要性:
|
||||

|
||||
|
||||
户外场景:
|
||||

|
||||
|
||||
8方向拍摄以保证可以获得所有的信息。**注意:在拍摄过程中不能修改EV值。**
|
||||

|
||||
|
||||

|
||||
|
||||
GraySpher、ChromeSphere与比色卡需要放在中心点上。切保证摄像机正对着球的中心,所以得每个球各拍一次。
|
||||

|
||||
|
||||

|
||||
|
||||
### 拍摄并且制作全景图
|
||||

|
||||
|
||||
#### 操作步骤
|
||||
1. 拍摄比色卡,以此来获得颜色变换矩阵(取得色彩管理文件),并对色差进行neutrally。
|
||||
2. “标准”包围式拍摄矫正球与地面照片,并且应用上述取得的色彩管理文件。
|
||||
3. 拍摄全景贴图,并在PtGUI中拼接。
|
||||
4. 在全景图中将主要光源与支架Mask掉(通过PS的仿制图章……我认为这个不太完美)
|
||||

|
||||
|
||||
该团队还编写一个自动化工具对之前拍摄的8方向照片进行矫正,大致用到一下库:
|
||||
- OpenimagelO: image read/write/processing
|
||||
- Colour: (colour science lib) reference Macbeth values & space conversion
|
||||
- DCRAW wrapper: RAW to TIFF conversion
|
||||
- Exiftool wrapper: read/write image Exif & ICC metadata
|
||||
- Pyzbar: QR code decoding
|
||||
- OpenCV: simplified image read/write & image rectification
|
||||
|
||||
### 颜色矫正
|
||||
相关软件
|
||||
- Adobe LightingRoom
|
||||
- Photoshop
|
||||
- ColorChecker Camera Calibration
|
||||
- 达芬奇
|
||||
|
||||
软件操作参考视频:
|
||||
- https://www.youtube.com/watch?v=4DOXXhMgQAs
|
||||
- https://www.youtube.com/watch?v=GD-0H_38vrM&t=390s
|
||||
- https://www.bilibili.com/video/BV1p54y1B77j/?spm_id_from=333.337.search-card.all.click&vd_source=d47c0bb42f9c72fd7d74562185cee290
|
||||
|
||||
### UE部分
|
||||
场景里需要有这2个蓝图Actor,蓝图相关逻辑位于视频28:29左右位置。
|
||||
- BP_LightStudio:HDR环境球模型与天光
|
||||
1. 能够设置HDR Image的旋转与亮度(材质实例控制)
|
||||
2. SkyLight Capture
|
||||
3. 模拟场景中的主要光源(视频中演示了面光源与聚光灯,视频34:00)
|
||||
- 色卡、矫正球模型
|
||||
|
||||
#### ChromeSphere矫正
|
||||
这一步主要复现场景中的灯光。
|
||||

|
||||

|
||||
|
||||
这一步需要确定关闭所有后处理效果。
|
||||

|
||||
|
||||
#### GraySphere
|
||||
GraySphere 矫正需要进入HDR Eye Adaptation。主要是为了匹配照片与场景GraySphere的亮度。
|
||||

|
||||
需要分别矫正环境光(IBL)与场景内主要光源。矫正环境光时需要关闭场景内其他光源,比较球体暗面亮度来调节环境球HDR亮度(材质)。
|
||||
|
||||
PS.但这样其实有问题,因为这些灯光亮度是直接可以测算出来的……
|
||||
## 线性空间 => sRGB => Tonemapping
|
||||
|
||||
## Lighting and LookDev environment with physical units
|
||||
|
||||
## 材质检查
|
||||
摘自Substance教学。
|
||||

|
||||
图60:表面是金属吗?金属/粗糙度工作流程
|
||||
|
||||

|
||||
图61:表面是金属吗?高光反射/光泽度工作流程。
|
||||
|
||||
# 配套的UE插件
|
||||
对于美术来说只需要了解基础的概念以及掌握对应的矫正工具用法即可生产出正确的资产,对此需要开发一些插件以满足需求:
|
||||
|
||||
## LookDev环境模板
|
||||
1. LookDev Neutrally场景
|
||||
2. LookDev 模型预览场景(室内/室外)
|
||||
1. 设置近剪裁面 10=>1
|
||||
2. 方向光勾选Atomosphere/Fog Sun Light 与LightShaftOcclusion
|
||||
3. AtomosphericFog勾选Atomopshere Affect Sun Illumination
|
||||
4. 光线追踪相关控制选项。
|
||||
|
||||
1. 使用AutomaticMaterial 包中的比色卡
|
||||
2.
|
||||
|
||||
### 环境
|
||||
晴天、阴天和室内
|
||||
室外晴天,室外阴天和室内
|
||||
|
||||
# DCC软件中的环境调整
|
||||
- Maya
|
||||
- Substance Painter
|
9
03-UnrealEngine/LevelScene/MovieRenderQueue命令行渲染.md
Normal file
9
03-UnrealEngine/LevelScene/MovieRenderQueue命令行渲染.md
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
title: MovieRenderQueue命令行渲染
|
||||
date: 2022-12-21 11:28:53
|
||||
excerpt:
|
||||
tags: MovieRenderQueue
|
||||
rating: ⭐
|
||||
---
|
||||
|
||||
https://zhuanlan.zhihu.com/p/177696943
|
85
03-UnrealEngine/LevelScene/Ue4中的场景物体融合方式与优化.md
Normal file
85
03-UnrealEngine/LevelScene/Ue4中的场景物体融合方式与优化.md
Normal file
@@ -0,0 +1,85 @@
|
||||
## 前言
|
||||
突然想起几个月前在Quixel发布的一篇技术文章,里面归纳了几个场景物体融合方式(主要是与地形融合),甚是不错。隧简单翻译并分享给大家。
|
||||
|
||||
原文地址:https://quixel.com/blog/2020/1/22/blending-megascans-assets-in-ue4?utm_campaign=Tutorials&utm_source=youtube&utm_medium=social&utm_content=Goddess%20Temple%20in%20UE4:%20Lighting%20%26%20Blending
|
||||
|
||||
这里使用MegaScans中的"Damp Soil"、"Cut Grass 2×2 M"与"Grass Clumps"资产。
|
||||
|
||||
## World aligned texturing
|
||||

|
||||
直接译为**世界坐标映射贴图**。通过模型顶点的世界坐标将贴图映射到模型上。大致原理如下:
|
||||

|
||||
|
||||
官方的AutomotiveMaterialPack与TwinmotionMaterialsPack材质包使用这个方法。这个方法广泛用在CAD、建筑等方面。这里介绍的主要是与地形融合的思路.
|
||||
|
||||
大致用法如下:
|
||||

|
||||
上图展示了通过控制x、y值来控制贴图平铺效果。
|
||||
|
||||
映射到球体模型的效果如下:
|
||||

|
||||
|
||||
一个完整的PBR材质大概是这个样子的:
|
||||

|
||||
材质实现:https://blueprintue.com/blueprint/101g7t_k/
|
||||
|
||||
>这个方法的缺点在于平面与模型的接缝处过度十分突兀。但它的性能十分的好,配合其他方法使用能得到很好的效果。
|
||||
|
||||
## Pixel depth offset
|
||||

|
||||
为了解决过度突兀的问题,我们可以通过**像素深度偏移**(Pixel depth offset)配合DitherTemporalAA节点来解决这个问题。
|
||||
|
||||
大致用法如下:
|
||||

|
||||
|
||||
效果如下:
|
||||

|
||||
|
||||
>仔细观察过度处,可以看得出过度非常自然了。同时因为这个方法主要用到了TAA的抖动算法,通过视觉暂留现象来实现半透明过度,所以性能十分的好。缺点是材质Alpha较低时,交界面容易产生错误的混合效果。当Alpha较高时容易产生TAA特有的鬼影现象。
|
||||
|
||||

|
||||
|
||||
材质实现:https://blueprintue.com/blueprint/bwa_kbpc/
|
||||
|
||||
## Distance field mesh blending
|
||||

|
||||
该文作者认为这个可能是最佳方案。因为**距离场模型融合**是直接修改地形顶点,属于真实的过度效果。所以不会出现任何抖动问题。
|
||||
|
||||
大致效果如下:
|
||||
https://www.bilibili.com/video/BV1ef4y1X7QZ/
|
||||
{% raw %}
|
||||
<iframe src="//player.bilibili.com/player.html?aid=287028163&bvid=BV1ef4y1X7QZ&cid=234182542&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
|
||||
{% endraw %}
|
||||
|
||||
|
||||
使用之前需要执行以下步骤:
|
||||
1. 在Settings-Project Settings中搜索distance fields,确保Generate Mesh Distance Fields选项处于勾选状态。
|
||||
2. 在想要融合到地面的物体的属性中,取消勾选Affect Distance Field Lighting选项。
|
||||
|
||||

|
||||
|
||||
接下来就创建材质了:
|
||||

|
||||
|
||||
右边的粉色框中节点将会连入Normal槽,你可以用一个参数变量来控制混合强度。因为当前材质没有混合地形与模型物体的纹理,只是平滑了交接面附近的法线。所以为了得到更好的效果,我们使用WorldAlignedTexture工作流程,并给它们与地形接近的纹理,这会达到一个更好的融合效果。
|
||||
|
||||
由于我们禁用了Affects Distance Field Lighting,这使得该融合物体无法使用距离场AO以及距离场阴影。这个方法性能消耗较大(用了曲面细分以及置换),虽然会有很好的效果,但如果你对性能优化以及场景的把控不足,还是不建议使用。
|
||||
|
||||
材质实现:https://blueprintue.com/blueprint/bqo9vg8i/
|
||||
|
||||
## Runtime virtual texturing
|
||||
实时虚拟贴图(RVT),这个文档上都有就不翻译了。
|
||||
|
||||
材质实现:https://blueprintue.com/blueprint/md12pcb5/
|
||||
|
||||
## 另一个视频中的优化技巧
|
||||
这里我再追加另一个Quiexl视频中的性能技巧:
|
||||
|
||||
- 使用Ue4的MergeActor将多个Mesh进行合并。视频2:00
|
||||
- 使用MegaScans的Ue4插件,将多个材质合并到一起。视频2:50
|
||||
|
||||
具体操作请参考:https://www.bilibili.com/video/BV1Zv41117xB/
|
||||
|
||||
{% raw %}
|
||||
<iframe src="//player.bilibili.com/player.html?aid=244561268&bvid=BV1Zv41117xB&cid=233968254&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
|
||||
{% endraw %}
|
Reference in New Issue
Block a user