public void renderMapGL(GameContainer container, Graphics g, int x_start, int y_start, int tileSize, int size) {
		int x, y;	
		float fr, fg, fb;
		
		GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
		GL11.glLoadIdentity();
		GL11.glShadeModel(GL11.GL_SMOOTH);
		
		if (currentMap != null) {
			for (y = 0; y < size; y++) {
				for (x = 0; x < size; x++) {
					if (currentMap[x][y] == Game.EMPTY_SPACE) {
						fr = 1.0f; fg = 1.0f; fb = 1.0f;
					}
					else if (currentMap[x][y] == Game.WALL) {
						fr = 0.5f; fg = 0.5f; fb = 0.5f;
					}
					else if (currentMap[x][y] == p.getSymbol()) {
						fr = 0.0f; fg = 1.0f; fb = 0.0f;
					}
					else if (currentMap[x][y] == pet.getSymbol()) {
						fr = 1.0f; fg = 0.75f; fb = 0.6f;
					}
					else if (currentMap[x][y] == "!") {
						fr = 1.0f; fg = 0.0f; fb = 0.0f;
					}
					else if (currentMap[x][y] == "T") {
						fr = 1.0f; fg = 1.0f; fb = 0.0f;
					}
					else {
						fr = 0.0f; fg = 0.0f; fb = 1.0f;
					}
							
					// create quads for each tile 
					GL11.glBegin(GL11.GL_QUADS);
					
						GL11.glColor3f(fr, fg, fb);
						GL11.glVertex2i((x_start+x)*tileSize, (y_start+y)*tileSize);
						GL11.glVertex2i((x_start+x)*tileSize, tileSize + (y_start+y)*tileSize);
						GL11.glVertex2i(tileSize +  (x_start+x)*tileSize, tileSize + (y_start+y)*tileSize);
						GL11.glVertex2i(tileSize + (x_start+x)*tileSize, (y_start+y)*tileSize);						

					GL11.glEnd();
				}				
			}
		}	
		Display.update();
	}