protected override void Dispose(bool disposing)
{
if (!IsDisposed && _shaderHandle != -1)
{
Threading.BlockOnUIThread(() =>
{
GL.DeleteShader(_shaderHandle);
GraphicsExtensions.CheckGLError();
_shaderHandle = -1;
});
}
base.Dispose(disposing);
}
}