Summer Work (Day 13)
Procedural Terrain Generation pt.2
So yesterday I implemented the most sloppy multi-layer noise system ever created by man. I tried to stick to the tutorial as much as I could, but some things just wouldn't cooperate.
The main thing that Unreal didn't agree with was a nested class. The basic idea behind the need for the nested class was it was to be a container for some modifiers to the noise settings. The problem was that I was unable to make an array of this class into a UPROPERTY. This is because, quite understandably, UPROPERTY's require the variable type to be derived from an unreal class, struct, or enum. But these things require special things that a nested class is unable to have (eg. GENERATED_BODY(), .generated.h). To get around this I just created another data asset that would hold the same information. The problem with this is that is adds lots of unnecessary clutter to the details panel in Unreal. I will continue looking for a fix for this, but for now it works so whatever.
The rest of the tutorial went well with almost no hiccups. The only other major problem I found was with the layered noise that I had implemented last time. The problem was that the sublayers of noise were supposed to have a higher frequency to add more detail, but they weren't. The system was generating the same noise pattern every time, resulting in really smooth but exaggerated terrain features. I will work on changing this and possibly giving the sublayers an offset to make it feel more random from the base generated noise.
Comments
Post a Comment