public static void initialize() {
    for (int i=0; i<TERRAIN_TYPE.values().length; i++) {
      TERRAIN_IMAGE[i] = MetaData.mainWindow.loadImage("/images/terrain/" + TERRAIN_TYPE.values()[i].toString() + ".png");
    }

    for (int i=0; i<RESOURCE_TYPE.values().length; i++) {
      RESOURCE_IMAGE[i] = MetaData.mainWindow.loadImage("/images/resources/" + RESOURCE_TYPE.values()[i].toString() + ".png");
    }

    for (int i=0; i<STRUCTURE_TYPE.values().length; i++) {
      STRUCTURE_IMAGE[i] = MetaData.mainWindow.loadImage("/images/structures/" + STRUCTURE_TYPE.values()[i].toString() + ".png");
    }

    for (int i=0; i<UNIT_TYPE.values().length; i++) {
      UNIT_IMAGE[i] = MetaData.mainWindow.loadImage("/images/units/" + UNIT_TYPE.values()[i].toString() + ".png");
    }
/*
    for (int i=0; i<EFFECT_TYPE.values().length; i++) {
      EFFECT_TYPE[i] = MetaData.mainWindow.loadImage("/images/effects/" + EFFECT_TYPE.values()[i].toString() + ".png");
    }
*/
/*
    for (int i=0; i<STRUCTURE_TYPE.values().length; i++) {
      PGraphics g = MetaData.mainWindow.createGraphics(HexSpace.R * 2, HexSpace.R * 2, PApplet.OPENGL);
      g.beginDraw();
      g.background(g.color(255, 0));
      g.strokeWeight(2);
      g.ellipseMode(PApplet.CENTER);
      g.fill(g.color(150, 150, 150));
      if (i == 0) {
        g.stroke(g.color(0, 0, 255));
      } else if (i == 1) {
        g.stroke(g.color(0, 255, 0));
      } else if (i == 2) {
        g.stroke(g.color(255, 0, 0));
      }
      g.ellipse(HexSpace.R, HexSpace.R, HexSpace.R, HexSpace.R);
      g.endDraw();
      STRUCTURE_IMAGE[i] = g.get();
    }

    for (int i=0; i<UNIT_TYPE.values().length; i++) {
      PGraphics g = MetaData.mainWindow.createGraphics(HexSpace.R * 2, HexSpace.R * 2, PApplet.OPENGL);
      g.beginDraw();
      g.background(g.color(255, 0));
      g.stroke(g.color(0));
      g.strokeWeight(2);
      g.rectMode(PApplet.CENTER);
      if (i == 0) {
          g.fill(g.color(0, 0, 255));
      } else if (i == 1) {
        g.fill(g.color(0, 255, 0));
      } else if (i == 2) {
        g.fill(g.color(255, 0, 0));
      } else if (i == 3) {
        g.fill(g.color(200, 200, 200));
      } else if (i == 4) {
        g.fill(g.color(100, 100, 100));
      }
      g.rect(HexSpace.R, HexSpace.R, 0.75f * HexSpace.R, 1.25f * HexSpace.R);
      g.endDraw();
      UNIT_IMAGE[i] = g.get();
    }
*/
    for (int i=0; i<EFFECT_TYPE.values().length; i++) {
      PGraphics g = MetaData.mainWindow.createGraphics(HexSpace.R * 2, HexSpace.R * 2, PApplet.OPENGL);
      g.beginDraw();
      g.background(g.color(255, 0));
      g.stroke(g.color(255));
      g.strokeWeight(2);
      g.ellipseMode(PApplet.CENTER);
      if (i == 0) {
          g.fill(g.color(100, 100, 255));
      }
      g.ellipse(HexSpace.R, HexSpace.R, HexSpace.R, HexSpace.R);
      g.endDraw();
      EFFECT_IMAGE[i] = g.get();
    }

    for (int i=0; i<EFFECT_TYPE.values().length; i++) {
      PGraphics g = MetaData.mainWindow.createGraphics(HexSpace.R * 2, HexSpace.R * 2, PApplet.OPENGL);
      g.beginDraw();
      g.background(g.color(255, 0));
      g.stroke(g.color(255));
      g.strokeWeight(2);
      g.ellipseMode(PApplet.CENTER);
      if (i == 0) {
          g.fill(g.color(100, 100, 255));
      }
      g.ellipse(HexSpace.R, HexSpace.R, HexSpace.R, HexSpace.R);
      g.endDraw();
      EFFECT_IMAGE[i] = g.get();
    }

    for (int i=0; i<ACTION_TYPE.values().length; i++) {
      PGraphics g = MetaData.mainWindow.createGraphics(HexSpace.R * 2, HexSpace.R * 2, PApplet.OPENGL);
      g.beginDraw();
      g.background(g.color(255, 0));
      g.stroke(g.color(255));
      g.strokeWeight(2);
      g.ellipseMode(PApplet.CENTER);
      g.fill(10 * i);
      g.ellipse(HexSpace.R, HexSpace.R, 2 * HexSpace.R, 2 * HexSpace.R);
      g.endDraw();
      ACTION_IMAGE[i] = g.get();
    }

    selectedImage = MetaData.mainWindow.loadImage("/images/misc/SELECTED.png");
  }