public void Dispose() { for (int i = 0; i < ALSources.Length; i++) { Al.DeleteSource(ALSources[i]); int alError = Al.GetError(); if (alError != Al.NoError) { throw new Exception("Failed to delete ALSources[" + i.ToString() + "]: " + Al.GetErrorString(alError)); } } ALSources = null; }