Quick demo of the Unity Voxel Terrain editor I wrote in C#.

Total time to create this scene was about 15 min, so I sped the video up a bit. Wanted to see it in motion at the end and test out the frames per second, but realized afterwards that with Fraps running, it really kills the frame rate. In the video it’s reporting 160+ fps but after turning Fraps off, I was getting around 500-600 fps with VSync off.

Features:

  • Dynamic voxel terrain sculpting
  • Sculpt, Paint, or Visibility Modes. (Visibility will interactively Hide / UnHide chunks.
  • View the terrain in textured / greyscale modes. Usefull for doing specific voxel editing.
  • Editing done per voxel or with larger radius
  • Click to edit or click and drag to sketch the terrain features in place.
  • Can use up to 4 layered terrain tri-planar textures. (could use more, depending on optimizations)
  • Blends texture layers using vertex colors (obtained through texture painting) plus the layers alpha map.
  • Currently 4 layers of paint-able foliage meshes. (this could be unlimited)
  • Any mesh can be drag and dropped in Unity editor to serve as foliage mesh.
  • Painting vertex colors on the foliage mesh in Maya will tell the Voxel Terrain how much that grass mesh should bend in the wind.
  • Terrain is automatically divided into configurable chunks. Perfect for occlusion culling.
  • Import / export of terrains to binary data files for quick loading and exporting. The files are incredibly small even for large terrains.

Custom Editor UI – Sculpt Menu and Foliage Menu:
voxel-editor_sculptvoxel-editor_foliage