Noise Generation

Details about the noise generation and how to use it.

Temperature & Humidity System

Noise can output contain any number of parameters the developer need.

By default The current system register 3 parameters generated from the noise in the Mesh Vertex Colour :

  • Height (Red Channel)

  • Temperature (Green Channel)

  • Humidity (Blue Channel)

to be used by the material to color the grass, put mountain and snow texture, or any creative way you can find. (Refer to Terrain Material) (If you ever want to change this, you'll have to edit the plugin source code)

Noise Seed

Editing the Noise in C++

WorldScape plugin is aimed to have the noise edited in C++. You have the possibility to modify the noise yourself and integrate your own Noise and parameters. There is a barebone example of the noise with comment to guide you.

FNoiseData

The noise Data are stored in a FNoiseData Struct. you can edit it to fit your need, by default, WorldScape will use and need the folowing parameters :

  • double HeightNormalize - The height normalized from 0 to 1, also registered in the Red channel of Vertex Color.

  • double Height - The height in Unreal Unit that will displace the terrain either from the center of the planet or up depending on the generation type.

  • float Temperature - Registered in the Green channel of Vertex color, also used for foliage masking.

  • float Humidity - Registered in the Blue channel of Vertex colors, also used for foliage masking.

  • float WaterMask - Used for foliage masking, also set to true for HeightMap Influencer when ocean is higher than terrain.

  • float FoliageMask - Used for foliage Masking.

Noise Parameter

Noise Parameter is a struct used as an interface to influence the noise from the viewport

Noise Parameter is a struct present in the WorldScapeRoot component to allow developer to interact with your noise. You can use it to simply change the scale/intensity of the noise, or allow to have completely different generation rule.

Required Functions

WorldScape will use 2 specific function from the WorldScapeNoiseClass :

  • FNoiseData GetHeight - responsible for terrain Noise.

  • FNoiseData GetOceanHeight - responsible for Ocean Noise. It can be used for ocean, river and lake generation.

Rest of the class can be edited as you see fit, you are free to follow the already existing guideline and biome system or write you own system.

Last updated