added normal generation for terrain