973cf729cd
It requires C++17, while Godot uses C++14. I was unable to override it, and I'm not sure how compatible this will be with the runtime. At least this would be doable in Godot 4.
FastNoise2
WIP successor to FastNoiseSIMD
FastNoise2 is a fully featured noise generation library which aims to meet all your coherent noise needs while being extremely fast
Uses FastSIMD to compile classes with multiple SIMD types
Supports:
- 32/64 bit
- Windows
- Linux
- MacOS
- MSVC
- Clang
- GCC
Check the releases for early versions of the Noise Tool
Getting Started
There are 2 ways to use FastNoise 2, creating a node tree structure in code or importing a serialised node tree created using the NoiseTool.
This is creating a Simplex Fractal FBm with 5 octaves from code:
auto fnSimplex = FastNoise::New<FastNoise::Simplex>();
auto fnFractal = FastNoise::New<FastNoise::FractalFBm>();
fnFractal->SetSource( fnSimplex );
fnFractal->SetOctaveCount( 5 );
fnFractal->GenUniformGrid2D( ... );
Here is the same Simplex Fractal FBm with 5 octaves but using serialised data from the NoiseTool:
FastNoise::SmartNode<> fnGenerator = FastNoise::NewFromEncodedNodeTree( "DQAFAAAAAAAAQAgAAAAAAD8=" );
fnGenerator->GenUniformGrid2D( ... );
This is the node graph for the above from the NoiseTool