abstract public void Fill(ShadowContextStorage cs);
override public void Fill(ShadowContextStorage cs) { cs.SetTex2DArraySlot(m_TexSlot, m_ShadowmapId); }
abstract public void ReserveSlots(ShadowContextStorage sc);
override public void ReserveSlots(ShadowContextStorage sc) { m_TexSlot = sc.RequestTex2DArraySlot(); m_SampSlot = IsNativeDepth() ? sc.RequestSamplerSlot(m_CompSamplerState) : sc.RequestSamplerSlot(m_SamplerState); }