perlin-numpy
A fast and simple perlin noise generator using numpy (by pvigier)
PyFastNoiseLite
Python wrapper for Auburns' FastNoise Lite noise generation library (by tizilogic)
perlin-numpy | PyFastNoiseLite | |
---|---|---|
1 | 2 | |
276 | 9 | |
- | - | |
0.0 | 5.3 | |
4 months ago | 8 months ago | |
Python | Cython | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
perlin-numpy
Posts with mentions or reviews of perlin-numpy.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-05.
-
First procgen landscape, what do you think?
Have you used numpy for this sort of thing? I found https://github.com/pvigier/perlin-numpy which does the whole Perlin noise + fractal noise with numpy operations. Haven't tested it yet to see how fast it is on large matrices
PyFastNoiseLite
Posts with mentions or reviews of PyFastNoiseLite.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-05.
-
First procgen landscape, what do you think?
/u/FMWizard I would try this https://github.com/tizilogic/PyFastNoiseLite/ with these configs. It's a C wrapper, so it should be faster than the python libraries.
-
Replicating Minecraft World Generation in Python
Another piece of info you might find interesting is that the traditional approach of warping, where you distort each axis individually, isn't the only way to do that. The choice of noise function certainly makes more visual impact, but there is more directionally-uniform way to domain-warp too: explicitly-designed vector-output noise. Such noise chooses a random output-space direction to apply to each internal gradient ramp contribution, which results in a warp distribution that's effectively radially-symmetric. It also only takes one noise evaluation instead of two or three. I wrote this as part of my contributions to FastNoiseLite. There does exist PyFastNoiseLite as a wrapper for that, though it unfortunately doesn't currently have wrappers for the domain warping functions.
What are some alternatives?
When comparing perlin-numpy and PyFastNoiseLite you can also consider the following projects:
shades - A python library for generative art creation
FastNoise - Fast Portable Noise Library - C# C++ C Java HLSL GLSL JavaScript Rust Go
nPerlinNoise - A robust open source implementation of Perlin Noise Algorithm for N-Dimensions in Python
UnitySimplexNoise - a compact and functional system for generating complex simplex noise layers for procedural generation [Moved to: https://github.com/tcm151/Unity-Simplex-Noise]
PILes - PIL wrapper to draw multiple geometric shapes in a single call
opensimplex - This repo has been migrated to https://code.larus.se/lmas/opensimplex