Flat shading's harsh edges and flat colors have never been something I find visually appealing, but I always feel like there's something nice still hidden in there! Well, I finally found a way to soften the harshness of it all, and I really, really love the results!
The key is blended normals! Take flat shading normals, and blend them with the usual vertex normals! This will preserve the hard edges created by the flat shading, but also add in some of the smoothness of traditional gouraud! Add in some sliders for tweaking, and you have yourself a beautiful retro/modern hybrid approach to lighting.
In Callisto, I needed to add some motion to the scene, some visual activity to make the place seem alive! Since it's technically a fairly barren ice moon, with more snow than life, it made sense to add something to make it look windier.
I quickly settled on a cartoonish looking wind swirl, which you can see above! It looks cool, it's easily recognizable, and it's super easy to implement quickly! I didn't even need to write a custom shader for this, as it's accomplished entirely through scrolling the UVs on the material.
Now that we've talked about what the project is, I'll show you some details on how I implemented it! I'll also share some shader code too, in case you're interested in doing something similar.
If you haven't read the previous post, you'll be interested in catching that here. It talks about the overall concept of the project, and has some cool details in it too :)