[OLD-FORUM-THREAD] Ultimate Terrains 1.0

OLD - DEPRECATED FORUM THREAD.
The new forum thread is here: [uTerrains] Ultimate Terrains - Voxel terrain engine


Hi everybody,

I’m very glad to announce the release of Ultimate Terrains (aka uTerrains) after more than one year of development. This is the result of hundreds hours of hard work. I put all my heart into this to make it as good as possible and always put myself in future users shoes to answer their needs. I hope you will enjoy it!

Get it here!
Try it!
More info & doc

Ultimate Terrains is a brand new voxel terrain engine implementing adaptive Dual Contouring with very powerful features. It is able to generate and render infinite terrains with any kind of shape (cubical, smooth, mountains, hills, caves, overhangs, etc.), supports real-time editing and offers awesome distance of view. It has been made to be easily and deeply customizable.

Features:

  • Fast, optimized, multithreaded, with low memory footprint.
  • Infinite terrains.
  • Giant distance of view. Visible part of a terrain is up to 8192x8192 while keeping an excellent voxel resolution (only 1x1x1 unit per voxel!).
  • Can render any kind of shape: mountains, hills, valleys, but also caves, holes, overhangs, cliffs, etc. Possibility to change the smoothness of some parts of the terrain (or the entire terrain) so you can have fully cubical areas and perfectly smooth relief at the same time.
  • Realtime editing. Dig/build your terrain as much as you want in real time.
  • Procedural generation thanks to modules such as Perlin noise, Simplex, Ridged multifractal, heightmap, etc. You can write your own modules easily.
  • Biome system with full control over terrain generation.
  • Editor to edit the terrain directly within the scene view.
  • Powerful grass generator
  • Trees & details objects system
  • Triplanar shaders (diffuse, specular, bumped, bumped specular)
  • Compatible with RTP3
  • Save & load terrain dynamically
  • JSON serialization for network synchronization

Screenshots:




I hope you will enjoy Ultimate Terrains. If you have any question don’t hesitate to ask it! :slight_smile:
Customers can get some support from uTerrains website.

9 Likes

This is definitely impressive.
You already have one future buyer :wink:

What happens if I increase the view distance to 16384x16384?

That swishing sound you hear is me throwing money at the screen :wink:

Thank you very much Casto!

For now, 8192 is a maximum. I could easily increase it to 16384 if some people need it, but I thought 8192 was enough for most situations while keeping good performance.

ahahah! You made me laugh :smile:
Well, thank you very much!

You say the player is in the center of the terrain but what happens when he moves in the same direction for a while?

Can’t wait to try it!! I wanted something like this so much! Other voxel engines on the Asset Store make very small terrains.

Chunks that are far away from the player are moved in front of the player, so even if the player is moving he remains in the center of the terrain.

Thanks! Yes this is a strength of uTerrains to have big draw distance. I hope it will suit all your needs!

Is it possible to edit the terrain in other ways than sphere or cube?

do we have control over the terrain polycount?

Looks awesome, but what that buggy texture stretching you have there on the cubes?

Yes, you can even create your own type of operation by implementing IOperation interface. So basically you do whatever you want.

Indirectly, yes, because you can change the maximum acceptable geometric error. But increasing it too much could introduce some artifacts and even some holes in the terrain between chunks, because LOD cracks are handled via properly connected seams. I’m planing to add an option (in a future update) to use skirts instead so it will reduce polycount (but won’t look as good as seams especially if you set a high acceptable geometric error).

Thanks! Yes I know, problem comes from the shader. I will have to improve it but I’m not a shader expert, I was already quite happy to manage to make a triplanar shader :slight_smile:
I will ask for help on the shader forum. BTW, this problem doesn’t occur when RTP3 is used.
EDIT: actually it does occur with RTP3 too. There might be an issue with normals. I’m gonna work on this.

Awesome!

What’s the memory usage for a 8kx8k terrain? From my experience with other voxel engines I expect it to be huge. Most of the time it’s around 700MB for very small terrains (less than 1000x1000)…

Ultimate Terrains has been developed with a lot of care regarding performance and memory footprint. As you mentioned, a voxel engine always needs a lot of memory, but uTerrains keeps it at a low level comparatively to most other engines.
For a 8192x8192 terrain like the ones in the demos, it uses less than 300MB of memory (to be more specific, in the full demo scene it takes about 280MB).

So… you’re doing a VoxelFarm for unity…

Amazing. I’ll toss my money at your for this :slight_smile:

Thank you for the compliment, VoxelFarm is more advanced than uTerrains, which is normal as it exists for years, but my goal now is to improve uTerrains continuously so it will be better and better. I think the core of uTerrains engine is good enough to make it a true competitor in the future.

Thank you very much :smile:

Any idea for a release date?

@ariusdb222
It is pending for review on the Asset Store. I guess it should be release in a week or two.

Newbie question. Is it possible to create a uTerrain shape based on some other geometry? For example I have been using OBJ to Terrain- script for converting obj terrain models into Unity terrains. Would this kind of workflow be possible with uTerrain?

@mk1978
I haven’t made a mesh to voxel converter yet. But your particular case, you could get the heightmap of your terrain and use it with the heightmap module of uTerrains.