@Override
  public void setG2D(GLGraphics2D g2d) {
    this.g2d = g2d;

    if (clearCachePolicy == VALUE_CLEAR_TEXTURES_CACHE_EACH_PAINT) {
      imageCache.clear();
    }
  }
  protected void addToCache(Image image, Texture texture) {
    if (clearCachePolicy instanceof Number) {
      int maxSize = ((Number) clearCachePolicy).intValue();
      if (imageCache.size() > maxSize) {
        if (LOGGER.isLoggable(Level.FINE)) {
          LOGGER.fine("Clearing texture cache with size " + imageCache.size());
        }

        imageCache.clear();
      }
    }

    imageCache.put(image, texture);
  }
 @Override
 public void dispose() {
   imageCache.clear();
 }