// Copyright Epic Games, Inc. All Rights Reserved. // Do not use shared samplers as it requires the View uniform buffer, which is not bound for this shader. #define USE_HZB_SHARED_SAMPLERS 0 #include "../Common.ush" #include "../SceneData.ush" #include "VirtualShadowMapPageCacheCommon.ush" #include "VirtualShadowMapCacheInvalidation.ush" #include "../WaveOpUtil.ush" #include "../InstanceCulling/InstanceCullingLoadBalancer.ush" struct FInstanceInvalidationPayload { int VirtualShadowMapId; uint Flags; }; FInstanceInvalidationPayload DecodeInstanceInvalidationPayload(uint Payload) { FInstanceInvalidationPayload Result; Result.VirtualShadowMapId = Payload >> VSM_INVALIDATION_PAYLOAD_FLAG_BITS; Result.Flags = Payload & ((1U<