Crates.io | simplex-23d-rs |
lib.rs | simplex-23d-rs |
version | 0.2.1 |
source | src |
created_at | 2023-10-31 04:03:30.589405 |
updated_at | 2023-10-31 07:56:04.921402 |
description | Simplex 2d/3d noise in Rust |
homepage | |
repository | https://github.com/mattzque/simplex-23d-rs |
max_upload_size | |
id | 1019339 |
size | 6,691,227 |
Provides basic 2D and 3D simplex noise functions.
This Rust version is ported from the public domain Java implementation described here:
Simplex noise demystified Stefan Gustavson, Linköping University, Sweden (stegu@itn.liu.se), 2005-03-22
use simplex_23d::Simplex;
let seed: u64 = 42;
let noise = Simplex::new(seed);
// 2d noise
let value: f32 = noise.sample2d(1.0, 1.0);
// 3d noise
let value: f32 = noise.sample3d(1.0, 1.0, 1.0);
The Simplex
object generates a permutation table using the rand
crate from the given seed value. For frequency, you'd just multiply it with the input coordinate:
let freq: f32 = 0.001234;
let x: f32 = 1.0 * freq;
let y: f32 = 1.0 * freq;
let value: f32 = noise.sample2d(x, y);
0.2.1
fix perm_mod12 optimization0.2.0
updated readme0.1.0
initial release