This is a heightmap-based terrain node for Godot Engine 2.1, written in GDScript.
I ported this plugin to Godot 3: https://github.com/Zylann/godot_heightmap_plugin
I used to also work on a module version: https://github.com/Zylann/godot_heightmap_module
I stopped support on Godot 2.
Custom Terrain node
Resizeable square between 1 and 1024 units of space
Raise, carve and smooth the terrain in the editor
Paint vertex colors to add textures with shaders
Brush with customizable shape, size and opacity
Takes advantage of frustum culling by chunking the terrain in multiple meshes
Collisions
Smooth or hard-edges rendering
Save to image and normal map
Terrain data saved inside the scene like Tilemap and Gridmap
Edition behaviour works both in editor and game
Undo/redo
Experimental: quad rotation to improve shading in some cases
Extras: sample assets in this repo :)
Meshing is very slow (will this plugin remain pure GDScript?)
Level of detail (non-trivial! Requires faster meshing)
Baked mode for faster terrain loading (it is currently rebuilt from data both in editor and game)
Save terrain data as a separate resource to unbloat the scene file
Decorrelate resolution and size
Make Terrain inherit Spatial so it can be moved around
Paint meshes on top of the terrain (grass, trees, rocks...) <-- I want to make a vegetation generator plugin too :p
Improve normals (data "pixels" produce lighting artefacts)
Make live edition work
Mesh simplification (an editor lib would be welcome)
Infinite terrain mode
Extras: importer for terrains made in DCCs (Blender/3DS etc)