https://github.com/zapolyarnydev/dynamicnoise
A lightweight and efficient Java library for creating procedural noise, ideal for game development, simulation, and procedural content creation applications.
https://github.com/zapolyarnydev/dynamicnoise
java library noise-1d noise-2d noise-3d noise-generator noise-library perlin perlin-noise procedural-generation simplex simplex-noise terrain-generation
Last synced: about 1 month ago
JSON representation
A lightweight and efficient Java library for creating procedural noise, ideal for game development, simulation, and procedural content creation applications.
- Host: GitHub
- URL: https://github.com/zapolyarnydev/dynamicnoise
- Owner: ZapolyarnyDev
- License: mit
- Created: 2025-01-26T11:40:29.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2025-03-03T18:33:15.000Z (about 2 months ago)
- Last Synced: 2025-03-24T03:13:41.037Z (about 1 month ago)
- Topics: java, library, noise-1d, noise-2d, noise-3d, noise-generator, noise-library, perlin, perlin-noise, procedural-generation, simplex, simplex-noise, terrain-generation
- Language: Java
- Homepage:
- Size: 1.63 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DynamicNoise
[](https://github.com/ZapolyarnyDev/DynamicNoise/releases)
[](LICENSE)DynamicNoise is a flexible and lightweight library for procedural generation of 1D, 2D, and 3D noise maps.
Perfect for game developers, visual effects artists, or anyone working with procedural content generation.
Supports popular noise algorithms like Perlin and Simplex, with customizable parameters for finer control over results.[Latest release here](https://github.com/ZapolyarnyDev/DynamicNoise/releases).
Supported dimensions of the maps:
- 1D
- 2D
- 3DList of noises:
- Perlin noise
- Simplex noise
- Value noise
- White noise## Install
#### WARNING
The minimum working version is [1.0.1](https://github.com/ZapolyarnyDev/DynamicNoise/releases). Do not use **1.0.0**, as it contains build errors.#### Maven
```xml
io.github.zapolyarnydev
dynamicnoise-lib
VERSION```
#### Gradle
```groovy
dependencies {
implementation("io.github.zapolyarnydev:dynamicnoise-lib:VERSION")
}
```## Example of usage
Let's generate a two-dimensional 500X400 map (All library methods are described in JavaDocs):
### Input parameters:
```java
NoiseMap gameMap = new NoiseMap(new double[500][400]);
Noise noise = new SimplexNoise();
noise.setOctaves(6);
noise.setScale(5);
noise.setLacunarity(3);
noise.setPersistence(1.32);
NoiseGenerator generator = new NoiseGenerator(noise);
generator.generateForMap(gameMap, noise, 0, 1);
double[][] doubles = gameMap.getDoubleArray();
display2DNoise(doubles); // Change to your own rendering method
```### Output result:
## License
This project is licensed under the [MIT License](https://github.com/ZapolyarnyDev/DynamicNoise/blob/main/LICENSE).