Para um editor de terreno 3D "clássico", as etapas podem ser as seguintes:
Gere uma malha (por exemplo, uma grade de quadrados, cada quadrado composto por dois triângulos), todos os vértices são compartilhados entre triângulos (para que exista apenas um normal por interseção).

Isso deve ser feito em 3DMesh e renderizado em seu programa.
Crie uma ferramenta para elevar e abaixar (menores e maiores) partes da grade (é necessário calcular onde está o cursor do mouse na malha e modificar os vértices das malhas, mas apenas para cima e para baixo).
Crie uma textura grande (como 1024x1024x4 ou melhor) e texture com o que é chamado de mapa de splat:

Torne possível pintá-lo (com R, G, B OR Alfa, não rosa por exemplo) e escolher texturas substituindo aquelas cores primárias feias (Vermelho, Azul, Verde, Alfa) ou, além disso, seja representado por elas:
O sombreador (que você precisará criar) deve multiplicar essas texturas agradáveis (como pedra, grama, ...) pela intensidade do mapa de splat (o feio) e, em seguida, misturar o todo para que pareça, por exemplo (com apenas 2 cores), assim:

Desculpe pelas imagens grandes, juntei isso no trabalho ...