A robust open source implementation of Perlin Noise Algorithm for N-Dimensions
Project description
N Perlin Noise
A robust open source implementation of Perlin Noise Algorithm for N-Dimensions in Python.
- A powerful and fast API for n-dimensional noise.
- Easy hyper-parameters selection of octaves, lacunarity and persistence as well as complex and customizable hyper-parameters for n-dimension frequency, waveLength, warp(interpolation) and range.
- Includes various helpful tools for noise generation and for procedural generation tasks such as customizable Gradient, Color Gradients, Warp classes.
- Implements custom PRNG generator for n-dimension and can be easily tuned.
Details:
- Technology stack:
Status:
v0.1.3-alpha
Ready for public PyPI release
All Packages: releases
PyPI: v0.1.3a0
CHANGELOG
Screenshots:
- raw
- wood
- hot nebula
- island
- land
- marble fractal
- patch
- color patch
- ply1
- ply2
- stripes
- warp
Dependencies
Python>=3.10.0
for production dependencies see Requirements
for development dependencies see Dev-Requirements
Installation
for detailed instruction on installation see INSTALLATION.
Usage
for detailed usage see EXAMPLE
How to test the software
- To test overalls run main
- To test Logical consistency run testLogic
- To test Profile Benchmarking run testProfile
- To test Visuals run testVisuals
- To test Colors run testCol
to see all tests see Tests
Known issues
No Known Bugs
NPerlin.findBounds is bottleneck
Getting help
If you have questions, concerns, bug reports, etc, please file an issue in this repository's Issue Tracker or open a discussion in this repository's Discussion section.
Getting involved
General instructions on how to contribute CONTRIBUTING.
Open source licensing info
Credits and references
- Inspired from The Coding Train -> perlin noise
- hash function by xxhash inspired the rand3 algo and ultimately helped for O(1) time complexity n-dimensional random generator NPrng
- StackOverflow for helping on various occasions throughout the development
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for NPerlinNoise-0.1.3a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | acb07566c08028bee024d28da0a8832749011323132d6b80cc1ce42317888aca |
|
MD5 | 92dfb685beb0464fdb7bab3dbea734eb |
|
BLAKE2b-256 | 646820ff79779d707680d1c3c01f979625a6c82b32d4bc589299a2e8f3e948bb |