Jump to content

Add Film Grain (free macros)

Recommended Posts

Adding grain to a photo is a nice way to emulate vintage images, especially older black and white photos. It has always bothered me a bit that Affinity Photo does not include a mechanism to introduce grain, other than to use the “Add Noise” filter. While adding noise is nice, it adds such a fine amount of variation that it is often quite literally unnoticeable.

I have admired the Film Grain effect that is available in other software, such as Nik’s Silver Efex. These filters can often vary grain size and intensity; sometimes grain can be added to shadows, midtones, and highlights in differing amounts.

What I’ve attached is an .afmacros file called Film Grain. This is a macros Category and should be imported into the Library panel. It includes two macros. The first is called Add Film Grain - simple. It allows the user to add grain with 2 parameters – intensity and size.

Grain - Intensity

The grain intensity defaults to 100%, but can be set to any value between 0 and 100. At 0% intensity, the grain effectively disappears. To understand intensity, think “contrast.”

Grain - Size

The size slider accepts values between 0 and 1, with the default being 0.2. The appropriate value will differ based on the image being treated, and the same perceived size might need higher values when the overall dimensions of the image are larger. Also note that values above 0.8 are rounded down to 0.8 (and this forms an effective upper limit to the slider). This is done primarily because the math breaks down at higher values.

The second macro is called Add Film Grain - by tonal range. It includes the same intensity and size parameters, but also lets the user set opacity levels for highlights, midtones, and shadows separately.

Grain Opacity - Highlights, Midtones, and Shadows

There are three separate sliders for highlights, midtones, and shadows respectively. Each defaults to 100%, but can be set to values between 0 and 100. While the “simple” macro creates a single Film Grain layer, the “tonal range” version creates a group containing 3 layers, one each for the three tonal ranges. The Grain Opacity sliders simply vary the opacity of the corresponding layers within that group.

Finishing Touches

When each of the macros finishes, the Blend Range for the result (the Film Grain layer in the case of the “simple” macro, and the Group in the case of the “tonal range” macro) is set to diminish the effect of the grain on the highlights slightly. This is an aesthetic choice on my part, and I think you will agree. However, you can set the Blend Range to anything you might like, as desired.

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

For most users, the “simple” macro will be enough. It lets the editor vary the Intensity of the grain and also the Size. I have always liked adding grain that was a bit larger, because it becomes more noticeable.

For other users, the “tonal range” macro will allow you to add some additional nuance to the grain, by letting you emphasize grain in the shadows, midtones and highlights. Do this by first setting a global Intensity and Size, and then adjusting the opacity of the 3 tone ranges as desired.

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

Here are samples of the two macros, along with the settings as applied. The differences between the two results is quite subtle, but might be worth the effort in some cases.


*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

As with all the macros I have posted, I have tested these on one computer under a limited number of conditions. I cannot guarantee anything, but I have no reason to think they will not work for you just as they have for me. The macros are free, with the suggestion to “pay it forward.” As you become more proficient, be sure to share your experience and your work with others.

By the way, happy holidays to everyone. Here’s hoping that 2021 is a more positive, uplifting year than 2020. And maybe, just maybe, we’ll be able to ring in 2022 in a crowd without any masks!

Film Grain.afmacros

Link to post
Share on other sites

Thank youi, smadell, very useful.

Looking at your sample photos, I like the one with the tonal-range macro applied better because it looks more natural. Of course, changing the settings of either of the macros may give very different results. 

Happy holidays to you as well and thanks again. 

Link to post
Share on other sites

Good afternoon, TV...

I didn't look into allowing for different grain size and intensity for each of the tonal ranges. Honestly, I think that may introduce too many choices (inducing a kind of "user paralysis"). I suppose it's possible, but it just seems like more nuance than needed. I'd be interested in hearing what other people think!

Link to post
Share on other sites

Smadell,  While I like a good visual paralysis, the effect I was visualizing was the metallic gradient effect of noise graduating from say 100% to 0% into another color...I will work on trying the noise filter masked by gradients as an effect to see if this is really where "my head is at"...

Link to post
Share on other sites
  • 2 months later...
On 12/1/2020 at 3:25 AM, smadell said:

conditions. I cannot guarantee anything, but I have no reason to think they will not work for you just as they have for me.

Nice and working well on iPad too.😀

IPad Pro 10.5/512GB   lpadOS 14.4 Apple Pencil (1st gen), Affinity Photo,  Affinity Photo beta1.9, Affinity Design 1.9.3, Affinity Designer beta 1.9.20, still waiting for Publisher for iPad

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

Please note there is currently a delay in replying to some post. See pinned thread in the Questions forum. These are the Terms of Use you will be asked to agree to if you join the forum. | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.