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