DEV Community

Tâm Trần Ngọc
Tâm Trần Ngọc

Posted on

Why mesh terrain is often a better choice than Unity terrain for stylized mobile projects

Unity’s built-in Terrain system is powerful. It has years of tooling behind it: sculpting, painting, vegetation, LOD, detail maps.
But it was designed around one core assumption:

Terrain is a heightmap rendered as a smooth surface.

That assumption becomes a constraint when your project does not want smooth terrain.

The core limitation: Heightmap-locked topology

Unity Terrain is fundamentally a heightmap grid:

  • Vertex density is tied directly to heightmap resolution.
  • Topology is uniform across the entire terrain.
  • Normals are generated for smooth shading by default.

If you want a faceted low poly look, you are fighting the system.
You can fake flat shading in shaders, but:

  • Geometry shaders are not available on most mobile targets.
  • Even when available, they are not ideal for performance-sensitive projects.

So you end up with a mismatch:

  • The engine assumes smooth terrain.
  • The art direction requires faceted geometry. That mismatch is what led me to explore mesh terrain instead.

What is Mesh Terrain?

A mesh terrain system does not rely on Unity’s built-in heightmap renderer.
Instead, it:

  • Generates a regular mesh from height data.
  • Controls topology explicitly.
  • Can duplicate vertices per triangle to guarantee hard edges.
  • Decouples polygon density from heightmap resolution.

This makes a major difference.
With mesh terrain, you can:

  • Preserve true flat shading.
  • Control where polygons are dense and where they are sparse.
  • Optimize specifically for stylized or mobile environments.

Why this matters for mobile

Mobile platforms amplify these constraints:

  • Geometry shaders are largely unavailable.
  • Overdraw and fragment cost matter.
  • Uniform high vertex density wastes performance.

A mesh terrain approach allows:

  • Explicit triangle budgeting.
  • Dynamic polygon density.
  • Clean faceted normals without shader tricks.

That makes mesh terrain particularly suitable for:

  • Low poly games
  • Stylized environments
  • Mobile and VR projects
  • Projects that require predictable geometry

Where Polaris fits in

This exploration eventually became Polaris.
Polaris is a mesh terrain system for Unity designed specifically for faceted and stylized environments.
Instead of wrapping Unity Terrain, Polaris:

  • Generates terrain as mesh geometry.
  • Allows dynamic polygon density.
  • Preserves flat shading by design.
  • Avoids reliance on geometry shaders.
  • Targets workflows where topology control matters.

In short:

Polaris exists because mesh terrain solves problems that heightmap terrain does not.

It is not a shader trick layered on top of Unity Terrain.
It is a topology-first terrain system.

Tradeoffs (because there are always tradeoffs)

Unity Terrain still has advantages:

  • Mature ecosystem.
  • Built-in vegetation and detail workflows.
  • Strong tooling for realistic environments.

For desktop projects targeting realistic smooth landscapes, Unity Terrain combined with shader-based stylization can still be sufficient.

But when your goal is:

  • Explicit faceted geometry
  • Mobile compatibility
  • Polygon density control

A mesh terrain system becomes a cleaner solution.

Final thoughts

Mesh terrain is not universally “better” than Unity Terrain.
It is better when:

  • Geometry style matters more than heightmap convenience.
  • You need true faceted shading.
  • You care about triangle distribution.
  • You target mobile or performance-constrained platforms.

That is the space Polaris was built for.
If you’re interested in the longer development story behind building a mesh terrain system from scratch, I wrote about it here:

👉 Original article on Pinwheel Studio

Top comments (0)