Playing With Contrast
Now that we’ve started building practical tools in Part 4 of this series, it’s time to turn our attention to the practical tool we’re ultimately looking to build in this series: the Filmic Contrast tool. We’ve seen this tool in action in Part 1, but let’s review the summary I’ve written up for it.
This tool, called Filmic Contrast, will apply a user-specified amount of contrast uniformly to the R, G, and B channels, followed by a user-specified mixture and intensity of cool colors to the shadows and warm colors to the highlights.
This summary is a good start: it’s clear, concise, and complete. But as you’ll almost always find when planning out new tools, answers to problems often lead to additional questions, because before we can begin coding, we need exact definitions of everything we’ll be doing.
In order to answer these additional questions, we’re going to focus today’s Insight on understanding the different forms of contrast, and how we can invoke them within a DCTL.
Together in the video below, we’re going to cover:
- Why there’s no single objective definition of contrast
- The key forms of tonal contrast
- Implementing tonal contrast as a linear function
- Implementing tonal contrast as a piecewise power function using conditionals
- Creating additional functions to keep our main function efficient and legible
Let’s dive in!