vault backup: 2025-02-11 15:54:25
This commit is contained in:
parent
1f4ea24133
commit
4a14e94fe5
@ -7,7 +7,6 @@ rating: ⭐
|
||||
---
|
||||
|
||||
# FSortedLightSetSceneInfo
|
||||
|
||||
有序的光源集合相关定义:
|
||||
```c++
|
||||
/** Data for a simple dynamic light. */
|
||||
@ -158,7 +157,14 @@ void FDeferredShadingSceneRenderer::Render(FRHICommandListImmediate& RHICmdList)
|
||||
}
|
||||
```
|
||||
|
||||
##
|
||||
PS. 简单光源都可以被分块或分簇渲染,但对于非简单光源,只有满足以下条件的光源才可被分块或分簇渲染:
|
||||
- 没有使用光源的附加特性(TextureProfile、LightFunction、LightingChannel)。
|
||||
- 没有开启阴影。
|
||||
- 非平行光或矩形光。
|
||||
|
||||
另外,是否支持分块渲染,还需要光源场景代理的`IsTiledDeferredLightingSupported`返回true,长度为0的点光源才支持分块渲染。
|
||||
|
||||
## GatherLightsAndComputeLightGrid
|
||||
```c++
|
||||
FComputeLightGridOutput FDeferredShadingSceneRenderer::GatherLightsAndComputeLightGrid(FRDGBuilder& GraphBuilder, bool bNeedLightGrid, FSortedLightSetSceneInfo& SortedLightSet)
|
||||
{
|
||||
@ -200,3 +206,10 @@ FComputeLightGridOutput FDeferredShadingSceneRenderer::GatherLightsAndComputeLig
|
||||
return Result;
|
||||
}
|
||||
```
|
||||
|
||||
- GatherAndSortLights:收集与排序当前场景中所有的可见光源(当前View)。
|
||||
- ComputeLightGrid:是在锥体空间(frustum space)裁剪局部光源和反射探针到3D格子中,构建每个视图相关的光源列表和格子。
|
||||
|
||||
# RenderLights() -> RenderLight()
|
||||
|
||||
## InternalRenderLight()
|
||||
|
@ -99,6 +99,7 @@ rating: ⭐⭐⭐
|
||||
8. [ ] TODO:确认VR中的运行结果是否正确?
|
||||
9. [ ] TODO:Nanite模型支持。
|
||||
10. [ ] TODO:另一种思路定点内扩+Stencil的方式渲染内描边?
|
||||
11. [ ] TODO:顶点法线工具开发 https://tajourney.games/7689/
|
||||
4. [ ] TODO:RayTacing描边方法。
|
||||
7. [ ] ToonLighting
|
||||
1. [ ] Cel
|
||||
|
7
06-DCC/游戏资产提取/尝试截取原神帧 renderdoc.md
Normal file
7
06-DCC/游戏资产提取/尝试截取原神帧 renderdoc.md
Normal file
@ -0,0 +1,7 @@
|
||||
# 前言
|
||||
- https://tajourney.games/7872/
|
||||
- Renderdoc: https://github.com/baldurk/renderdoc
|
||||
|
||||
采用本地编译Renderdoc尝试。
|
||||
|
||||
**Renderdoc注入的原理是拦截应用程序对图形 API 的调用来捕获帧,在应用程序调用图形 API 函数,插入自己的代码,这一过程就是hook,所以本地修改的关键就是修改hook相关函数,编译自己的注入器。**
|
Loading…
x
Reference in New Issue
Block a user