public void Dispose()
        {
            if (Disposed)
            {
                return;
            }
            Disposed = true;
            VideoTextureFrugalizer.Dispose();
            foreach (var f in LuaSurfaceFrugalizers.Values)
            {
                f.Dispose();
            }

            foreach (var f in ShaderChainFrugalizers)
            {
                f?.Dispose();
            }

            foreach (var s in new[] { ShaderChain_hq2x, ShaderChain_scanlines, ShaderChain_bicubic, ShaderChain_user })
            {
                s?.Dispose();
            }

            TheOneFont.Dispose();
            Renderer.Dispose();
        }
 public void Dispose()
 {
     if (Disposed)
     {
         return;
     }
     Disposed = true;
     VideoTextureFrugalizer.Dispose();
     foreach (var f in LuaSurfaceFrugalizers.Values)
     {
         f.Dispose();
     }
     foreach (var f in ShaderChainFrugalizers)
     {
         if (f != null)
         {
             f.Dispose();
         }
     }
 }