From 0592f992721a89678d9169e87800ff89ee971e5f Mon Sep 17 00:00:00 2001 From: BlueRose <378100977@qq.com> Date: Thu, 19 Dec 2024 12:49:37 +0800 Subject: [PATCH] vault backup: 2024-12-19 12:49:37 --- .../渲染功能/阴影控制/ToonShadow.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md b/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md index b75bad4..7700ef9 100644 --- a/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md +++ b/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md @@ -65,4 +65,17 @@ if(Toon材质,且没有半程阴影Flag的阴影 } ``` -PS.很有可能在FProjectedShadowInfo::RenderProjection()阶段进行判断以此保证合成正确的**ScreenShadowMask**。 \ No newline at end of file +PS.很有可能在FProjectedShadowInfo::RenderProjection()阶段进行判断以此保证合成正确的**ScreenShadowMask**。 + + +# 实现方法 + +const FMaterialRenderProxy* MaterialRenderProxy = MeshBatch.MaterialRenderProxy; +bool bEnableToonMeshDrawOutline = MaterialRenderProxy->GetToonOutlineDataAssetRT()->Settings.bEnableToonMeshDrawOutline; + +## 深度偏移 +在FProjectedShadowInfo添加 +RenderDepth() + +## DirectionOffsetToViewShadow +FSceneRenderer::CreateDynamicShadows() -> SetupInteractionShadows()在CreatePerObjectProjectedShadow()添加相关逻辑。 \ No newline at end of file