/// <summary>
 /// Clear the program cache releasing all shader programs.
 /// </summary>
 public void Clear()
 {
     foreach (var pair in _programCache)
     {
         _graphicsDevice.DisposeProgram(pair.Value.Program);
     }
     _programCache.Clear();
 }