part1 done, pseudo height field water