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

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

View File

@ -119,7 +119,8 @@ rating: ⭐⭐⭐
1. [x] CCA Tonemapping 1. [x] CCA Tonemapping
2. [x] GT Tonemapping https://github.com/yaoling1997/GT-ToneMapping 2. [x] GT Tonemapping https://github.com/yaoling1997/GT-ToneMapping
3. [x] AGX Tonemapping https://github.com/EaryChow/AgX 3. [x] AGX Tonemapping https://github.com/EaryChow/AgX
6. [ ] Tonemapping不够用了: Local Tonemapping方案总结 https://zhuanlan.zhihu.com/p/519457212 4. [ ] 其他Tonemapping: Local Tonemapping方案总结 https://zhuanlan.zhihu.com/p/519457212
5. [ ] ***Fix 运行的时候出现的渲染错误***。
9. [ ] ToonRimLighting 9. [ ] ToonRimLighting
1. [x] 材质边缘光(位于引擎插件/ToonUtility/MaterialFunction/MF_RimLighting 1. [x] 材质边缘光(位于引擎插件/ToonUtility/MaterialFunction/MF_RimLighting
2. [ ] 后处理边缘光 2. [ ] 后处理边缘光
@ -128,14 +129,18 @@ rating: ⭐⭐⭐
10. [ ] Reflection控制 10. [ ] Reflection控制
1. [x] ReflectionAlpha实现。 1. [x] ReflectionAlpha实现。
2. [ ] Matcap Reflection实现。 2. [ ] Matcap Reflection实现。
3. [ ] 对Reflection Texture进行Kuawahara处理之后根据亮度抽象成第二高光提取亮度之后乘以高光颜色
1. 【[UFSH2024]用虚幻引擎5为《幻塔》定制高品质动画流程风格化渲染管线 | 晨风 Neverwind 完美世界游戏】 【精准空降到 14:24】 https://www.bilibili.com/video/BV1rW2LYvEox/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e&t=864
11. [ ] Toon GILumen) 11. [ ] Toon GILumen)
1. [ ] 向下采样 1. [ ] 向下采样
2. [ ] 平滑法线采样 2. [ ] 平滑法线 => 平滑饱和度
1. [ ] 使用哪个https://zhuanlan.zhihu.com/p/25839790454 1. [ ] 使用哪个https://zhuanlan.zhihu.com/p/25839790454
2. [ ] 尝试抹平Lumen法线。 2. [ ] 尝试使用高斯模糊Lumen法线。
3. [ ] 尝试使用ViewVector来平滑法线。 3. [ ] 尝试使用ViewVector来平滑法线。
1. 用相机方向的话随着相机绕角色旋转角色身上亮度变化会比较明显所以视频里用的是把平滑度乘在Lumen的1-2阶球谐上 1. 用相机方向的话随着相机绕角色旋转角色身上亮度变化会比较明显所以视频里用的是把平滑度乘在Lumen的1-2阶球谐上
2. 伪代码 OutSH = SH0 + (SH1 + SH2) * Smoothness; 4. [ ] 尝试平滑二阶、三阶球谐来使得Lumen效果低频化
1. 伪代码 OutSH = SH0 + (SH1 + SH2) * Smoothness;
5. [ ] Cel适配需要实现[[Toon多光源参考|Toon多光源后处理Pass]]
12. [ ] 阴影控制 12. [ ] 阴影控制
1. [x] 控制深度偏移 1. [x] 控制深度偏移
1. [x] 在材质中使用ShadowPassSwitch再对ViewSpace的Z轴方向使用DirectionalLightVector比较可以只对方向光进行偏移进行WPO偏移实现。 1. [x] 在材质中使用ShadowPassSwitch再对ViewSpace的Z轴方向使用DirectionalLightVector比较可以只对方向光进行偏移进行WPO偏移实现。
@ -153,7 +158,7 @@ rating: ⭐⭐⭐
15. [ ] TSR 15. [ ] TSR
1. [ ] [UE TAAU详细解析](https://zhuanlan.zhihu.com/p/681910495) 1. [ ] [UE TAAU详细解析](https://zhuanlan.zhihu.com/p/681910495)
2. [ ] [UE TSR详细解析](https://zhuanlan.zhihu.com/p/682350835) 2. [ ] [UE TSR详细解析](https://zhuanlan.zhihu.com/p/682350835)
16. [ ] [[Toon多光源参考]] 16. [ ] [[Toon多光源参考|Toon多光源后处理Pass]]
17. [ ] [【虚幻5】UE_动画变形工具(晶格变形)](https://www.bilibili.com/video/BV1DsR3YoEML/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e) 17. [ ] [【虚幻5】UE_动画变形工具(晶格变形)](https://www.bilibili.com/video/BV1DsR3YoEML/?share_source=copy_web&vd_source=fe8142e8e12816535feaeabd6f6cdc8e)
18. [ ] 月下幻影的掰法线思路:`N = _Scale * NoL * L + N`尝试找到使用场景。资产路径`/Game/ToonContentExample/MaterialUtility/NormalOffsetToDirectionalLight/M_NormalOffsetToDirectionalLight` 18. [ ] 月下幻影的掰法线思路:`N = _Scale * NoL * L + N`尝试找到使用场景。资产路径`/Game/ToonContentExample/MaterialUtility/NormalOffsetToDirectionalLight/M_NormalOffsetToDirectionalLight`
19. [ ] RGS 光线追踪与路径追踪支持。 19. [ ] RGS 光线追踪与路径追踪支持。

View File

@ -10,6 +10,7 @@ rating: ⭐
- DirectionalLight - DirectionalLight
- 主要是通过判断所有灯光的Forward Shading Priority与亮度取得主光。 - 主要是通过判断所有灯光的Forward Shading Priority与亮度取得主光。
- 之后在FDeferredLightPS中添加一个判断是否是主光的变体并进行设置即可。 - 之后在FDeferredLightPS中添加一个判断是否是主光的变体并进行设置即可。
- 也可以通过FlattenNormal来减少高频信息。
- PointLight - PointLight
- 可以通过FlattenNormal(ShadingModels.ush)来减少点光源计算中的高频细节 - 可以通过FlattenNormal(ShadingModels.ush)来减少点光源计算中的高频细节
- YivanLee的多光源方案 - YivanLee的多光源方案

View File

@ -6,7 +6,10 @@ tags:
rating: ⭐ rating: ⭐
--- ---
# Toon Lumen # Toon Lumen
抹平法线思路: ## 抹平法线思路
### ViewVector Fix WorldNormal
参考:
- [【UE5】环境光与GI 2抹平法线](https://zhuanlan.zhihu.com/p/25839790454)
`LumenScreenProbeGather.usf`中对法线进行抹平处理。其Pass位于 `LumenScreenProbeGather.usf`中对法线进行抹平处理。其Pass位于
- DiffuseIndirectAndAO - DiffuseIndirectAndAO
@ -38,7 +41,16 @@ if (IsValid(Material))
该方法存在一些问题:**当相机围绕角色旋转时,角色身上的 GI变化会比较明显**。 该方法存在一些问题:**当相机围绕角色旋转时,角色身上的 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) UE5中采样球谐贴图方法(ReflectionEnvironmentShared.ush)
```c++ ```c++
/** /**
@ -67,3 +79,7 @@ float3 GetSkySHDiffuse(float3 Normal)
} }
``` ```
## Cel适配
需要实现Cel多光源方案。
大致的思路就是Copy Lumen结果之后在[[Toon多光源参考|Toon多光源Pass]]中提取亮度再根据亮度采样Ramp计算光影结果。