-
Notifications
You must be signed in to change notification settings - Fork 0
/
simplex-help.pd
190 lines (190 loc) · 7.07 KB
/
simplex-help.pd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
#N canvas 475 38 1063 882 10;
#X declare -path simplex;
#X obj 1 1 cnv 16 1060 48 empty empty empty 20 12 0 10 #f0f0f0 #404040 0;
#X obj 78 636 r \$0-in1;
#X obj 1 239 cnv 16 1060 150 empty empty empty 20 12 0 10 #f5f5f5 #404040 0;
#X msg 792 131 normalize 1;
#X msg 856 154 seed;
#X text 363 108 additional numerical argument sets persistence (default: 0.5), f 61;
#X text 28 61 INLETS / OUTLET;
#X msg 792 108 persistence 0.4;
#X msg 792 85 octaves 5;
#X msg 792 154 seed 711;
#X msg 792 177 coeffs 1 3 5;
#X text 382 131 -n flag activates normalization (default: off);
#X text 418 154 -s <int> flag initializes seed for permutation table (default: random value);
#X text 340 85 single numerical argument sets octave count (default: 1 \, max: 1024), f 67;
#X text 868 131 1:on / 0:off;
#X text 891 154 seed or random reseed;
#X text 873 177 custom octave coefficients;
#X text 237 210 <--;
#X text 790 61 MESSAGES;
#X text 274 61 CREATION ARGS;
#X obj 164 419 cnv 16 112 16 empty empty empty 20 12 0 10 #ddeeff #404040 0;
#X obj 171 440 cnv 16 28 16 empty empty empty 20 12 0 10 #ddeeff #404040 0;
#X obj 208 440 cnv 16 46 16 empty empty empty 20 12 0 10 #ddeeff #404040 0;
#X obj 300 419 tgl 16 0 empty empty normalize 0 -8 0 10 #ddeeff #4d4d4d #373737 0 1;
#X msg 300 440 normalize \$1;
#X msg 31 440 octaves \$1;
#X obj 402 419 hsl 102 16 0 1 0 1 empty empty persistence\ (0..1) -2 -8 0 10 #ddeeff #000000 #000000 4400 1;
#N canvas 150 175 449 300 octaves 0;
#X obj 100 100 hradio 16 1 0 7 empty empty octaves\ (1..7) 0 -8 0 10 #ddeeff #000000 #000000 0;
#X obj 100 123 + 1;
#X obj 100 144 outlet;
#X obj 100 27 loadbang;
#X msg 100 48 2;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X coords 0 -1 1 1 112 16 2 100 100;
#X restore 31 419 pd octaves;
#X msg 164 419 coeffs 0.4 0.5 4 5;
#X msg 171 440 seed;
#X msg 208 440 seed 45;
#X text 161 403 custom octaves/seed;
#X obj 164 461 s \$0-in1;
#X obj 31 461 s \$0-in1;
#X obj 300 461 s \$0-in1;
#X text 374 317 Below are visualizations for noises of different dimensionalities and a simple audio experiment that scans the noise space in a circular motion., f 48;
#X text 29 251 Simplex noise is a deterministic and gradient noise function \, meaning it consistently generates the same value for a given input coordinate and produces continuous values for continuous coordinates., f 52;
#X text 29 306 In visual applications \, these properties enable the generation of landscapes using 2D noise for heightmaps \, with animation possible via a 3rd dimension. 3D noise can also be used to create cave systems \, clouds \, or sponge structures in real-time \, without needing to precalculate scene data., f 52;
#X text 374 251 The continuity of values is ideal for audio applications \, and their deterministic nature allows for reproducible musical elements or easy variation by resetting the permutation table with another random seed., f 48;
#X text 37 85 1st inlet -;
#X text 31 154 1st outlet -;
#X text 31 210 2nd outlet -;
#N canvas 442 420 415 219 META 0;
#X text 12 18 AUTHOR Ben Wesch;
#X text 12 181 LICENSE Unlicense;
#X text 12 149 KEYWORDS deterministic noise \, gradient noise \, noise \, perlin noise \, simplex noise \, scan \, scanned synthesis \, 1d \, 2d \, 3d \, 4d, f 61;
#X text 12 69 INLET_0 multichannel coordinate signal \, msg;
#X text 12 89 INLET_1 persistence signal;
#X text 12 109 OUTLET_0 sampled noise signal;
#X text 12 129 OUTLET_1 optional multichannel derivatives signal;
#X text 12 38 DESCRIPTION external for control rate simplex noise sampling with 1d \, 2d \, 3d and 4d list input.;
#X restore 987 18 pd META;
#X msg 94 538 1;
#X floatatom 57 538 5 0 0 0 - - - 0;
#X msg 217 538 1 4 2 5;
#X msg 274 538 1 2 3 4 5;
#X msg 344 538 1 2 3 4 5 6 7 8;
#X msg 166 538 3 2 \$1;
#X floatatom 166 518 5 0 0 0 - - - 0;
#X msg 127 538 \$1 2;
#X floatatom 127 518 5 0 0 0 - - - 0;
#X floatatom 451 518 5 0 0 0 - - - 0;
#X obj 31 652 t a;
#X text 344 209 -d flag activates output of derivatives on 2nd outlet;
#X obj 31 18 simplex;
#X text 91 18 External for data rate simplex noise sampling with 1d to 4d multichannel input, f 78;
#X text 112 85 list for sampling position (1d to 4d) \, messages, f 21;
#X text 111 210 derivatives list;
#N canvas 0 22 450 278 (subpatch) 0;
#X array \$0-vis 400 float 0;
#X coords 0 1 399 -1 400 180 1 0 0;
#X restore 237 652 graph;
#X obj 399 461 s \$0-in1;
#X obj 661 631 tgl 16 1 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 1 1;
#X obj 661 816 tabwrite \$0-vis;
#X msg 399 440 persistence \$1;
#X obj 31 816 print;
#X obj 106 816 print derivatives;
#X obj 31 735 simplex -n -d;
#X obj 745 719 r \$0-in1;
#X obj 31 538 bng 16 250 50 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000;
#X obj 661 735 simplex 3;
#X obj 681 517 hsl 102 16 0 1 0 0 empty empty x\ offset -2 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X floatatom 678 538 5 0 0 0 - - - 0;
#X obj 794 517 hsl 102 16 0 1 0 0 empty empty y\ offset -2 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 907 517 hsl 102 16 0 1 0 0 empty empty z\ offset -2 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X floatatom 791 538 5 0 0 0 - - - 0;
#X floatatom 904 538 5 0 0 0 - - - 0;
#X msg 451 538 \$1 err 3 \, \$1 0 3;
#X obj 277 85 simplex 3;
#X obj 277 108 simplex 3 0.7;
#X obj 277 131 simplex -n 3 0.7;
#X obj 277 154 simplex -s 42 -n 3 0.7;
#X obj 277 209 simplex -d;
#X text 111 154 sampled noise value;
#N canvas 1136 644 543 354 sample 0;
#X obj 30 30 inlet;
#X obj 80 30 inlet;
#X obj 130 30 inlet;
#X obj 180 30 inlet;
#X obj 30 298 outlet;
#X obj 80 298 outlet;
#X obj 30 143 until;
#X obj 30 164 f;
#X obj 57 164 + 1;
#X obj 30 185 t f f;
#X msg 69 143 0;
#X obj 30 227 +;
#X msg 30 122 400;
#X obj 30 248 pack f f f;
#X obj 30 101 t b b;
#X obj 30 80 metro 20;
#X obj 30 206 / 400;
#X obj 222 124 s \$0-vis;
#X obj 222 82 loadbang;
#X msg 222 103 xticks 0 40 5 \, yticks 0 0.1 10;
#X connect 0 0 15 0;
#X connect 1 0 11 1;
#X connect 2 0 13 1;
#X connect 3 0 13 2;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 0 9 0;
#X connect 8 0 7 1;
#X connect 9 0 16 0;
#X connect 9 1 5 0;
#X connect 10 0 7 1;
#X connect 11 0 13 0;
#X connect 12 0 6 0;
#X connect 13 0 4 0;
#X connect 14 0 12 0;
#X connect 14 1 10 0;
#X connect 15 0 14 0;
#X connect 16 0 11 0;
#X connect 18 0 19 0;
#X connect 19 0 17 0;
#X restore 661 652 pd sample;
#X text 418 835 x:0.5;
#X text 616 835 x:1.0;
#X text 227 835 x:0.0;
#X obj 851 18 declare -path simplex;
#X connect 1 0 53 0;
#X connect 23 0 24 0;
#X connect 24 0 34 0;
#X connect 25 0 33 0;
#X connect 26 0 63 0;
#X connect 27 0 25 0;
#X connect 28 0 32 0;
#X connect 29 0 32 0;
#X connect 30 0 32 0;
#X connect 43 0 53 0;
#X connect 44 0 53 0;
#X connect 45 0 53 0;
#X connect 46 0 53 0;
#X connect 47 0 53 0;
#X connect 48 0 53 0;
#X connect 49 0 48 0;
#X connect 50 0 53 0;
#X connect 51 0 50 0;
#X connect 52 0 76 0;
#X connect 53 0 66 0;
#X connect 61 0 83 0;
#X connect 63 0 60 0;
#X connect 66 0 64 0;
#X connect 66 1 65 0;
#X connect 67 0 69 0;
#X connect 68 0 53 0;
#X connect 69 0 62 0;
#X connect 70 0 71 0;
#X connect 71 0 83 1;
#X connect 72 0 74 0;
#X connect 73 0 75 0;
#X connect 74 0 83 2;
#X connect 75 0 83 3;
#X connect 76 0 53 0;
#X connect 83 0 69 0;
#X connect 83 1 62 1;