Skip to content

Commit eec429a

Browse files
committed
update examples
1 parent 1953743 commit eec429a

File tree

7 files changed

+175
-153
lines changed

7 files changed

+175
-153
lines changed

examples/complexplanet.rs

Lines changed: 135 additions & 135 deletions
Large diffs are not rendered by default.

examples/power.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
extern crate noise;
22

3-
use noise::{utils::*, Perlin, Power};
3+
use noise::{utils::*, Perlin, Power, DEFAULT_SEED};
4+
use rand::{Rng, SeedableRng};
5+
use rand_xorshift::XorShiftRng;
46

57
mod utils;
68

79
fn main() {
810
let perlin1 = Perlin::default();
9-
let perlin2 = Perlin::new(1);
11+
let perlin2 = Perlin::new(XorShiftRng::from_seed(DEFAULT_SEED).gen());
1012
let power = Power::new(perlin1, perlin2);
1113

1214
utils::write_example_to_file(&PlaneMapBuilder::new(power).build(), "power.png");

examples/ridgedmulti.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,16 @@
22
33
extern crate noise;
44

5-
use noise::{utils::*, Perlin, RidgedMulti, Worley};
5+
use noise::{utils::*, Perlin, RidgedMulti, Worley, DEFAULT_SEED};
6+
use rand::{Rng, SeedableRng};
7+
use rand_xorshift::XorShiftRng;
68

79
mod utils;
810

911
fn main() {
10-
let ridged_multi = RidgedMulti::<Perlin>::default();
12+
let mut rng = XorShiftRng::from_seed(DEFAULT_SEED);
13+
14+
let ridged_multi = RidgedMulti::<Perlin>::new(rng.gen());
1115

1216
utils::write_example_to_file(
1317
&PlaneMapBuilder::new(ridged_multi).build(),
@@ -21,7 +25,7 @@ fn main() {
2125
"ridged_multi_worley.png",
2226
);
2327

24-
let ridged_multi = RidgedMulti::<RidgedMulti<Perlin>>::default();
28+
let ridged_multi = RidgedMulti::<RidgedMulti<Perlin>>::new(rng.gen());
2529

2630
utils::write_example_to_file(
2731
&PlaneMapBuilder::new(ridged_multi).build(),

examples/texturegranite.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
extern crate noise;
22

33
use noise::{core::worley::ReturnType, utils::*, *};
4+
use rand::{Rng, SeedableRng};
5+
use rand_xorshift::XorShiftRng;
46

57
mod utils;
68

79
fn main() {
10+
let mut rng = XorShiftRng::from_seed(DEFAULT_SEED);
11+
812
// Primary granite texture. This generates the "roughness" of the texture
913
// when lit by a light source.
10-
let primary_granite = Billow::<Perlin>::new(0)
14+
let primary_granite = Billow::<Perlin>::new(rng.gen())
1115
.set_frequency(8.0)
1216
.set_persistence(0.625)
1317
.set_lacunarity(2.18359375)
1418
.set_octaves(6);
1519

1620
// Use Worley polygons to produce the small grains for the granite texture.
17-
let base_grains = Worley::new(1)
21+
let base_grains = Worley::new(rng.gen())
1822
.set_frequency(16.0)
1923
.set_return_type(ReturnType::Distance);
2024

@@ -28,7 +32,7 @@ fn main() {
2832

2933
// Finally, perturb the granite texture to add realism.
3034
let final_granite = Turbulence::<_, Perlin>::new(combined_granite)
31-
.set_seed(2)
35+
.set_seed(rng.gen())
3236
.set_frequency(4.0)
3337
.set_power(1.0 / 8.0)
3438
.set_roughness(6);

examples/texturejade.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
extern crate noise;
22

33
use noise::{utils::*, *};
4+
use rand::{Rng, SeedableRng};
5+
use rand_xorshift::XorShiftRng;
46

57
mod utils;
68

79
fn main() {
10+
let mut rng = XorShiftRng::from_seed(DEFAULT_SEED);
11+
812
// Primary jade texture. The ridges from the ridged-multifractal function
913
// produces the veins.
10-
let primary_jade = RidgedMulti::<Perlin>::new(0)
14+
let primary_jade = RidgedMulti::<Perlin>::new(rng.gen())
1115
.set_frequency(2.0)
1216
.set_lacunarity(2.20703125)
1317
.set_octaves(6);
@@ -24,7 +28,7 @@ fn main() {
2428

2529
// Slightly perturb the secondary jade texture for more realism.
2630
let perturbed_base_secondary_jade = Turbulence::<_, Perlin>::new(rotated_base_secondary_jade)
27-
.set_seed(1)
31+
.set_seed(rng.gen())
2832
.set_frequency(4.0)
2933
.set_power(1.0 / 4.0)
3034
.set_roughness(4);
@@ -43,7 +47,7 @@ fn main() {
4347
// Finally, perturb the combined jade texture to produce the final jade
4448
// texture. A low roughness produces nice veins.
4549
let final_jade = Turbulence::<_, Perlin>::new(combined_jade)
46-
.set_seed(2)
50+
.set_seed(rng.gen())
4751
.set_frequency(4.0)
4852
.set_power(1.0 / 16.0)
4953
.set_roughness(2);

examples/textureslime.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
11
extern crate noise;
22

33
use noise::{utils::*, *};
4+
use rand::SeedableRng;
5+
use rand_xorshift::XorShiftRng;
46

57
mod utils;
68

79
fn main() {
10+
let mut rng = XorShiftRng::from_seed(DEFAULT_SEED);
11+
812
// Large slime bubble texture.
9-
let large_slime = Billow::<Perlin>::new(0)
13+
let large_slime = Billow::<Perlin>::new(rng.gen())
1014
.set_frequency(4.0)
1115
.set_lacunarity(2.12109375)
1216
.set_octaves(1);
1317

1418
// Base of the small slime bubble texture. This texture will eventually
1519
// appear inside cracks in the large slime bubble texture.
16-
let small_slime_base = Billow::<Perlin>::new(1)
20+
let small_slime_base = Billow::<Perlin>::new(rng.gen())
1721
.set_frequency(24.0)
1822
.set_lacunarity(2.14453125)
1923
.set_octaves(1);
@@ -25,7 +29,7 @@ fn main() {
2529

2630
// Create a map that specifies where the large and small slime bubble
2731
// textures will appear in the final texture map.
28-
let slime_map = RidgedMulti::<Perlin>::new(2)
32+
let slime_map = RidgedMulti::<Perlin>::new(rng.gen())
2933
.set_frequency(2.0)
3034
.set_lacunarity(2.20703125)
3135
.set_octaves(3);
@@ -42,7 +46,7 @@ fn main() {
4246

4347
// Finally, perturb the slime texture to add realism.
4448
let final_slime = Turbulence::<_, Perlin>::new(slime_chooser)
45-
.set_seed(3)
49+
.set_seed(rng.gen())
4650
.set_frequency(8.0)
4751
.set_power(1.0 / 32.0)
4852
.set_roughness(2);

examples/texturewood.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
11
extern crate noise;
22

33
use noise::{utils::*, *};
4+
use rand::{Rng, SeedableRng};
5+
use rand_xorshift::XorShiftRng;
46

57
mod utils;
68

79
fn main() {
10+
let mut rng = XorShiftRng::from_seed(DEFAULT_SEED);
11+
812
// Base wood texture. Uses concentric cylinders aligned on the z-axis, like a log.
913
let base_wood = Cylinders::new().set_frequency(16.0);
1014

1115
// Basic Multifractal noise to use for the wood grain.
12-
let wood_grain_noise = BasicMulti::<Perlin>::new(0)
16+
let wood_grain_noise = BasicMulti::<Perlin>::new(rng.gen())
1317
.set_frequency(48.0)
1418
.set_persistence(0.5)
1519
.set_lacunarity(2.20703125)
@@ -29,7 +33,7 @@ fn main() {
2933

3034
// Slightly perturb the wood to create a more realistic texture.
3135
let perturbed_wood = Turbulence::<_, Perlin>::new(combined_wood)
32-
.set_seed(1)
36+
.set_seed(rng.gen())
3337
.set_frequency(4.0)
3438
.set_power(1.0 / 256.0)
3539
.set_roughness(4);
@@ -42,7 +46,7 @@ fn main() {
4246

4347
// Finally, perturb the wood texture again to produce the final texture.
4448
let final_wood = Turbulence::<_, Perlin>::new(rotated_wood)
45-
.set_seed(2)
49+
.set_seed(rng.gen())
4650
.set_frequency(2.0)
4751
.set_power(1.0 / 64.0)
4852
.set_roughness(4);

0 commit comments

Comments
 (0)