From 49cbc3c1d7b8081dba8b7f85d9bbca15442156f8 Mon Sep 17 00:00:00 2001 From: BlueRose <378100977@qq.com> Date: Tue, 17 Dec 2024 15:47:36 +0800 Subject: [PATCH] vault backup: 2024-12-17 15:47:36 --- .../渲染功能/阴影控制/ToonShadow.md | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md b/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md index a42b20e..73e396c 100644 --- a/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md +++ b/03-UnrealEngine/卡通渲染相关资料/渲染功能/阴影控制/ToonShadow.md @@ -1058,6 +1058,30 @@ float4 GetPerPixelLightAttenuation(float2 UV) } ``` +GetDynamicLighting() +```c++ +float4 GetDynamicLighting( + float3 TranslatedWorldPosition, float3 CameraVector, FGBufferData GBuffer, float AmbientOcclusion, uint ShadingModelID, + FDeferredLightData LightData, float4 LightAttenuation, float Dither, uint2 SVPos, + inout float SurfaceShadow) +{ + FDeferredLightingSplit SplitLighting = GetDynamicLightingSplit( + TranslatedWorldPosition, CameraVector, GBuffer, AmbientOcclusion, ShadingModelID, + LightData, LightAttenuation, Dither, SVPos, + SurfaceShadow); + + return SplitLighting.SpecularLighting + SplitLighting.DiffuseLighting; +} + +FDeferredLightingSplit GetDynamicLightingSplit( + float3 TranslatedWorldPosition, float3 CameraVector, FGBufferData GBuffer, float AmbientOcclusion, uint ShadingModelID, + FDeferredLightData LightData, float4 LightAttenuation, float Dither, uint2 SVPos, + inout float SurfaceShadow) +{ + FLightAccumulator LightAccumulator = AccumulateDynamicLighting(TranslatedWorldPosition, CameraVector, GBuffer, AmbientOcclusion, ShadingModelID, LightData, LightAttenuation, Dither, SVPos, SurfaceShadow); + return LightAccumulator_GetResultSplit(LightAccumulator); +} +``` # 半程阴影 由晨风&Neverwind提出: