UnrealFastNoise - Modular Noise Generator Plugin

I’ve been needing a good noise solution for my terrain generator for a while, and since it’s a pretty well used function these days I thought I’d package it into a plugin for everyone to use!

DOWNLOAD - GitHub - midgen/UnrealFastNoise: Modular, Blueprint-friendly noise generation for UE4

The noise generation itself is built on FastNoise - GitHub - Auburn/FastNoiseLite: Fast Portable Noise Library - C# C++ C Java(Script) HLSL GLSL. Faster than libnoise, but more importantly, MIT-licensed so you can use it in your UnrealEngine projects.

The system is modular and designed to be configured in Blueprints (although you can obviously use it in C++). It features a modular design including blending and masking modules to enable you to make all sorts of interesting noise patterns, particularly useful for terrains.

Modules -

Noise Generator (BP Function - Create Noise Generator). The main noise generator, set noise types, parameters, seeds, frequency etc.

Select - Uses a ‘select’ module input module to mask between two input modules. Includes threshold value and a SinInOut smooth falloff option

Blend - Uses a ‘select’ module input to blend between two input modules.

ScaleBias - Applies an multiplier or additive value to a module

There’s a little sample project you can use to test the plugin. Here’s a couple of examples :

There’s a few more features I want to add, the new warping options from FastNoise as well as more Select Module falloff parameters, then I’ll get it on the Marketplace.

All feedback and requests welcome :slight_smile:

1 Like

Just pushed update to FastNoise 0.21 which has the position warping code and some performance improvements.

Now need to figure out best way to implement the warping controls.

Oh nice! This could be really useful :slight_smile:

Thanks!

Updated pushed to add position warping parameters
Update pushed to fix an issue where modules would be GC’ed (forgot to UPROPERTY the input modules on the select/blend/bias modules).

Working on some more streamlined blueprint functions for tidier graphs

Update!

Added Constant Module
Added simpler Blueprint functions specifically for simple/fractal/cellular noise to help keep BPs tidy
Added Interpolation options to Select module

Demo of two constant modules inputs to a select with differing interpolations:

Using in my terrain plugin, with some silly settings (stepped interpolation)

Update - Added a simple 3-way select module

Merged pull request to incorporate splines (thanks) , plus a few other little fixes in the past few days.

Hi,

I am using your plugin and it works well ! Thanks a lot !

I have however one issue : I cannot use the nativization of UE4 (blueprint -> C++ converter) !
I have a fatal error :
[Project directory] \Intermediate\WindowsNoEditor\NativizedAssets\Source\NativizedAssets\Private\TestNoise__pf6286095.cpp(204): fatal error C1083: Cannot open include file: ‘UFNNoiseGenerator.h’: No such file or directory

Do you know what I could do to fix this ? Is it the engine version (4.15) ?

By the way, very surprised there is not so much people on this thread ! Amazing plugin !

Updated with a domain warping module.

In action in my terrain generator :

I’ve done some refactoring in the repo and pared it back to just the plugin. You can now check out the repo directly into your plugins folder.

I just added this plugin and I keep getting this error when I compile:

You’ve checked out the current repo into Plugins/UnrealFastNoise in your project?

Sounds like paths are wrong somewhere.

it does that regardless if I have it in engine or the project folder

No issues with loading plugin…Compiled without error.

teak

This seems like a nice plugin. Tho, as a novice in UE4, I could really use a simple sample of a blueprint that shows how this works. I see there is some samples further up in this thread, but I don’t understand how it all works in a blueprint.

EDIT: So, I’ve found the tutorial videos and made it work. This is a really nice pack of plugins. Now I just have to figure out how to make this work on a planet like sphere.

Hi there. I’m having an issue with this plugin that you might be able to shed some light on:

I’ve been using it and it’s been working great in the editor, but it doesn’t seem to work in a packaged game. Is this something that’s intentional, or have I done something silly? Any help much appreciated.

It’s usually missing UnrealFastNoise in your Build.cs dependencies that causes this problem with pacakaged builds.

Finally got this plugin to work with a spherical mesh the way I wanted. Still needs a little bit tweaking, but that’s expected.

@zerofiftyone.

I just did a quick test and I have no issues packing with this plugin.
Do you have an output log to attach?

EDIT: Btw, I’m using 4.16.1

Thanks for the quick reply :). I haven’t touched the Build.cs at this point as I’m using the plugin in a BP only project (4.15). Is converting to a code project the best course of action here, or is there a missing step that I’m not aware of for running it on my setup?

Cool, thanks for checking. It’s good to know the issue is on my end and potentially resolvable. I’m not at my PC atm, but I’ll find an output log as soon as I get back in.

That spherical mesh looks rad btw.

I fixed the issue I was having. I opened up UnrealFastNoisePlugin.uplugin in Notepad++ and changed this:

to this: