BTS #32: Scene setting (Patreon)
Content
Hey all! In recent and upcoming animations this year, I've put much more of a real focus on that important sense of space. Here I want to try and write up the new things I've been doing to make that happen!
Environments can be really daunting because of just how big they need to be when you do them in full. Of course, a lot of the time little one-angle only studio sets can work just fine in a lot of situations - but sometimes you really want the environment to take a stronger role in the story, and for the audience to have a more concrete understanding of the geography. Of course, if you try and just dive in and start making things, you'll quickly realize that acheiving that sense of place is going to take months...
A mistake that a lot of independant artists make starting out is trying to do everything yourself - to make things feel "complete", really, it's crucial to find and use good asset libraries. By far the best ones I use at the moment are botaniq, blenderkit and poliigon, but I also make heavy use of the enormous volume of assets available in the daz/poser ecosystem and blendswap.
Using these assets as a starting point, it's much easier to start fleshing out a scene - importantly, I try to think of the place holistically, as a place. Somewhere complete, used, and lived-in. Since a lot of the details are taken care of by the combinations of assets chosen, I can focus more on composition. Finding ways for light to play in the space in fun ways, and
The next step in really making a place feel like a place is the idea of a "set extension" - filling in the more distant background, to give the illusion that this location truly exists within a wider world. Of course, the issue here is that if we were to fill in these details at the same level of fidelity as the closer elements, we would quickly fry any hardware. The saving grace here is, these things are in the background! So the trick is in finding abstractions and shortcuts that look good from the camera, but are as lightweight as possible
Here's a common first approach, abstraction: instead of using a particle system for grassy hills, I've used a few grass textures of different densities blended with a layer weight node to produce that same subtle variation in green-ness that you see with proper grass. Does it look as good as real grass? of course not, but it doesn't need to, and it costs a fraction of the time and resources.
Here's the other end of the spectrum, where I've produced a higher-detail little strip of land which is the only little triangle of the "outside world" that's visible from inside the barn. botaniq and blenderkit are perfect for throwing together little micro-sets like this very quickly, and because it's such a small area there's no real performance impact.
Now, this is all well and good, but it comes at a cost. It's pretty easy to put together a problem scene that will ruin your life when the time comes to render. However, there are solutions! Previously I've detailed one version of the performance "nuclear option", but that's got some pretty clear downsides in terms of both process and final product - it's rather glitch prone, and it's the definition of "fixing it in post". Instead of putting a bandage on the problem, we can entirely circumvent it, like this:
What I'm doing here is essentially "pre-computing" a very complex background into a couple of images. The real magic here is using the HDR format. Usually when working in 3D we make heavy use of what are colloquially referred to as "hdris" - 360 panoramic environment maps that capture the radiance information in a particular location. What's perhaps less well known is that we can also render HDRs out of our own scenes!
Instead of including all the geometry and texture maps in the scene, we can render the environment first as an HDR image, matching the camera angle, and then just include that one image. The great thing is all the radiance information is correctly recorded and displayed, so it still defocuses pretty much correctly! Of course, there are downsides to this too, the main one is losing the depth information of the background - so this should only be done a certain distance from the camera, and you can see here I've included a bunch of higher resolution assets for the foreground.
With methods like this, the sky's really the limit in terms of environments! Of course, there's more room for advancing the workflows, and as I integrate and refine more techniques, I'll keep y'all posted! stay tuned.