added ground generation