@Override
  public void compile() {
    int newSize = layers.getSize();
    if (newSize <= 0) {
      BufferObject.release(layers.vbo);
      layers.vbo = null;
      isReady = false;
      return;
    }

    if (layers.vbo == null) {
      layers.vbo = BufferObject.get(newSize);

      if (layers.vbo == null) return;
    }

    if (GLRenderer.uploadLayers(layers, newSize, true)) isReady = true;
  }