Сгенерировал в скрипте сетку 100x100 с помощью PerlinNoise, и загнал эти вершины и нормали в Mesh. После это пересчитал нормали mesh.RecalculateNormals(), и получил следующую картинку:

Смотрится плохо, поэтому я для каждой соседней/общей точки треугольника нашел среднюю нормаль, т.е. сложил нормали общих точек и разделил их на кол-во этих точек. Получилось уже намного лучше, но все равно видны еще артефакты:

Т.е. на меше видны артефакты в виде некой сетки:

Как от него избавится и сделать что бы сгенерированный ландшафт стал идеально гладким? Какой то другой алгоритм пересчета нормалей нужен, или что то другое?