public ArrayList<Renderable> getRenderables(int x, int y, int w, int h) {
		ArrayList<Renderable> ret = new ArrayList<Renderable>();
		//Fix values. TODO more fixing.
		if(x < 0)
			x = 0;
		if(w >= mapGrid.length)
			w = mapGrid.length;
		if(x + w >= mapGrid.length)
			w = mapGrid.length - x;
		
		for(int i = x; i < w + x; i++)
			for(int ii = y; ii < h + y; ii++) {
				ret.add(mapGrid[i][ii].terrain);
				if(mapGrid[i][ii].hasTerrainObject())
					ret.add(mapGrid[i][ii].terrainObj);
				if(mapGrid[i][ii].hasEntity())
					ret.add(mapGrid[i][ii].entity);
			}
		
		return ret;
	}