I’ve recently finished a complete re-write of my grain algorithm. This new algorithm generates grain by mathematically simulating the physical process that creates grain in a real piece of film. Compared to other common methods of adding grain—such as overlaying a scanned image of grain, or adding random noise—this process results in a grain that is realistic and creatively adaptable.
The image below shows a side by side comparison of the structure of real film grain, and that of grain generated from scratch using my algorithm. If you look closely, you can see the one-pixel wide seam in the middle where the image changes from the actual grain on the left, to synthetic grain on the right. However, as you move away from the image, the seam disappears and the two halves begin to look like one contiguous image. The grain structures are similar enough that at any reasonable viewing distance the two types of grain are indistinguishable.
The algorithm is completely flexible and can be tailored to suit the unique aesthetic vision of each project. It can be used to recreate the look of specific real life film stocks—whether it's modern day 35mm, 16mm from the 80's, 65mm from the 60's, or even a still photo film stock not usually used for motion pictures. It can also be tailored to any other desired look by adjusting intensity, size, and softness of the grain.
Below is a comparison between two frames from Beast. The first is with the grain applied, and the second is the original frame. Our intention for Beast was to create a look similar to that of an older 16mm film stock.
Here is another frame with more subtle grain added.
When I have a chance, I'll be posting another page with more technical information regarding how the algorithm works, and the various aspects involved in recreating the behaviours of real film grain.