Per un editor di terreno 3D "classico", i passaggi potrebbero essere quelli:
Genera una mesh (ad esempio una griglia di quadrati, ogni quadrato composto da due triangoli), tutti i vertici sono condivisi tra i triangoli (in modo che vi sia solo una normale per intersezione).

Questo dovrebbe essere realizzato in 3DMesh e renderizzato nel tuo programma.
Crea uno strumento per alzare e abbassare parti (più piccole e più grandi) della griglia (devi calcolare dove si trova il cursore del mouse sulla mesh e modificare i vertici delle mesh, ma solo su e giù).
Crea una trama grande (come 1024x1024x4 o migliore) e tessila con quella che viene chiamata mappa splat:

Rendi possibile dipingerlo (con R, G, B OR Alpha, non rosa per esempio) e scegliere trame che sostituiscono quei brutti colori primari (Rosso, Blu, Verde, Alpha), o inoltre, essere rappresentati da loro:
Lo shader (che dovrai creare) dovrebbe moltiplicare quelle belle trame (diciamo pietra, erba, ...) per l'intensità nella splatmap (quella brutta) e quindi mescolare il tutto in modo che appaia, ad esempio (con come solo 2 colori), in questo modo:

Scusate per le immagini grandi, ho montato questo insieme al lavoro ...