Simple procedural terrain generator?

Hello all, I’m quite new to Unreal Engine, but I’m getting the hang of it pretty quickly. I already have some experience with C++ and other game engines, so that’s probably why.

As a way to really jump into things and familiarize myself with the engine, I decided I want to challenge myself and attempt to make a simple procedural terrain generator. I understand this is no simple feat, especially in the context of a newbie such as myself.

By “simple” I just mean that I don’t want any corrosion effects, water, caves, holes, cliffs, etc. I’m looking to create a uneven plane, like an open grassy field. For the sake of comparison, think of the open field areas in DayZ, or any Arma game for that matter. That’s the sort of look I’m going for. Just sort of a smooth, large scaled unevenness.

I understand that this is any extremely vague question. That’s because I’m having serious trouble getting started. There seems to be a lack of documentation and tutorials on making something like this in UE4. My main question is if anyone could give me some tips or suggestions to point me in the right direction for something like this. I’ve been looking into noise functions and Procedural Mesh Component, but I’m not really getting anywhere with it.

I also wasn’t really sure to post this in Blueprint Scripting or C++, because it’s going to require both. I guess I’m assuming the meat and bones of the generator will have to be programmed by me. I’m not a huge fan of Blueprints, but I’ll use them if they are more practical.

Procedural means generated as you move around at runtime or procedural means generated pre use?

Ah, I mean pre use generation. Sorry for the lack of clarification.

In that case is there any reason not to use the in-game landscape editor?

If you’re after the result, I’d be looking to use the ingame landscape editor, or something like blender / Maya.

If you’re after the experience and the journey then I’d continue looking at the procedural mesh component with C++ to write your noise / smoothing functions.

Yeah, I’m more in it for the experience, not so much the creation of something for practical use (although it could come in handy sometime down the road). I have a tradition of giving myself difficult tasks just so I can learn a lot along the way. Thanks for the answer by the way. I’ll continue looking into the procedural mesh component. I just wasn’t sure if there was some better alternative out there I wasn’t aware of.

Basically the type of project I wanted to make is where you can enter a seed and it’ll generate a map of certain specified dimensions (in other words, the user selects within a range how much the algorithm generates)… then the player can run around on it after it’s been generated. Think of Rust or Minecraft, but really really watered down, to the point where it’s just generating the initial terrain mesh, and nothing else.

The forums actually already have a few open source Noise plugins you can look at for reference (or simply use and move directly to playing with Terrain generation):

Simplex Noise: