Knowledge (XXG)

Perlin noise

Source 📝

162: 214: 311: 238: 206: 262: 134: 20: 503: 3620: 573:
the random gradient direction shuffles bits of the integer coordinates of corners, which is much faster than shuffling using the interference at high frequency of rotations of the integer coordinates of corners, merged and rotated again at high frequency by a product: the rotations are not uniformly
157:
appearance, yet all of its visual details are the same size. This property allows it to be readily controllable; multiple scaled copies of Perlin noise can be inserted into mathematical expressions to create a great variety of procedural textures. Synthetic textures using Perlin noise are often used
283:
Note that a gradient vector's influence grows with distance, which can be avoided by normalizing the offset vector to a length of 1 first. This would introduce noticeable sharp changes, except the distance is taken into account in the following interpolation step. Normalizing the offset vector is
330:
grid nodes. Therefore, at points close to the grid nodes, the output will approximate the dot product of the gradient vector of the node and the offset vector to the node. This means that the noise function will pass through 0 at every node, giving Perlin noise its characteristic look.
592:(with the first three derivatives equal to zero on the clamping boundaries) and not the basic linear step. This avoids visible artefacts, notably along vertices or diagonals joining the sampling corners, where the result would visibly be anisotropic (tainting the desired 473: 125:. Simplex noise has the same purpose, but uses a simpler space-filling grid. Simplex noise alleviates some of the problems with Perlin's "classic noise", among them computational complexity and visually-significant directional artifacts. 196:
that looks natural. This success is in part due to the hierarchical structuring of Perlin noise that mimics naturally occurring hierarchical structures, and therefore also has found to be useful in environmental science applications.
112:
on computer generated surfaces for motion picture visual effects. The development of Perlin Noise has allowed computer graphics artists to better represent the complexity of natural phenomena in visual effects for the motion picture
287:
For a point in a two-dimensional grid, this will require the computation of four offset vectors and dot products, while in three dimensions it will require eight offset vectors and eight dot products. In general, the algorithm has
3350:
This specific permutation is not absolutely required, though it does require a randomized array of the integers 0 to 255. If creating a new permutation table, care should be taken to ensure uniform distribution of the values.
158:
in CGI to make computer-generated visual elements – such as object surfaces, fire, smoke, or clouds – appear more natural, by imitating the controlled random appearance of textures in nature.
3359:
For each evaluation of the noise function, the dot product of the position and gradient vectors must be evaluated at each node of the containing grid cell. Perlin noise therefore scales with complexity
273:
corners of that cell and their associated gradient vectors. Next, for each corner, calculate an offset vector. An offset vector is a displacement vector from that corner to the candidate point.
581:
cubes and then uses a random permutation of these cubes to shuffle them, and then each cube position corners is assigned one of twelve directions to the neighboring non-permuted cubes in a
600:; if the noise was used to generate a solid crystal, it would not be entirely black and opaque to the light, but partly transparent and colored in some discrete directions of observation). 365: 3564: 3739: 3689: 225:, but can be defined for any number of dimensions. An implementation typically involves three steps: defining a grid of random gradient vectors, computing the 280:
between its gradient vector and the offset vector to the candidate point. This dot product will be zero if the candidate point is exactly at the grid corner.
1795:
Many implementations of Perlin noise use the same permutation set that Ken Perlin used in his original implementation. That implementation is as follows:
3560: 161: 3786: 4426: 4075: 101: 4242: 3583: 265:
The dot product of each point with its nearest grid node gradient value. The dot product with the other three nodes in the cell is not shown.
4579: 3618:, Kenneth Perlin, "Standard for perlin noise", issued 2005-03-15, assigned to Kenneth Perlin and Wsou Investments LLC 3718: 4436: 253:-dimensional unit-length gradient vector, except in the one dimensional case where the gradients are random scalars between −1 and 1. 209:
Perlin noise rescaled and added into itself to create fractal noise. At each step, noise frequency is doubled and amplitude is halved.
4318: 4232: 546: 513: 3693: 570:
it is using a three-dimensional approach by interpolating between 8 corners of a cube instead of the 4 corners of a square below.
117:
Perlin did not apply for any patents on the algorithm, but in 2001 he was granted a patent for the use of 3D+ implementations of
4573: 4421: 4272: 3950: 97: 269:
For working out the value of any candidate point, first find the unique grid cell in which the point lies. Then, identify the
193: 4106: 4482: 4389: 3779: 3539: 4237: 3959: 186: 170: 528: 4630: 72: 4162: 524: 4615: 4532: 4055: 3724:
Rob Farber's tutorial demonstrating Perlin noise generation and visualization on CUDA-enabled graphics processors
3421: 4620: 560: 217:
2-D Perlin noise with a contour line at zero, showing that the noise is zero at the gradient mesh intersections
182: 3373:
dimensions. Alternatives to Perlin noise producing similar results with improved complexity scaling include
4446: 4035: 3772: 468:{\displaystyle f(x)=a_{0}+\operatorname {smoothstep} (x)\cdot (a_{1}-a_{0})\quad {\text{for }}0\leq x\leq 1} 4369: 4304: 4267: 222: 4558: 4403: 4247: 3902: 585:
paving space: this requires only integer operations but maintains a uniform distribution of directions.
3615: 4467: 3984: 3759: 4227: 4222: 4040: 3943: 3590: 4283: 4173: 142: 108:
To Ken Perlin for the development of Perlin Noise, a technique used to produce natural appearing
4625: 4497: 4492: 4288: 4112: 4009: 3994: 3974: 3917: 3907: 3823: 3554: 3504: 3378: 150: 122: 84: 71:
developed Perlin noise in 1983 as a result of his frustration with the "machine-like" look of
45: 169:
It is also frequently used to generate textures when memory is extremely limited, such as in
4590: 4563: 4117: 4050: 4014: 3838: 3647: 3496: 3452: 3395: 714:* // Use ] for an even smoother result with a second derivative equal to zero on boundaries: 205: 213: 4568: 4522: 4487: 4477: 4045: 4004: 109: 3928: 229:
between the gradient vectors and their offsets, and interpolation between these values.
3733: 1782:// Will return in range -1 to 1. To make it in range 0 to 1, multiply by 0.5 and add 0.5 559:
The following is a two-dimensional implementation of classical Perlin noise, written in
310: 237: 133: 4197: 4142: 4122: 3936: 3815: 3361: 295: 261: 146: 37: 4609: 4553: 4527: 4262: 4137: 4090: 4085: 4080: 4070: 4065: 3989: 3843: 3833: 3471: 3400: 3374: 249:-dimensional grid where each grid intersection has associated with it a fixed random 178: 174: 154: 118: 53: 49: 19: 4252: 4202: 4132: 3881: 3754: 485:
Noise functions for use in computer graphics typically produce values in the range
3729:
Jason Bevins's extensive C++ library for generating complex, coherent noise values
3527: 4584: 4278: 4257: 4192: 4184: 4127: 4060: 3999: 3861: 3853: 3723: 3635: 3390: 593: 277: 226: 221:
Perlin noise is most commonly implemented as a two-, three- or four-dimensional
4179: 4168: 4152: 4147: 3979: 3912: 795:// No precomputed gradients mean this works for any number of grid coordinates 597: 589: 479: 323: 322:
dot products. Interpolation is performed using a function that has zero first
79:
paper in 1985 called "An Image Synthesizer". He developed it after working on
68: 41: 3508: 189:
and for non-real-time procedural textures in all kinds of computer graphics.
4472: 3764: 57: 3456: 3652: 76: 149:
used by visual effects artists to increase the appearance of realism in
4537: 566:
The original reference implementation by Perlin had major differences:
717:* return (a1 - a0) * ((w * (w * 6.0 - 15.0) + 10.0) * w * w * w) + a0; 705:/* // Use this cubic interpolation ] instead, for a smooth appearance: 4157: 3668: 3429: 87: 80: 531:. Statements consisting only of original research should be removed. 3744: 3728: 4379: 4355: 4340: 4333: 4030: 309: 260: 236: 212: 204: 160: 132: 18: 1107:// Computes the dot product of the distance and gradient vectors. 92: 3932: 3768: 3749: 496: 3745:
The Book of Shaders by Patricio Gonzalez Vivo & Jen Lowe
341:, an example of a function that interpolates between value 75:(CGI) at the time. He formally described his findings in a 104:
for creating the algorithm, the citation for which read:
56:. It is most commonly implemented in two, three, or four 44:
in 1983. It has many uses, including but not limited to:
3636:"Perlin noise as a hierarchical neutral landscape model" 52:
changes to a variable, and assisting in the creation of
520: 3740:
Perlin Noise Explained in Depth (with C++ source code)
1440:// Could also use higher order polynomial/s-curve here 612:/* Function to linearly interpolate between a0 and a1 368: 165:
A virtual organic surface generated with Perlin noise
588:
the interpolation function is the smoother 4-degree
4546: 4515: 4506: 4460: 4297: 4213: 4099: 4023: 3967: 3895: 3874: 3852: 3814: 3807: 3800: 3760:
Random terrain generation and perlin noise with SDL
60:, but can be defined for any number of dimensions. 708:* return (a1 - a0) * (3.0 - w * 2.0) * w * w + a0; 467: 3443:Perlin, Ken (July 1985). "An image synthesizer". 23:Two-dimensional slice through 3D Perlin noise at 137:A virtual landscape generated using Perlin noise 3563:) CS1 maint: bot: original URL status unknown ( 106: 3944: 3780: 577:Perlin's method split the integer space into 326:(and possibly also second derivative) at the 192:It is frequently used in video games to make 8: 318:The final step is interpolation between the 3577: 3575: 3472:"In the beginning: The Pixel Stream Editor" 1503:// Interpolate between grid point gradients 1299:// Compute Perlin noise at coordinates x, y 16:Type of gradient noise in computer graphics 4512: 3951: 3937: 3929: 3811: 3804: 3787: 3773: 3765: 3542:. Archived from the original on 2018-05-01 241:A two-dimensional grid of gradient vectors 3651: 3569:of Ken Perlin's 'coherent noise function' 660:/* // You may want clamping by inserting: 547:Learn how and when to remove this message 445: 435: 422: 388: 367: 1158:// Get gradient from integer coordinates 4427:Signal-to-interference-plus-noise ratio 3412: 759:/* Create pseudorandom direction vector 102:Academy Award for Technical Achievement 100:(MAGI). In 1997, Perlin was awarded an 4243:Equivalent pulse code modulation noise 3559:: CS1 maint: archived copy as title ( 3552: 3755:Python package to create Perlin noise 7: 4366:(energy per symbol to noise density) 3719:Matt Zucker's Perlin noise math FAQ 181:, have become nearly ubiquitous in 4437:Signal-to-quantization-noise ratio 1437:// Determine interpolation weights 1332:// Determine grid cell coordinates 615:* Weight w should be in the range 14: 4351:(energy per bit to noise density) 4319:Carrier-to-receiver noise density 4233:Effective input noise temperature 96:(1982) for the animation company 3962:(physics and telecommunications) 501: 4574:Block-matching and 3D filtering 4422:Signal-to-noise ratio (imaging) 4273:Noise, vibration, and harshness 3634:Etherington, Thomas R. (2022). 489:and can be scaled accordingly. 444: 284:however not a common practice. 98:Mathematical Applications Group 46:procedurally generating terrain 3445:ACM SIGGRAPH Computer Graphics 1188:// Compute the distance vector 441: 415: 409: 403: 378: 372: 194:procedurally generated terrain 1: 4107:Additive white Gaussian noise 3750:Perlin noise online generator 3497:"Oscar is FX Wizard's Reward" 314:The final interpolated result 276:For each corner, we take the 4483:Interference (communication) 4390:Signal-to-interference ratio 4380:Signal, noise and distortion 3428:. Ken Perlin. Archived from 666:* if (1.0 < w) return a1; 663:* if (0.0 > w) return a0; 4238:Equivalent noise resistance 3584:"Simplex noise demystified" 527:the claims made and adding 173:. Its successors, such as 4649: 1251:// Compute the dot-product 73:computer-generated imagery 4533:Total variation denoising 3795:Procedural coherent noise 350:at grid node 0 and value 183:graphics processing units 3884:(Voronoi/Cellular noise) 1797: 603: 4447:Contrast-to-noise ratio 4370:Modulation error ratio 4305:Carrier-to-noise ratio 4268:Noise spectral density 3690:"Perlin Noise: Part 2" 469: 315: 266: 242: 218: 210: 166: 138: 115: 30: 4585:Denoising autoencoder 4559:Anisotropic diffusion 4404:Signal-to-noise ratio 4248:Impulse noise (audio) 4163:Johnson–Nyquist noise 4051:Government regulation 3903:Procedural generation 3616:US patent 6867776 3457:10.1145/325165.325247 470: 313: 264: 240: 216: 208: 164: 153:. The function has a 145:primitive, a type of 136: 22: 4468:List of noise topics 3653:10.5194/we-22-1-2022 3528:Original source code 3451:(97–8930): 287–296. 366: 4228:Circuit noise level 4223:Channel noise level 3696:on 17 February 2023 3582:Gustavson, Stefan. 3432:on October 8, 2007. 487:[–1.0, 1.0] 482:function was used. 4284:Pseudorandom noise 4174:Quantization error 3985:Noise cancellation 3918:Fractal landscapes 3734:PHP Implementation 512:possibly contains 465: 359:at grid node 1 is 316: 267: 243: 219: 211: 187:real-time graphics 167: 143:procedural texture 141:Perlin noise is a 139: 31: 4631:Computer graphics 4603: 4602: 4599: 4598: 4538:Wavelet denoising 4498:Thermal radiation 4493:Spectrum analyzer 4289:Statistical noise 4113:Atmospheric noise 4010:Noise temperature 3995:Noise measurement 3975:Acoustic quieting 3926: 3925: 3908:Computer graphics 3891: 3890: 3870: 3869: 3824:OpenSimplex noise 3379:OpenSimplex noise 852:// rotation width 557: 556: 549: 514:original research 448: 151:computer graphics 123:texture synthesis 85:computer animated 4638: 4616:Noise (graphics) 4591:Deep Image Prior 4580:Shrinkage Fields 4564:Bilateral filter 4513: 4118:Background noise 4015:Phase distortion 3953: 3946: 3939: 3930: 3839:Simulation noise 3812: 3805: 3789: 3782: 3775: 3766: 3706: 3705: 3703: 3701: 3692:. Archived from 3686: 3680: 3679: 3677: 3675: 3664: 3658: 3657: 3655: 3631: 3625: 3624: 3623: 3619: 3612: 3606: 3605: 3603: 3601: 3596:on 21 March 2023 3595: 3589:. Archived from 3588: 3579: 3570: 3568: 3558: 3550: 3548: 3547: 3536: 3530: 3525: 3519: 3518: 3516: 3515: 3492: 3486: 3485: 3483: 3481: 3476: 3467: 3461: 3460: 3440: 3434: 3433: 3426:noisemachine.com 3417: 3396:Simulation noise 3372: 3367: 3346: 3343: 3340: 3337: 3334: 3331: 3328: 3325: 3322: 3319: 3316: 3313: 3310: 3307: 3304: 3301: 3298: 3295: 3292: 3289: 3286: 3283: 3280: 3277: 3274: 3271: 3268: 3265: 3262: 3259: 3256: 3253: 3250: 3247: 3244: 3241: 3238: 3235: 3232: 3229: 3226: 3223: 3220: 3217: 3214: 3211: 3208: 3205: 3202: 3199: 3196: 3193: 3190: 3187: 3184: 3181: 3178: 3175: 3172: 3169: 3166: 3163: 3160: 3157: 3154: 3151: 3148: 3145: 3142: 3139: 3136: 3133: 3130: 3127: 3124: 3121: 3118: 3115: 3112: 3109: 3106: 3103: 3100: 3097: 3094: 3091: 3088: 3085: 3082: 3079: 3076: 3073: 3070: 3067: 3064: 3061: 3058: 3055: 3052: 3049: 3046: 3043: 3040: 3037: 3034: 3031: 3028: 3025: 3022: 3019: 3016: 3013: 3010: 3007: 3004: 3001: 2998: 2995: 2992: 2989: 2986: 2983: 2980: 2977: 2974: 2971: 2968: 2965: 2962: 2959: 2956: 2953: 2950: 2947: 2944: 2941: 2938: 2935: 2932: 2929: 2926: 2923: 2920: 2917: 2914: 2911: 2908: 2905: 2902: 2899: 2896: 2893: 2890: 2887: 2884: 2881: 2878: 2875: 2872: 2869: 2866: 2863: 2860: 2857: 2854: 2851: 2848: 2845: 2842: 2839: 2836: 2833: 2830: 2827: 2824: 2821: 2818: 2815: 2812: 2809: 2806: 2803: 2800: 2797: 2794: 2791: 2788: 2785: 2782: 2779: 2776: 2773: 2770: 2767: 2764: 2761: 2758: 2755: 2752: 2749: 2746: 2743: 2740: 2737: 2734: 2731: 2728: 2725: 2722: 2719: 2716: 2713: 2710: 2707: 2704: 2701: 2698: 2695: 2692: 2689: 2686: 2683: 2680: 2677: 2674: 2671: 2668: 2665: 2662: 2659: 2656: 2653: 2650: 2647: 2644: 2641: 2638: 2635: 2632: 2629: 2626: 2623: 2620: 2617: 2614: 2611: 2608: 2605: 2602: 2599: 2596: 2593: 2590: 2587: 2584: 2581: 2578: 2575: 2572: 2569: 2566: 2563: 2560: 2557: 2554: 2551: 2548: 2545: 2542: 2539: 2536: 2533: 2530: 2527: 2524: 2521: 2518: 2515: 2512: 2509: 2506: 2503: 2500: 2497: 2494: 2491: 2488: 2485: 2482: 2479: 2476: 2473: 2470: 2467: 2464: 2461: 2458: 2455: 2452: 2449: 2446: 2443: 2440: 2437: 2434: 2431: 2428: 2425: 2422: 2419: 2416: 2413: 2410: 2407: 2404: 2401: 2398: 2395: 2392: 2389: 2386: 2383: 2380: 2377: 2374: 2371: 2368: 2365: 2362: 2359: 2356: 2353: 2350: 2347: 2344: 2341: 2338: 2335: 2332: 2329: 2326: 2323: 2320: 2317: 2314: 2311: 2308: 2305: 2302: 2299: 2296: 2293: 2290: 2287: 2284: 2281: 2278: 2275: 2272: 2269: 2266: 2263: 2260: 2257: 2254: 2251: 2248: 2245: 2242: 2239: 2236: 2233: 2230: 2227: 2224: 2221: 2218: 2215: 2212: 2209: 2206: 2203: 2200: 2197: 2194: 2191: 2188: 2185: 2182: 2179: 2176: 2173: 2170: 2167: 2164: 2161: 2158: 2155: 2152: 2149: 2146: 2143: 2140: 2137: 2134: 2131: 2128: 2125: 2122: 2119: 2116: 2113: 2110: 2107: 2104: 2101: 2098: 2095: 2092: 2089: 2086: 2083: 2080: 2077: 2074: 2071: 2068: 2065: 2062: 2059: 2056: 2053: 2050: 2047: 2044: 2041: 2038: 2035: 2032: 2029: 2026: 2023: 2020: 2017: 2014: 2011: 2008: 2005: 2002: 1999: 1996: 1993: 1990: 1987: 1984: 1981: 1978: 1975: 1972: 1969: 1966: 1963: 1960: 1957: 1954: 1951: 1948: 1945: 1942: 1939: 1936: 1933: 1930: 1927: 1924: 1921: 1918: 1915: 1912: 1909: 1906: 1903: 1900: 1897: 1894: 1891: 1888: 1885: 1882: 1879: 1876: 1873: 1870: 1867: 1864: 1861: 1858: 1855: 1852: 1849: 1846: 1843: 1840: 1837: 1834: 1831: 1828: 1825: 1822: 1819: 1816: 1813: 1810: 1807: 1804: 1801: 1786: 1783: 1780: 1777: 1774: 1771: 1768: 1765: 1762: 1759: 1756: 1753: 1750: 1747: 1744: 1741: 1738: 1735: 1732: 1729: 1726: 1723: 1720: 1717: 1714: 1711: 1708: 1705: 1702: 1699: 1696: 1693: 1690: 1687: 1684: 1681: 1678: 1675: 1672: 1669: 1666: 1663: 1660: 1657: 1654: 1651: 1648: 1645: 1642: 1639: 1636: 1633: 1630: 1627: 1624: 1621: 1618: 1615: 1612: 1609: 1606: 1603: 1600: 1597: 1594: 1591: 1588: 1585: 1582: 1579: 1576: 1573: 1570: 1567: 1564: 1561: 1558: 1555: 1552: 1549: 1546: 1543: 1540: 1537: 1534: 1531: 1528: 1525: 1522: 1519: 1516: 1513: 1510: 1507: 1504: 1501: 1498: 1495: 1492: 1489: 1486: 1483: 1480: 1477: 1474: 1471: 1468: 1465: 1462: 1459: 1456: 1453: 1450: 1447: 1444: 1441: 1438: 1435: 1432: 1429: 1426: 1423: 1420: 1417: 1414: 1411: 1408: 1405: 1402: 1399: 1396: 1393: 1390: 1387: 1384: 1381: 1378: 1375: 1372: 1369: 1366: 1363: 1360: 1357: 1354: 1351: 1348: 1345: 1342: 1339: 1336: 1333: 1330: 1327: 1324: 1321: 1318: 1315: 1312: 1309: 1306: 1303: 1300: 1297: 1294: 1291: 1288: 1285: 1282: 1279: 1276: 1273: 1270: 1267: 1264: 1261: 1258: 1255: 1252: 1249: 1246: 1243: 1240: 1237: 1234: 1231: 1228: 1225: 1222: 1219: 1216: 1213: 1210: 1207: 1204: 1201: 1198: 1195: 1192: 1189: 1186: 1183: 1180: 1177: 1174: 1171: 1168: 1165: 1162: 1159: 1156: 1153: 1150: 1147: 1144: 1141: 1138: 1135: 1132: 1129: 1126: 1123: 1120: 1117: 1114: 1111: 1108: 1105: 1102: 1099: 1096: 1093: 1090: 1087: 1084: 1081: 1078: 1075: 1072: 1069: 1066: 1063: 1060: 1057: 1054: 1051: 1048: 1045: 1042: 1039: 1036: 1033: 1030: 1027: 1024: 1021: 1018: 1015: 1012: 1009: 1006: 1003: 1000: 997: 994: 991: 988: 985: 982: 979: 976: 973: 970: 967: 964: 961: 958: 955: 952: 949: 946: 943: 940: 937: 934: 931: 928: 925: 922: 919: 916: 913: 910: 907: 904: 901: 898: 895: 892: 889: 886: 883: 880: 877: 874: 871: 868: 865: 862: 859: 856: 853: 850: 847: 844: 841: 838: 835: 832: 829: 826: 823: 820: 817: 814: 811: 808: 805: 802: 799: 796: 793: 790: 787: 784: 781: 778: 775: 772: 769: 766: 763: 760: 757: 754: 751: 748: 745: 742: 739: 736: 733: 730: 727: 724: 721: 718: 715: 712: 709: 706: 703: 700: 697: 694: 691: 688: 685: 682: 679: 676: 673: 670: 667: 664: 661: 658: 655: 652: 649: 646: 643: 640: 637: 634: 631: 628: 625: 622: 619: 616: 613: 610: 607: 584: 580: 552: 545: 541: 538: 532: 529:inline citations 505: 504: 497: 488: 474: 472: 471: 466: 449: 446: 440: 439: 427: 426: 393: 392: 358: 349: 340: 329: 321: 301: 294: 272: 252: 248: 201:Algorithm detail 29: 4648: 4647: 4641: 4640: 4639: 4637: 4636: 4635: 4621:Special effects 4606: 4605: 4604: 4595: 4569:Non-local means 4542: 4523:Low-pass filter 4508: 4502: 4488:Noise generator 4478:Colors of noise 4456: 4363: 4359: 4348: 4344: 4293: 4215: 4209: 4189:Coherent noise 4165:(thermal noise) 4095: 4019: 4005:Noise reduction 3963: 3957: 3927: 3922: 3887: 3866: 3848: 3796: 3793: 3715: 3710: 3709: 3699: 3697: 3688: 3687: 3683: 3673: 3671: 3666: 3665: 3661: 3633: 3632: 3628: 3621: 3614: 3613: 3609: 3599: 3597: 3593: 3586: 3581: 3580: 3573: 3551: 3545: 3543: 3540:"Archived copy" 3538: 3537: 3533: 3526: 3522: 3513: 3511: 3494: 3493: 3489: 3479: 3477: 3474: 3469: 3468: 3464: 3442: 3441: 3437: 3419: 3418: 3414: 3409: 3387: 3370: 3362: 3357: 3348: 3347: 3344: 3341: 3338: 3335: 3332: 3329: 3326: 3323: 3320: 3317: 3314: 3311: 3308: 3305: 3302: 3299: 3296: 3293: 3290: 3287: 3284: 3281: 3278: 3275: 3272: 3269: 3266: 3263: 3260: 3257: 3254: 3251: 3248: 3245: 3242: 3239: 3236: 3233: 3230: 3227: 3224: 3221: 3218: 3215: 3212: 3209: 3206: 3203: 3200: 3197: 3194: 3191: 3188: 3185: 3182: 3179: 3176: 3173: 3170: 3167: 3164: 3161: 3158: 3155: 3152: 3149: 3146: 3143: 3140: 3137: 3134: 3131: 3128: 3125: 3122: 3119: 3116: 3113: 3110: 3107: 3104: 3101: 3098: 3095: 3092: 3089: 3086: 3083: 3080: 3077: 3074: 3071: 3068: 3065: 3062: 3059: 3056: 3053: 3050: 3047: 3044: 3041: 3038: 3035: 3032: 3029: 3026: 3023: 3020: 3017: 3014: 3011: 3008: 3005: 3002: 2999: 2996: 2993: 2990: 2987: 2984: 2981: 2978: 2975: 2972: 2969: 2966: 2963: 2960: 2957: 2954: 2951: 2948: 2945: 2942: 2939: 2936: 2933: 2930: 2927: 2924: 2921: 2918: 2915: 2912: 2909: 2906: 2903: 2900: 2897: 2894: 2891: 2888: 2885: 2882: 2879: 2876: 2873: 2870: 2867: 2864: 2861: 2858: 2855: 2852: 2849: 2846: 2843: 2840: 2837: 2834: 2831: 2828: 2825: 2822: 2819: 2816: 2813: 2810: 2807: 2804: 2801: 2798: 2795: 2792: 2789: 2786: 2783: 2780: 2777: 2774: 2771: 2768: 2765: 2762: 2759: 2756: 2753: 2750: 2747: 2744: 2741: 2738: 2735: 2732: 2729: 2726: 2723: 2720: 2717: 2714: 2711: 2708: 2705: 2702: 2699: 2696: 2693: 2690: 2687: 2684: 2681: 2678: 2675: 2672: 2669: 2666: 2663: 2660: 2657: 2654: 2651: 2648: 2645: 2642: 2639: 2636: 2633: 2630: 2627: 2624: 2621: 2618: 2615: 2612: 2609: 2606: 2603: 2600: 2597: 2594: 2591: 2588: 2585: 2582: 2579: 2576: 2573: 2570: 2567: 2564: 2561: 2558: 2555: 2552: 2549: 2546: 2543: 2540: 2537: 2534: 2531: 2528: 2525: 2522: 2519: 2516: 2513: 2510: 2507: 2504: 2501: 2498: 2495: 2492: 2489: 2486: 2483: 2480: 2477: 2474: 2471: 2468: 2465: 2462: 2459: 2456: 2453: 2450: 2447: 2444: 2441: 2438: 2435: 2432: 2429: 2426: 2423: 2420: 2417: 2414: 2411: 2408: 2405: 2402: 2399: 2396: 2393: 2390: 2387: 2384: 2381: 2378: 2375: 2372: 2369: 2366: 2363: 2360: 2357: 2354: 2351: 2348: 2345: 2342: 2339: 2336: 2333: 2330: 2327: 2324: 2321: 2318: 2315: 2312: 2309: 2306: 2303: 2300: 2297: 2294: 2291: 2288: 2285: 2282: 2279: 2276: 2273: 2270: 2267: 2264: 2261: 2258: 2255: 2252: 2249: 2246: 2243: 2240: 2237: 2234: 2231: 2228: 2225: 2222: 2219: 2216: 2213: 2210: 2207: 2204: 2201: 2198: 2195: 2192: 2189: 2186: 2183: 2180: 2177: 2174: 2171: 2168: 2165: 2162: 2159: 2156: 2153: 2150: 2147: 2144: 2141: 2138: 2135: 2132: 2129: 2126: 2123: 2120: 2117: 2114: 2111: 2108: 2105: 2102: 2099: 2096: 2093: 2090: 2087: 2084: 2081: 2078: 2075: 2072: 2069: 2066: 2063: 2060: 2057: 2054: 2051: 2048: 2045: 2042: 2039: 2036: 2033: 2030: 2027: 2024: 2021: 2018: 2015: 2012: 2009: 2006: 2003: 2000: 1997: 1994: 1991: 1988: 1985: 1982: 1979: 1976: 1973: 1970: 1967: 1964: 1961: 1958: 1955: 1952: 1949: 1946: 1943: 1940: 1937: 1934: 1931: 1928: 1925: 1922: 1919: 1916: 1913: 1910: 1907: 1904: 1901: 1898: 1895: 1892: 1889: 1886: 1883: 1880: 1877: 1874: 1871: 1868: 1865: 1862: 1859: 1856: 1853: 1850: 1847: 1844: 1841: 1838: 1835: 1832: 1829: 1826: 1823: 1820: 1817: 1814: 1811: 1808: 1805: 1802: 1799: 1793: 1788: 1787: 1784: 1781: 1778: 1775: 1772: 1769: 1766: 1763: 1760: 1757: 1754: 1751: 1748: 1745: 1742: 1739: 1736: 1733: 1730: 1727: 1724: 1721: 1718: 1715: 1712: 1709: 1706: 1703: 1700: 1697: 1694: 1691: 1688: 1685: 1683:dotGridGradient 1682: 1679: 1676: 1673: 1670: 1667: 1664: 1661: 1658: 1655: 1652: 1649: 1647:dotGridGradient 1646: 1643: 1640: 1637: 1634: 1631: 1628: 1625: 1622: 1619: 1616: 1613: 1610: 1607: 1604: 1601: 1598: 1595: 1592: 1589: 1586: 1583: 1581:dotGridGradient 1580: 1577: 1574: 1571: 1568: 1565: 1562: 1559: 1556: 1553: 1550: 1547: 1545:dotGridGradient 1544: 1541: 1538: 1535: 1532: 1529: 1526: 1523: 1520: 1517: 1514: 1511: 1508: 1505: 1502: 1499: 1496: 1493: 1490: 1487: 1484: 1481: 1478: 1475: 1472: 1469: 1466: 1463: 1460: 1457: 1454: 1451: 1448: 1445: 1442: 1439: 1436: 1433: 1430: 1427: 1424: 1421: 1418: 1415: 1412: 1409: 1406: 1403: 1400: 1397: 1394: 1391: 1388: 1385: 1382: 1379: 1376: 1373: 1370: 1367: 1364: 1361: 1358: 1355: 1352: 1349: 1346: 1343: 1340: 1337: 1334: 1331: 1328: 1325: 1322: 1319: 1316: 1313: 1310: 1307: 1304: 1301: 1298: 1295: 1292: 1289: 1286: 1283: 1280: 1277: 1274: 1271: 1268: 1265: 1262: 1259: 1256: 1253: 1250: 1247: 1244: 1241: 1238: 1235: 1232: 1229: 1226: 1223: 1220: 1217: 1214: 1211: 1208: 1205: 1202: 1199: 1196: 1193: 1190: 1187: 1184: 1181: 1178: 1175: 1172: 1169: 1166: 1163: 1160: 1157: 1154: 1151: 1148: 1145: 1142: 1139: 1136: 1133: 1130: 1127: 1124: 1121: 1118: 1115: 1113:dotGridGradient 1112: 1109: 1106: 1103: 1100: 1097: 1094: 1091: 1088: 1085: 1082: 1079: 1076: 1073: 1070: 1067: 1064: 1061: 1058: 1055: 1052: 1049: 1046: 1043: 1040: 1037: 1034: 1031: 1028: 1025: 1022: 1019: 1016: 1013: 1010: 1007: 1004: 1001: 998: 995: 992: 989: 986: 983: 980: 977: 974: 971: 968: 965: 962: 959: 956: 953: 950: 947: 944: 941: 938: 935: 932: 929: 926: 923: 920: 917: 914: 911: 908: 905: 902: 899: 896: 893: 890: 887: 884: 881: 878: 875: 872: 869: 866: 863: 860: 857: 854: 851: 848: 845: 842: 839: 836: 833: 830: 827: 824: 821: 818: 815: 812: 809: 806: 803: 800: 797: 794: 791: 788: 785: 782: 779: 776: 773: 770: 767: 764: 761: 758: 755: 752: 749: 746: 743: 740: 737: 734: 731: 728: 725: 722: 719: 716: 713: 710: 707: 704: 701: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 668: 665: 662: 659: 656: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 614: 611: 608: 605: 582: 579:256 × 256 × 256 578: 553: 542: 536: 533: 518: 506: 502: 495: 486: 431: 418: 384: 364: 363: 357: 351: 348: 342: 335: 327: 319: 308: 299: 289: 270: 259: 250: 246: 235: 233:Grid definition 203: 131: 90:motion picture 66: 24: 17: 12: 11: 5: 4646: 4645: 4642: 4634: 4633: 4628: 4623: 4618: 4608: 4607: 4601: 4600: 4597: 4596: 4594: 4593: 4588: 4582: 4577: 4571: 4566: 4561: 4556: 4550: 4548: 4544: 4543: 4541: 4540: 4535: 4530: 4525: 4519: 4517: 4510: 4504: 4503: 4501: 4500: 4495: 4490: 4485: 4480: 4475: 4470: 4464: 4462: 4461:Related topics 4458: 4457: 4455: 4454: 4444: 4434: 4424: 4419: 4401: 4387: 4377: 4367: 4361: 4357: 4352: 4346: 4342: 4337: 4330: 4316: 4301: 4299: 4295: 4294: 4292: 4291: 4286: 4281: 4276: 4270: 4265: 4260: 4255: 4250: 4245: 4240: 4235: 4230: 4225: 4219: 4217: 4211: 4210: 4208: 4207: 4206: 4205: 4200: 4198:Gradient noise 4195: 4187: 4182: 4177: 4171: 4166: 4160: 4155: 4150: 4145: 4143:Gaussian noise 4140: 4135: 4130: 4125: 4123:Brownian noise 4120: 4115: 4110: 4103: 4101: 4100:Class of noise 4097: 4096: 4094: 4093: 4088: 4086:Transportation 4083: 4078: 4073: 4068: 4063: 4058: 4053: 4048: 4043: 4038: 4033: 4027: 4025: 4021: 4020: 4018: 4017: 4012: 4007: 4002: 3997: 3992: 3987: 3982: 3977: 3971: 3969: 3965: 3964: 3958: 3956: 3955: 3948: 3941: 3933: 3924: 3923: 3921: 3920: 3915: 3910: 3905: 3899: 3897: 3893: 3892: 3889: 3888: 3886: 3885: 3878: 3876: 3872: 3871: 3868: 3867: 3865: 3864: 3858: 3856: 3850: 3849: 3847: 3846: 3841: 3836: 3831: 3826: 3820: 3818: 3816:Gradient noise 3809: 3802: 3798: 3797: 3794: 3792: 3791: 3784: 3777: 3769: 3763: 3762: 3757: 3752: 3747: 3742: 3737: 3731: 3726: 3721: 3714: 3713:External links 3711: 3708: 3707: 3681: 3669:"Perlin noise" 3659: 3626: 3607: 3571: 3531: 3520: 3495:Tanner, Mike. 3487: 3462: 3435: 3422:"Making Noise" 3411: 3410: 3408: 3405: 3404: 3403: 3398: 3393: 3386: 3383: 3356: 3353: 1798: 1792: 1789: 1170:randomGradient 768:randomGradient 609:<math.h> 604: 602: 601: 586: 575: 571: 555: 554: 509: 507: 500: 494: 493:Implementation 491: 476: 475: 464: 461: 458: 455: 452: 443: 438: 434: 430: 425: 421: 417: 414: 411: 408: 405: 402: 399: 396: 391: 387: 383: 380: 377: 374: 371: 355: 346: 307: 304: 258: 255: 234: 231: 202: 199: 147:gradient noise 130: 127: 65: 62: 54:image textures 38:gradient noise 15: 13: 10: 9: 6: 4: 3: 2: 4644: 4643: 4632: 4629: 4627: 4624: 4622: 4619: 4617: 4614: 4613: 4611: 4592: 4589: 4586: 4583: 4581: 4578: 4575: 4572: 4570: 4567: 4565: 4562: 4560: 4557: 4555: 4554:Gaussian blur 4552: 4551: 4549: 4545: 4539: 4536: 4534: 4531: 4529: 4528:Median filter 4526: 4524: 4521: 4520: 4518: 4514: 4511: 4505: 4499: 4496: 4494: 4491: 4489: 4486: 4484: 4481: 4479: 4476: 4474: 4471: 4469: 4466: 4465: 4463: 4459: 4452: 4448: 4445: 4442: 4438: 4435: 4432: 4428: 4425: 4423: 4420: 4417: 4413: 4409: 4405: 4402: 4399: 4395: 4391: 4388: 4385: 4381: 4378: 4375: 4371: 4368: 4365: 4364: 4353: 4350: 4349: 4338: 4336: 4335: 4331: 4328: 4324: 4320: 4317: 4314: 4310: 4306: 4303: 4302: 4300: 4296: 4290: 4287: 4285: 4282: 4280: 4277: 4274: 4271: 4269: 4266: 4264: 4263:Noise shaping 4261: 4259: 4256: 4254: 4251: 4249: 4246: 4244: 4241: 4239: 4236: 4234: 4231: 4229: 4226: 4224: 4221: 4220: 4218: 4212: 4204: 4201: 4199: 4196: 4194: 4191: 4190: 4188: 4186: 4183: 4181: 4178: 4176:(or q. noise) 4175: 4172: 4170: 4167: 4164: 4161: 4159: 4156: 4154: 4151: 4149: 4146: 4144: 4141: 4139: 4138:Flicker noise 4136: 4134: 4131: 4129: 4126: 4124: 4121: 4119: 4116: 4114: 4111: 4108: 4105: 4104: 4102: 4098: 4092: 4089: 4087: 4084: 4082: 4081:Sound masking 4079: 4077: 4074: 4072: 4069: 4067: 4064: 4062: 4059: 4057: 4054: 4052: 4049: 4047: 4044: 4042: 4039: 4037: 4034: 4032: 4029: 4028: 4026: 4022: 4016: 4013: 4011: 4008: 4006: 4003: 4001: 3998: 3996: 3993: 3991: 3990:Noise control 3988: 3986: 3983: 3981: 3978: 3976: 3973: 3972: 3970: 3966: 3961: 3954: 3949: 3947: 3942: 3940: 3935: 3934: 3931: 3919: 3916: 3914: 3911: 3909: 3906: 3904: 3901: 3900: 3898: 3894: 3883: 3880: 3879: 3877: 3873: 3863: 3860: 3859: 3857: 3855: 3851: 3845: 3844:Wavelet noise 3842: 3840: 3837: 3835: 3834:Simplex noise 3832: 3830: 3827: 3825: 3822: 3821: 3819: 3817: 3813: 3810: 3808:Lattice based 3806: 3803: 3799: 3790: 3785: 3783: 3778: 3776: 3771: 3770: 3767: 3761: 3758: 3756: 3753: 3751: 3748: 3746: 3743: 3741: 3738: 3735: 3732: 3730: 3727: 3725: 3722: 3720: 3717: 3716: 3712: 3695: 3691: 3685: 3682: 3670: 3667:Perlin, Ken. 3663: 3660: 3654: 3649: 3645: 3641: 3637: 3630: 3627: 3617: 3611: 3608: 3592: 3585: 3578: 3576: 3572: 3566: 3562: 3556: 3541: 3535: 3532: 3529: 3524: 3521: 3510: 3506: 3502: 3498: 3491: 3488: 3473: 3470:Perlin, Ken. 3466: 3463: 3458: 3454: 3450: 3446: 3439: 3436: 3431: 3427: 3423: 3420:Perlin, Ken. 3416: 3413: 3406: 3402: 3401:Simplex noise 3399: 3397: 3394: 3392: 3389: 3388: 3384: 3382: 3380: 3376: 3375:simplex noise 3368: 3365: 3354: 3352: 1796: 1790: 599: 595: 591: 587: 576: 572: 569: 568: 567: 564: 562: 551: 548: 540: 530: 526: 522: 516: 515: 510:This article 508: 499: 498: 492: 490: 483: 481: 462: 459: 456: 453: 450: 436: 432: 428: 423: 419: 412: 406: 400: 397: 394: 389: 385: 381: 375: 369: 362: 361: 360: 354: 345: 338: 332: 325: 312: 306:Interpolation 305: 303: 297: 292: 285: 281: 279: 274: 263: 256: 254: 239: 232: 230: 228: 224: 215: 207: 200: 198: 195: 190: 188: 184: 180: 179:simplex noise 176: 175:fractal noise 172: 163: 159: 156: 155:pseudo-random 152: 148: 144: 135: 128: 126: 124: 120: 119:simplex noise 114: 111: 105: 103: 99: 95: 94: 89: 86: 82: 78: 74: 70: 63: 61: 59: 55: 51: 50:pseudo-random 47: 43: 40:developed by 39: 36:is a type of 35: 27: 21: 4450: 4440: 4430: 4415: 4411: 4407: 4397: 4393: 4383: 4373: 4354: 4339: 4332: 4326: 4322: 4312: 4308: 4253:Noise figure 4214:Engineering 4203:Worley noise 4133:Cosmic noise 4056:Human health 3896:Applications 3882:Worley noise 3829:Perlin noise 3828: 3698:. Retrieved 3694:the original 3684: 3672:. Retrieved 3662: 3643: 3639: 3629: 3610: 3598:. Retrieved 3591:the original 3544:. Retrieved 3534: 3523: 3512:. Retrieved 3500: 3490: 3478:. Retrieved 3465: 3448: 3444: 3438: 3430:the original 3425: 3415: 3363: 3358: 3349: 1794: 590:smootherstep 574:distributed. 565: 558: 543: 534: 511: 484: 477: 352: 343: 336: 333: 317: 302:dimensions. 290: 286: 282: 275: 268: 244: 220: 191: 168: 140: 116: 107: 91: 67: 34:Perlin noise 33: 32: 25: 4279:Phase noise 4258:Noise floor 4193:Value noise 4185:White noise 4128:Burst noise 4046:Environment 4041:Electronics 4024:Noise in... 4000:Noise power 3913:Video games 3875:Point based 3862:Value noise 3854:Value noise 3640:Web Ecology 3391:Value noise 1803:permutation 1791:Permutation 1749:interpolate 1719:interpolate 1617:interpolate 624:interpolate 594:white noise 537:August 2022 278:dot product 257:Dot product 227:dot product 48:, applying 4610:Categories 4547:2D (Image) 4180:Shot noise 4169:Pink noise 4153:Infrasound 4148:Grey noise 3980:Distortion 3646:(1): 1–6. 3546:2011-05-29 3514:2022-05-31 3407:References 3355:Complexity 1008:3.14159265 984:2048419325 936:1911520717 888:3284157443 598:pink noise 521:improve it 480:smoothstep 478:where the 398:smoothstep 324:derivative 296:complexity 245:Define an 69:Ken Perlin 58:dimensions 42:Ken Perlin 4473:Acoustics 4036:Buildings 3700:26 August 3674:26 August 3509:1059-1028 583:4 × 4 × 4 525:verifying 460:≤ 454:≤ 447:for  429:− 413:⋅ 401:⁡ 185:both for 113:industry. 4626:Fractals 4507:Denoise 3801:Approach 3736:(GitHub) 3600:24 April 3555:cite web 3385:See also 1284:gradient 1266:gradient 1164:gradient 1026:>> 963:>> 951:<< 915:>> 903:<< 855:unsigned 831:unsigned 822:unsigned 801:unsigned 606:#include 223:function 110:textures 77:SIGGRAPH 4516:General 4509:methods 4414:,  3968:General 3480:May 31, 1161:vector2 1038:vector2 765:vector2 753:vector2 726:typedef 519:Please 64:History 4576:(BM3D) 4298:Ratios 4158:Jitter 4109:(AWGN) 4061:Images 3622:  3507:  1773:return 1305:perlin 1254:return 1095:return 1089:random 1065:random 1035:// in 993:random 816:sizeof 729:struct 672:return 88:sci-fi 81:Disney 4587:(DAE) 4384:SINAD 4334:dBrnC 4275:(NVH) 4216:terms 4091:Video 4076:Ships 4071:Rooms 4066:Radio 4031:Audio 3960:Noise 3594:(PDF) 3587:(PDF) 3501:Wired 3475:(PDF) 1776:value 1743:value 1533:value 1506:float 1491:float 1473:float 1461:float 1443:float 1404:floor 1353:floor 1320:float 1311:float 1302:float 1239:float 1221:float 1209:float 1191:float 1146:float 1137:float 1110:float 990:float 828:const 798:const 735:float 648:float 639:float 630:float 621:float 596:into 171:demos 4441:SQNR 4431:SINR 3702:2020 3676:2020 3602:2019 3565:link 3561:link 3505:ISSN 3482:2022 3377:and 3369:for 177:and 129:Uses 121:for 93:Tron 4451:CNR 4416:SNR 4374:MER 3648:doi 3453:doi 3366:(2) 3342:180 3336:156 3324:215 3306:195 3300:128 3294:141 3288:243 3258:114 3252:222 3240:205 3234:236 3228:138 3222:254 3216:150 3204:127 3186:121 3180:115 3174:176 3168:204 3156:184 3150:157 3144:106 3138:199 3132:181 3120:214 3114:192 3102:107 3096:239 3084:249 3078:235 3072:145 3054:241 3048:162 3042:179 3036:191 3024:144 3018:210 3012:238 3006:193 3000:242 2988:251 2982:228 2970:246 2964:218 2958:104 2952:112 2946:185 2940:178 2934:232 2928:224 2922:113 2910:110 2904:108 2886:253 2868:129 2856:172 2844:167 2838:155 2832:101 2826:153 2820:221 2808:163 2802:154 2784:152 2778:248 2772:119 2766:213 2760:170 2754:183 2748:223 2730:189 2724:182 2694:227 2682:206 2676:207 2670:212 2652:255 2646:126 2640:118 2634:147 2622:202 2610:123 2604:124 2598:250 2592:226 2586:217 2562:186 2556:173 2550:198 2544:109 2538:100 2532:164 2520:159 2514:188 2508:116 2502:130 2496:135 2490:196 2484:200 2478:169 2460:208 2454:187 2448:132 2436:209 2418:216 2406:161 2376:143 2370:102 2364:244 2352:245 2322:105 2316:220 2310:230 2304:133 2298:211 2286:122 2280:229 2274:111 2262:231 2256:158 2250:146 2238:166 2220:139 2214:134 2202:165 2190:175 2178:168 2172:171 2166:136 2160:125 2148:174 2130:149 2124:237 2106:177 2076:117 2070:203 2064:219 2058:252 2040:197 2016:234 2010:120 2004:247 1998:148 1986:190 1962:240 1938:142 1920:103 1908:140 1902:225 1890:233 1884:194 1860:201 1848:131 1824:137 1818:160 1812:151 1800:int 1761:ix1 1755:ix0 1713:ix1 1611:ix0 1527:ix1 1521:ix0 1416:int 1398:int 1386:int 1365:int 1347:int 1335:int 1128:int 1119:int 1083:sin 1059:cos 1032:)); 783:int 774:int 523:by 339:= 1 334:If 298:in 293:(2) 83:'s 28:= 0 4612:: 4360:/N 4345:/N 4327:kT 3644:22 3642:. 3638:. 3574:^ 3557:}} 3553:{{ 3503:. 3499:. 3449:19 3447:. 3424:. 3381:. 3345:}; 3330:61 3318:66 3312:78 3282:72 3276:24 3270:29 3264:67 3246:93 3198:45 3192:50 3162:84 3126:31 3108:49 3090:14 3066:51 3060:81 3030:12 2994:34 2976:97 2916:79 2898:98 2892:19 2880:39 2874:22 2850:43 2814:70 2796:44 2742:42 2736:28 2718:17 2712:58 2706:16 2700:47 2688:59 2664:85 2658:82 2628:38 2580:52 2574:64 2526:86 2472:18 2466:89 2442:76 2430:73 2424:80 2400:63 2394:25 2388:65 2382:54 2358:40 2346:46 2340:55 2334:41 2328:92 2292:60 2268:83 2244:77 2232:27 2226:48 2208:71 2196:74 2184:68 2154:20 2142:87 2136:56 2118:88 2112:33 2100:57 2094:32 2088:11 2082:35 2052:94 2046:62 2034:26 2022:75 1980:23 1974:10 1968:21 1956:37 1950:99 1932:69 1926:30 1914:36 1878:53 1872:96 1866:95 1854:13 1842:15 1836:90 1830:91 1770:); 1767:sy 1740:); 1737:sx 1731:n1 1725:n0 1710:); 1695:y1 1689:x1 1677:n1 1674:); 1659:y1 1653:x0 1641:n0 1638:); 1635:sx 1629:n1 1623:n0 1608:); 1593:y0 1587:x1 1575:n1 1572:); 1557:y0 1551:x0 1539:n0 1515:n1 1509:n0 1497:y0 1476:sy 1467:x0 1446:sx 1425:y0 1419:y1 1413:); 1389:y0 1374:x0 1368:x1 1362:); 1338:x0 1293:); 1278:dy 1260:dx 1245:iy 1224:dy 1215:ix 1194:dx 1185:); 1182:iy 1176:ix 1131:iy 1122:ix 1092:); 1068:); 1023:0u 981:*= 945:^= 933:*= 897:^= 885:*= 876:iy 864:ix 825:); 786:iy 777:ix 762:*/ 720:*/ 699:a0 684:a0 678:a1 669:*/ 642:a1 633:a0 618:*/ 563:. 4453:) 4449:( 4443:) 4439:( 4433:) 4429:( 4418:) 4412:N 4410:/ 4408:S 4406:( 4400:) 4398:I 4396:/ 4394:S 4392:( 4386:) 4382:( 4376:) 4372:( 4362:0 4358:s 4356:E 4347:0 4343:b 4341:E 4329:) 4325:/ 4323:C 4321:( 4315:) 4313:N 4311:/ 4309:C 4307:( 3952:e 3945:t 3938:v 3788:e 3781:t 3774:v 3704:. 3678:. 3656:. 3650:: 3604:. 3567:) 3549:. 3517:. 3484:. 3459:. 3455:: 3371:n 3364:O 3339:, 3333:, 3327:, 3321:, 3315:, 3309:, 3303:, 3297:, 3291:, 3285:, 3279:, 3273:, 3267:, 3261:, 3255:, 3249:, 3243:, 3237:, 3231:, 3225:, 3219:, 3213:, 3210:4 3207:, 3201:, 3195:, 3189:, 3183:, 3177:, 3171:, 3165:, 3159:, 3153:, 3147:, 3141:, 3135:, 3129:, 3123:, 3117:, 3111:, 3105:, 3099:, 3093:, 3087:, 3081:, 3075:, 3069:, 3063:, 3057:, 3051:, 3045:, 3039:, 3033:, 3027:, 3021:, 3015:, 3009:, 3003:, 2997:, 2991:, 2985:, 2979:, 2973:, 2967:, 2961:, 2955:, 2949:, 2943:, 2937:, 2931:, 2925:, 2919:, 2913:, 2907:, 2901:, 2895:, 2889:, 2883:, 2877:, 2871:, 2865:, 2862:9 2859:, 2853:, 2847:, 2841:, 2835:, 2829:, 2823:, 2817:, 2811:, 2805:, 2799:, 2793:, 2790:2 2787:, 2781:, 2775:, 2769:, 2763:, 2757:, 2751:, 2745:, 2739:, 2733:, 2727:, 2721:, 2715:, 2709:, 2703:, 2697:, 2691:, 2685:, 2679:, 2673:, 2667:, 2661:, 2655:, 2649:, 2643:, 2637:, 2631:, 2625:, 2619:, 2616:5 2613:, 2607:, 2601:, 2595:, 2589:, 2583:, 2577:, 2571:, 2568:3 2565:, 2559:, 2553:, 2547:, 2541:, 2535:, 2529:, 2523:, 2517:, 2511:, 2505:, 2499:, 2493:, 2487:, 2481:, 2475:, 2469:, 2463:, 2457:, 2451:, 2445:, 2439:, 2433:, 2427:, 2421:, 2415:, 2412:1 2409:, 2403:, 2397:, 2391:, 2385:, 2379:, 2373:, 2367:, 2361:, 2355:, 2349:, 2343:, 2337:, 2331:, 2325:, 2319:, 2313:, 2307:, 2301:, 2295:, 2289:, 2283:, 2277:, 2271:, 2265:, 2259:, 2253:, 2247:, 2241:, 2235:, 2229:, 2223:, 2217:, 2211:, 2205:, 2199:, 2193:, 2187:, 2181:, 2175:, 2169:, 2163:, 2157:, 2151:, 2145:, 2139:, 2133:, 2127:, 2121:, 2115:, 2109:, 2103:, 2097:, 2091:, 2085:, 2079:, 2073:, 2067:, 2061:, 2055:, 2049:, 2043:, 2037:, 2031:, 2028:0 2025:, 2019:, 2013:, 2007:, 2001:, 1995:, 1992:6 1989:, 1983:, 1977:, 1971:, 1965:, 1959:, 1953:, 1947:, 1944:8 1941:, 1935:, 1929:, 1923:, 1917:, 1911:, 1905:, 1899:, 1896:7 1893:, 1887:, 1881:, 1875:, 1869:, 1863:, 1857:, 1851:, 1845:, 1839:, 1833:, 1827:, 1821:, 1815:, 1809:{ 1806:= 1785:} 1779:; 1764:, 1758:, 1752:( 1746:= 1734:, 1728:, 1722:( 1716:= 1707:y 1704:, 1701:x 1698:, 1692:, 1686:( 1680:= 1671:y 1668:, 1665:x 1662:, 1656:, 1650:( 1644:= 1632:, 1626:, 1620:( 1614:= 1605:y 1602:, 1599:x 1596:, 1590:, 1584:( 1578:= 1569:y 1566:, 1563:x 1560:, 1554:, 1548:( 1542:= 1536:; 1530:, 1524:, 1518:, 1512:, 1500:; 1494:) 1488:( 1485:- 1482:y 1479:= 1470:; 1464:) 1458:( 1455:- 1452:x 1449:= 1434:; 1431:1 1428:+ 1422:= 1410:y 1407:( 1401:) 1395:( 1392:= 1383:; 1380:1 1377:+ 1371:= 1359:x 1356:( 1350:) 1344:( 1341:= 1329:{ 1326:) 1323:y 1317:, 1314:x 1308:( 1296:} 1290:y 1287:. 1281:* 1275:+ 1272:x 1269:. 1263:* 1257:( 1248:; 1242:) 1236:( 1233:- 1230:y 1227:= 1218:; 1212:) 1206:( 1203:- 1200:x 1197:= 1179:, 1173:( 1167:= 1155:{ 1152:) 1149:y 1143:, 1140:x 1134:, 1125:, 1116:( 1104:} 1101:; 1098:v 1086:( 1080:= 1077:y 1074:. 1071:v 1062:( 1056:= 1053:x 1050:. 1047:v 1044:; 1041:v 1029:1 1020:~ 1017:( 1014:~ 1011:/ 1005:( 1002:* 999:a 996:= 987:; 978:a 975:; 972:s 969:- 966:w 960:b 957:| 954:s 948:b 942:a 939:; 930:b 927:; 924:s 921:- 918:w 912:a 909:| 906:s 900:a 894:b 891:; 882:a 879:; 873:= 870:b 867:, 861:= 858:a 849:; 846:2 843:/ 840:w 837:= 834:s 819:( 813:* 810:8 807:= 804:w 792:{ 789:) 780:, 771:( 756:; 750:} 747:; 744:y 741:, 738:x 732:{ 723:} 711:* 702:; 696:+ 693:w 690:* 687:) 681:- 675:( 657:{ 654:) 651:w 645:, 636:, 627:( 561:C 550:) 544:( 539:) 535:( 517:. 463:1 457:x 451:0 442:) 437:0 433:a 424:1 420:a 416:( 410:) 407:x 404:( 395:+ 390:0 386:a 382:= 379:) 376:x 373:( 370:f 356:1 353:a 347:0 344:a 337:n 328:2 320:2 300:n 291:O 271:2 251:n 247:n 26:z

Index


gradient noise
Ken Perlin
procedurally generating terrain
pseudo-random
image textures
dimensions
Ken Perlin
computer-generated imagery
SIGGRAPH
Disney
computer animated
sci-fi
Tron
Mathematical Applications Group
Academy Award for Technical Achievement
textures
simplex noise
texture synthesis

procedural texture
gradient noise
computer graphics
pseudo-random

demos
fractal noise
simplex noise
graphics processing units
real-time graphics

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.