https://github.com/viniciusmuller/isotope
Work with different noise functions using Elixir
https://github.com/viniciusmuller/isotope
elixir perlin-noise rustler simplex-noise
Last synced: about 1 month ago
JSON representation
Work with different noise functions using Elixir
- Host: GitHub
- URL: https://github.com/viniciusmuller/isotope
- Owner: viniciusmuller
- License: mit
- Created: 2021-06-15T18:35:58.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2023-05-21T14:41:55.000Z (about 2 years ago)
- Last Synced: 2025-04-25T09:06:56.736Z (about 1 month ago)
- Topics: elixir, perlin-noise, rustler, simplex-noise
- Language: Elixir
- Homepage: https://hexdocs.pm/isotope
- Size: 234 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Isotope

Isotope is a library that provides Elixir bindings to the [bracket-noise](https://crates.io/crates/bracket-noise) crate, which is a rust port of [FastNoise Lite](https://github.com/Auburn/FastNoiseLite).
## Installation
The package can be installed by adding `isotope` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:isotope, "~> 0.2.0"}
]
end
```
And running `mix deps.get, deps.compile`.## Usage
```elixir
opts = %Isotope.Options{
seed: seed,
noise_type: :simplex_fractal,
fractal_options: %Isotope.Options.Fractal{
octaves: 4
}
}{:ok, noise} = Isotope.Noise.new(opts)
Isotope.Noise.noise_map(noise, {1000, 1000})
```For more information, check the documentation
[here](https://hexdocs.pm/isotope).## Examples
You can check and run the examples in the `examples` folder.
```bash
mix run examples/.exs
```## Images

