finds.dev← search

// the find

TokisanGames/Terrain3D

★ 3,977 · C++ · MIT · updated May 2026

A high performance, editable terrain system for Godot 4.

Terrain3D is a C++ GDExtension plugin for Godot 4 that gives you a fully editable heightmap terrain with LOD, foliage instancing, and up to 65km² of terrain area split into non-contiguous regions. It's for indie and mid-size game teams that need Unity/Unreal-quality terrain tooling inside Godot without waiting for the engine to grow one. The GDExtension architecture means it works with official Godot builds — no custom engine fork required.

The region-based storage model (non-contiguous chunks) is genuinely smart — you don't pay memory or disk cost for ocean or empty space, which is a real problem with naive heightmap plugins. The plugin ships C# bindings generated from the GDScript API, so Godot C# projects aren't second-class citizens. Import pipeline covers the major terrain tools (World Machine, Gaea, Unity, Unreal) with documented heightmap formats, which removes a common migration headache. The documentation is unusually thorough for a community plugin — system architecture docs, control map format spec, shader design notes — the kind of thing that tells you the authors actually want you to understand what you're running.

Capped at 32 texture slots, which sounds like plenty until you're building a varied open world and realize you've spent half on grass variants. The foliage instancer is built-in but has no runtime spawning API designed for gameplay — if you need trees to fall or vegetation to respond to physics, you're writing your own layer on top. Building from source requires SCons and a specific godot-cpp submodule, and the CI matrix spans seven platforms; if you're on a smaller team and need to patch something, the build setup is a real cost. The plugin version is tightly coupled to the Godot minor version — a Godot point release can break compatibility and you're waiting on the plugin to catch up.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →