Ken's Academy Award: Noise and Turbulence
cims.nyu.edu
cims.nyu.edu
> Perlin noise resulted from the work of Ken Perlin, who developed it at Mathematical Applications Group, Inc. (MAGI) for Disney's computer animated sci-fi motion picture Tron (1982). In 1997, he won an Academy Award for Technical Achievement from the Academy of Motion Picture Arts and Sciences for this contribution to CGI.
https://en.wikipedia.org/wiki/Perlin_noise
Edit: also, if you'd like to see something more recent from him, I'd recommend this talk: https://www.youtube.com/watch?v=4YnVhTyrYbo [SIGGRAPH Asia 2011 - Featured Speaker, Ken Perlin] —interesting stuff, and he's an engaging speaker.
http://www.iquilezles.org/www/articles/morenoise/morenoise.h...
as featured in
IIUC, it's a hash function defined over 3D space with tunable gradient between points.
The cool thing about the the marble vase example is that marble texture continues on the inside. So if you look on the inside of the vase the texture will still be there. automatically [http://cims.nyu.edu/~perlin/doc/vase.html]
Here's an example I made [lots of copy pasta btw :)] when learning this to get a wood texture [a simple application of Perlin noise, btw :)]. If you cut through the wood, the texture will still be there.
http://shaderfrog.com/app/view/828 [the dividing factors in line 236 tune the gradient]
The commenter was, I believe (and I say this without having any inside information as to his or her thought process) employing a technique in which the full range of details surrounding an event are ignored in favor of one aspect (here, the Perlin noise function) on which we want to focus.
Out of personal curiosity, are you a fan of the game yourself?
Well I met him - and that's it. My major wound up being math :-)
Also fun to toy with different interpolation and noise generation algorithms.
It's a wonderfully simple idea and great fun to play around with!
https://github.com/mikera/clisk
My simple gamer (ie every texture is 2D) brain had a bit of trouble coming to terms with continuous 4D textures, and I think it was talking about how Perlin noise could be continuous that made the idea stick eventually.
Reading the Wikipedia explanation (ok, I have been ill recently) I see a process that given say a 2D grid, can assign for each cell in the grid a single number, that number is derived from a function applied to each of its corner nodes.
The function basically assigns a random number around the node (i.e. 360 degrees) and then merges that random with the distance to the point, and then merge that with all four points auchbthat one cell now has one number that is affected by distance, it's neighbours and randomness
I think that pretty clearly gives a smoothed map that will not have the junpiness of random map placements
Seems fairly good way to make a procedural map.
What else is it useful for?
It's useful any time you need some natural looking randomness in a texture. Perlin noise is standard in pretty much all 3d rendering software for films, and it's becoming quite common for games.
The turbulence part of this is when you take a whole stack of Perlin noises at different frequencies, i.e., different grid sizes, and sum them. It's more expensive of course, but this is how to get extremely realistic feeling noise, it gives you medium and high frequencies. And it further hides any grid artifacts.
I used Perlin noise as a wind function to animate bushes & trees in the animated movie Madagascar. Perlin actually works really well for windy looking motion because of the way it's derviatives work. I tried a whole bunch of other noise functions, and Perlin was the only one that worked well.
Perlin noise is actually more expensive to evaluate than a real fluid simulation. The fun/important part is that Perlin is static, so there's no simulation and you can render your frames out of order and in parallel. With a fluid simulation, each sim frame depends on the previous one. Fake curly noise is also easier to set up and tune than a fluid sim.
I and others have used this technique on lots of films for quick turbulent smoke, fog, and particulate effects.
I am taking a break from HN for a few weeks, and would not have replied but I just wanted to say the ability to ask a question and get back "yeah I used this technique on that movie you saw" is something no other forums provide. It's awesome.
I will smile as I take my screen break. Cheers
http://josephg.github.io/noisejs/demo3d.html
(This is actually a 3d simplex noise function, where the z axis is mapped to time. Simplex noise is a variant on perlin noise. Perlin noise is also in the repo but I don't have a demo of it online.)
Awesome stuff
[1]https://en.m.wikipedia.org/wiki/Simplex_noise [2]http://mrl.nyu.edu/~perlin/flownoise-talk/
I guess "how" is American (or headline-ese) for why'
----
In 1997 I received a Technical Achievement Award from the Academy of Motion Picture Arts and Sciences for work I had done on procedural texture. For example, the NYU Torch on the right is made entirely from procedural textures (except for the text along the bottom). The flame, background, and metal and marble handle are not actually 3D models - they are all entirely faked with textures. A hi-res image of a marble vase I made using this technique can be found here. A bunch of other texture images I created can be found here.
I then improved it, and wrote a paper about that. You can play with interactive demos of the improved version here.
You can play with designing noise-based textures yourself with a really nice interactive Java Applet created by Justin Legakis. Also, the interactive fractal planet demo on my home page is made using these techniques.
It seems that my techniques found their way into the various software packages, such as Autodesk Maya, SoftImage, 3D Studio Max, Dynamation, RenderMan, etc., that folks use to make the effects for feature films, which is way cool. Movies look better now, and I guess that makes me a good American.
Here's what the award actually says:
To Ken Perlin for the development of Perlin Noise, a technique used to produce natural appearing textures 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 industry.
Needless to say, my Mom was very happy.