vault backup: 2025-03-27 22:45:49

This commit is contained in:
2025-03-27 22:45:49 +08:00
parent 180fe2ed37
commit 96b2470f25
5 changed files with 32 additions and 7 deletions

View File

@@ -6,7 +6,10 @@ tags:
rating: ⭐
---
# Toon Lumen
抹平法线思路
## 抹平法线思路
### ViewVector Fix WorldNormal
参考:
- [【UE5】环境光与GI 2抹平法线](https://zhuanlan.zhihu.com/p/25839790454)
`LumenScreenProbeGather.usf`中对法线进行抹平处理。其Pass位于
- DiffuseIndirectAndAO
@@ -38,7 +41,16 @@ if (IsValid(Material))
该方法存在一些问题:**当相机围绕角色旋转时,角色身上的 GI变化会比较明显**。
# Spherical Harmonics
### 低频化WorldNormal & Spherical Harmonics
参考:
- [[UFSH2024]用虚幻引擎5为《幻塔》定制高品质动画流程风格化渲染管线 | 晨风 Neverwind 完美世界游戏】【精准空降到 12:55】](https://www.bilibili.com/video/BV1rW2LYvEox/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e&t=775)
- [[UFSH2024]用虚幻引擎5为《幻塔》定制高品质动画流程风格化渲染管线 | 晨风 Neverwind 完美世界游戏】 【精准空降到 36:52】](https://www.bilibili.com/video/BV1rW2LYvEox/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e&t=2212)
- [ ] 需要实现:法线平滑 => 饱和度平滑。(没说细节,不清楚算法)
- [[UFSH2024]用虚幻引擎5为《幻塔》定制高品质动画流程风格化渲染管线 | 晨风 Neverwind 完美世界游戏】【精准空降到 35:09】](https://www.bilibili.com/video/BV1rW2LYvEox/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e&t=2109)
- [ ] 小于等于High存储的是一个八面体提前加一个Pass进行平滑采样法线方向半球面的平均数值。
- [ ] 大于等于Epic存储的是一个三阶球谐保持1阶球谐数值不变对2~3阶球谐按照系数进行平滑。并且添加能量补偿大致与PBR的结果接近。
![[Lumen_SHData.png|800]]
UE5中采样球谐贴图方法(ReflectionEnvironmentShared.ush)
```c++
/**
@@ -67,3 +79,7 @@ float3 GetSkySHDiffuse(float3 Normal)
}
```
## Cel适配
需要实现Cel多光源方案。
大致的思路就是Copy Lumen结果之后在[[Toon多光源参考|Toon多光源Pass]]中提取亮度再根据亮度采样Ramp计算光影结果。