How to use this Voxel terrain generator with Simplex Noise plugin to achieve CubeWorld like terrain?

I have downloaded and am using the blueprint from this video, , I have also downloaded and loaded this plugin [Plugin] Simplex Noise 1D,2D,3D,4D Fast Perlin Noise Version - Engine Source & GitHub - Unreal Engine Forums .

I’ve got it working, however the current terrain it generates isnt all that great; It tiles quite often and doesn’t look very natural. I am looking to try achieve the terrain similar to Cube World. Here is what cube world looks like.


I believe it uses a mixture of simplex and perlin noise. It has a lot of lower flat land with wide steps rather than lots of changing waves and circular shaped waves in the terrain, but it also has large and very shaped mountains.

I have a simple generator with sin waves /cirlces of voxels, and I have the simplex noise plugin working, I just dont know how I could use the noise plugin to generate a natural looking terrain.
Here is a picture of the current blueprint setup, and the results (tiling circles etc).

Doe’s anyone know how I might be able to achieve this?

It is actually not very hard to create relatively realistic voxel terrains, since you can combine several octaves to achieve nice effects.
You should separate your terrains to different chunks that are actually responsible for generating visualised blocks, and you can check out this piece of peudo-code and translate it to blueprint:


ABlockActor* BlockActor = nullptr;
for(int ChunkWidth = 0; ChunkWidth <= 15; ChunkWidth++){
for(int ChunkHeight = 0; ChunkHeight <= 15; ChunkHeight++){
BlockActor = SpawnActorAtLocation(BlockActor, GetActorLocation(this).x, GetActorLocation(this).y, 0.0);
float elevation = USimplexNoise::SimplexNoise2D(BlockActor->GetWorldLocation().x * 0.0004, BlockActor->GetWorldLocation().y * 0.0004);
BlockActor->SetWorldLocation(BlockActor->GetWorldLocation().x, BlockActor->GetWorldLocation().y, elevation);
Next, read this article before you start to devise your infinite terrain generation algorithm: Chunk – Official Minecraft Wiki
Edit: feel free to ask if you have any questions. Creating a voxel game is not a simple task, and I understand that.

Thanks for replying, I will definitely take a look at that article.

With some help, I have managed to get the noise plugin working with the blueprint actor and It looks ok.

(I have a setup for splitting the terrain into chunk blueprints but for the moment I am just going to leave the procedural and infinite parts)

The only thing now is that I think to achieve mountains or very shaped terrain rather than lower flat land, I think I need to use multiple noise’s and combine them together to determine the voxels height.
Picture for example - 25ed4b9d7b0a65d46211c82eec42141de58d9447.png

I am not sure if I can achieve that with just combining 2d simplex noise, or whether I will need perlin or something else.


Do you mean that you want to achieve the terrain in the second screenshot?
If you want to generate mountains, hills and rivers, you should combine multiple noise octaves( which are different noise values with different amplitudes and frequencies ).
For instance, To create realistic terrain, combine a noise octave that has really big frequency with another octave with relatively small frequency.
The terrain in the second screenshot is generated from simplex noise 3d
And I wouldn’t use this style of terrain even though it’s really cool, since it causes tremendous lag
And this is what i’ve done so far: