The challenge of translating Tove Jansson's watercolors into a 3D engine like Unity is no trivial matter. The team behind Snufkin: Melody of Moominvalley managed to capture the painterly essence through a pipeline that combines hand-painted textures in Photoshop with a depth layer system. This approach avoids physical realism and opts for flat lighting and pastel colors, making each scene look like a moving painting.
Depth layers and post-processing: the visual trick 🎨
The technical key lies in using depth layers combined with smooth post-processing effects. Instead of relying on complex dynamic shadows, the developers painted shadows directly onto the textures in a watercolor style, using Photoshop to create tonal variations. Then, in Unity, they applied a post-processing profile with a slightly warm color tone, a subtle Gaussian blur on the background, and a vignette edge effect. This simulates the diffusion of pigment on paper. The camera remains orthographic in many sequences to preserve two-dimensionality, and characters are rendered as flat sprites within a 3D world, optimizing performance by avoiding unnecessary polygons.
FMOD and the valley's interactive soundtrack 🎵
The audio, integrated via FMOD, is not mere accompaniment. Each action of the protagonist, such as playing the harmonica or walking on different surfaces, triggers real-time parameters that modify the mix. FMOD allows the wind, streams, and footsteps to behave procedurally, responding to the player's position in the 3D world. This reinforces the fairytale atmosphere without breaking the watercolor illusion, demonstrating that technical optimization and artistic fidelity can coexist in an indie title.
Since Snufkin's technical pipeline uses shaders and textures to emulate watercolors in real-time, which design decision was most critical for maintaining the visual coherence of Tove Jansson's style without sacrificing performance in Unity?
(PS: shaders are like mayonnaise: if they break, you have to start all over again)