@@ -44,10 +44,7 @@ function SimplexNoise(random) {
44
44
this . p = buildPermutationTable ( random ) ;
45
45
this . perm = new Uint8Array ( 512 ) ;
46
46
this . permMod12 = new Uint8Array ( 512 ) ;
47
- for ( var i = 0 ; i < 256 ; i ++ ) {
48
- this . p [ i ] = random ( ) * 256 ;
49
- }
50
- for ( i = 0 ; i < 512 ; i ++ ) {
47
+ for ( var i = 0 ; i < 512 ; i ++ ) {
51
48
this . perm [ i ] = this . p [ i & 255 ] ;
52
49
this . permMod12 [ i ] = this . perm [ i ] % 12 ;
53
50
}
@@ -229,28 +226,28 @@ SimplexNoise.prototype = {
229
226
var jj = j & 255 ;
230
227
var kk = k & 255 ;
231
228
// Calculate the contribution from the four corners
232
- var t0 = 0.5 - x0 * x0 - y0 * y0 - z0 * z0 ;
229
+ var t0 = 0.6 - x0 * x0 - y0 * y0 - z0 * z0 ;
233
230
if ( t0 < 0 ) n0 = 0.0 ;
234
231
else {
235
232
var gi0 = permMod12 [ ii + perm [ jj + perm [ kk ] ] ] * 3 ;
236
233
t0 *= t0 ;
237
234
n0 = t0 * t0 * ( grad3 [ gi0 ] * x0 + grad3 [ gi0 + 1 ] * y0 + grad3 [ gi0 + 2 ] * z0 ) ;
238
235
}
239
- var t1 = 0.5 - x1 * x1 - y1 * y1 - z1 * z1 ;
236
+ var t1 = 0.6 - x1 * x1 - y1 * y1 - z1 * z1 ;
240
237
if ( t1 < 0 ) n1 = 0.0 ;
241
238
else {
242
239
var gi1 = permMod12 [ ii + i1 + perm [ jj + j1 + perm [ kk + k1 ] ] ] * 3 ;
243
240
t1 *= t1 ;
244
241
n1 = t1 * t1 * ( grad3 [ gi1 ] * x1 + grad3 [ gi1 + 1 ] * y1 + grad3 [ gi1 + 2 ] * z1 ) ;
245
242
}
246
- var t2 = 0.5 - x2 * x2 - y2 * y2 - z2 * z2 ;
243
+ var t2 = 0.6 - x2 * x2 - y2 * y2 - z2 * z2 ;
247
244
if ( t2 < 0 ) n2 = 0.0 ;
248
245
else {
249
246
var gi2 = permMod12 [ ii + i2 + perm [ jj + j2 + perm [ kk + k2 ] ] ] * 3 ;
250
247
t2 *= t2 ;
251
248
n2 = t2 * t2 * ( grad3 [ gi2 ] * x2 + grad3 [ gi2 + 1 ] * y2 + grad3 [ gi2 + 2 ] * z2 ) ;
252
249
}
253
- var t3 = 0.5 - x3 * x3 - y3 * y3 - z3 * z3 ;
250
+ var t3 = 0.6 - x3 * x3 - y3 * y3 - z3 * z3 ;
254
251
if ( t3 < 0 ) n3 = 0.0 ;
255
252
else {
256
253
var gi3 = permMod12 [ ii + 1 + perm [ jj + 1 + perm [ kk + 1 ] ] ] * 3 ;
@@ -349,35 +346,35 @@ SimplexNoise.prototype = {
349
346
var kk = k & 255 ;
350
347
var ll = l & 255 ;
351
348
// Calculate the contribution from the five corners
352
- var t0 = 0.5 - x0 * x0 - y0 * y0 - z0 * z0 - w0 * w0 ;
349
+ var t0 = 0.6 - x0 * x0 - y0 * y0 - z0 * z0 - w0 * w0 ;
353
350
if ( t0 < 0 ) n0 = 0.0 ;
354
351
else {
355
352
var gi0 = ( perm [ ii + perm [ jj + perm [ kk + perm [ ll ] ] ] ] % 32 ) * 4 ;
356
353
t0 *= t0 ;
357
354
n0 = t0 * t0 * ( grad4 [ gi0 ] * x0 + grad4 [ gi0 + 1 ] * y0 + grad4 [ gi0 + 2 ] * z0 + grad4 [ gi0 + 3 ] * w0 ) ;
358
355
}
359
- var t1 = 0.5 - x1 * x1 - y1 * y1 - z1 * z1 - w1 * w1 ;
356
+ var t1 = 0.6 - x1 * x1 - y1 * y1 - z1 * z1 - w1 * w1 ;
360
357
if ( t1 < 0 ) n1 = 0.0 ;
361
358
else {
362
359
var gi1 = ( perm [ ii + i1 + perm [ jj + j1 + perm [ kk + k1 + perm [ ll + l1 ] ] ] ] % 32 ) * 4 ;
363
360
t1 *= t1 ;
364
361
n1 = t1 * t1 * ( grad4 [ gi1 ] * x1 + grad4 [ gi1 + 1 ] * y1 + grad4 [ gi1 + 2 ] * z1 + grad4 [ gi1 + 3 ] * w1 ) ;
365
362
}
366
- var t2 = 0.5 - x2 * x2 - y2 * y2 - z2 * z2 - w2 * w2 ;
363
+ var t2 = 0.6 - x2 * x2 - y2 * y2 - z2 * z2 - w2 * w2 ;
367
364
if ( t2 < 0 ) n2 = 0.0 ;
368
365
else {
369
366
var gi2 = ( perm [ ii + i2 + perm [ jj + j2 + perm [ kk + k2 + perm [ ll + l2 ] ] ] ] % 32 ) * 4 ;
370
367
t2 *= t2 ;
371
368
n2 = t2 * t2 * ( grad4 [ gi2 ] * x2 + grad4 [ gi2 + 1 ] * y2 + grad4 [ gi2 + 2 ] * z2 + grad4 [ gi2 + 3 ] * w2 ) ;
372
369
}
373
- var t3 = 0.5 - x3 * x3 - y3 * y3 - z3 * z3 - w3 * w3 ;
370
+ var t3 = 0.6 - x3 * x3 - y3 * y3 - z3 * z3 - w3 * w3 ;
374
371
if ( t3 < 0 ) n3 = 0.0 ;
375
372
else {
376
373
var gi3 = ( perm [ ii + i3 + perm [ jj + j3 + perm [ kk + k3 + perm [ ll + l3 ] ] ] ] % 32 ) * 4 ;
377
374
t3 *= t3 ;
378
375
n3 = t3 * t3 * ( grad4 [ gi3 ] * x3 + grad4 [ gi3 + 1 ] * y3 + grad4 [ gi3 + 2 ] * z3 + grad4 [ gi3 + 3 ] * w3 ) ;
379
376
}
380
- var t4 = 0.5 - x4 * x4 - y4 * y4 - z4 * z4 - w4 * w4 ;
377
+ var t4 = 0.6 - x4 * x4 - y4 * y4 - z4 * z4 - w4 * w4 ;
381
378
if ( t4 < 0 ) n4 = 0.0 ;
382
379
else {
383
380
var gi4 = ( perm [ ii + 1 + perm [ jj + 1 + perm [ kk + 1 + perm [ ll + 1 ] ] ] ] % 32 ) * 4 ;
0 commit comments