How to add destruction to a 3D scene part 4: nature’s reclamation
Okay, so it’s many years later and all the cinema-goers have gone and maybe just all the people have gone. Period. That’s the fun of doing these pieces – we know something ‘happened’ but from looking at this small slice of reality, what does the rest of this world look like? And the answer is in each person’s vivid imagination. Awesome. So let’s get rid of the people and watch nature do what it does best and come back in a couple of decades!
The usual start to any project and to all the steps and phases of this one so far. I actually didn’t need too much research from this phase because I wanted to just explore what I could do kind of in-the-moment. Not entirely advisable because you should always be looking at reality and trying your best to keep things realistic, but really it’s not too difficult to take buildings, age them, and cover them in foliage. I did want to steal the idea of the car covered in ivy though and there’s one image of the abandoned movie theatre in the bottom-right that gave me a few ideas for wear and textures. Other than that, I once again delved into the artwork from The Last of Us II to get a feel for how to light the scene, and maybe get some ideas for vegetation and how it all influences the composition.
I find lighting a little on the tricky side in Blender. I think I’m still getting used to it, so I did spend a good while figuring things out. Although I didn’t arrive at the final lighting until nearer the end (mainly in the cast-shadow sense) I shall explain the process early on as it’s usually a good idea to nail it down sooner rather than later so you can see the composition from the perspective of light and shadow.
Here’s a screenshot of the scene’s lighting set up. I’ve split the HDRI lighting into two (see the nodes). Using the Is Camera Ray node you can have one HDRI for lighting and one just for the sky background. Sometimes you need to control both separately. Funnily enough, I always get rid of my sky in Photoshop anyway, but I just have to see something I like while I’m working. But that’s just me.
The other thing I sometimes do to boost shadow colors is to place a big area light pointing down (I’ve highlighted this in red) and that just fills shadows with, in this case, a vivid blue. Then I just block the sun light with big rectangle shapes until I get the lighting I want (just like in the previous city image). A couple of these are set to be invisible to the camera – they’re highlighted in orange. It took a lot of balancing to get the right angle of the sun and the right value in the shadows but hopefully this setup will give you a head start for setting up complex daylight scenes in Blender.
More wear and tear
Now I’m breaking down some of the forms like the signage and even tweaking the components of the car like the doors and making the wheels buckle. Anything that isn’t a solid block should wilt somehow.
Another example of how I might age a texture without replacing it is by using the Mix RGB node in Blender and setting a grungy texture to something like Multiply. Here I used an old concrete texture to add dirt to one of the building fronts.
I remember that early on I wanted to have a lot of ivy growth travelling up the cinema and through the sign. So I started to work on achieving this. Now, what’s cool here is that I started out by just taking the ivy that I made for the last piece and just threw it onto the building, duplicated it and just played around until it felt right. If you missed the previous city-apocalypse tutorial just Google ‘Ivy Generator’ and download it for free. It’s not the most modern piece of software but it gives you a starting point.
One other thing I did was to take the leaves from another tree model I downloaded and place that around the top sign. I basically just deleted the trunk and branches and it kind of looks like a bushy growth. This could work for just about any tree model. A good 50% of it will all be replaced with photos later anyway.
I keep trying to make grass look good in Blender and it’s just not happening for me. One of the issues I have with Blender’s particle system is that, unlike in other software, it doesn’t give you the option to view your particles represented by simple low-poly geometry (or point cloud as seen in some software). Instead you either see it in all its RAM-sapping glory, or you don’t. So grass needs to be fairly minimal in small-ish patches if you don’t own a super computer. But unfortunately that’s not how to make decent grass.
Instead it’s good to download realistic models of actual foliage or maybe scatter broad-leaf objects which can cover the ground with less requisite density than little grass blades.
I found such a model on Sketchfab by a guy called Asch, it’s really awesome and while it’s around 250k triangles, it’s still less taxing on the scene than particles. With the grass shown in this stage Blender was incredibly slow, so I had to hit the delete button and rethink things.
Final lighting and foliage tweaks
In the end I opted for more of a broad leaf type grass that I downloaded from Quixel Megascans. It’s probably entirely the wrong type of plant but it looks good and it’s less poly-dense than grass. Oh, one other key solution was to use some very low poly grass I found on Sketchfab by a user called 3dhdscan. That allowed me to spread a few patches of grass here and there without really affecting Blender’s performance.
I then grabbed some scanned ground pieces and placed in a reflective plane to act as a puddle or little stream and that took care of the ground plane. The lighting also needed sorting out. I did intend, in the very beginning, to have quite a sunny scene but to pull that off is very challenging as everything is bright and noisy and it wasn’t working here. I put up the light blockers mentioned earlier and just opted for the ‘slice of light’ approach, illuminating only the focal area.
Rendering tip for low poly grass
This was an issue I ran into at the last minute. I knew I wanted my foreground rendered separately to my background but the low-poly grass is actually modeled on flat planes and not regular 3D geometry! If you look in the first image, the little cards affect the alpha outline. But a way around this is to render just the layers you want in cycles (by turning off all the other layers and collections) and in the render tab, under ‘Film’, check ‘Transparent’ (see image2). Now you can save your foreground grass as a transparent PNG file!
Another little tip for using cards with alpha channels in Blender is to increase the Transparency samples in the Max Bounces section within the Light Paths section of the render settings (try saying that while drunk). Set it to at least 20 or you’ll get weird dark shadowy shapes in the grass for some reason. That had me so frustrated that I submitted a lengthy bug report only to have it rejected on the grounds that it wasn’t a bug but a settings issue, but at least I then learned what the issue was.
I spent a long time figuring out the foliage issues in the 3D section, so the exclamation mark after ‘Photoshop’ is one of relief! We’re finally in the easiest and arguably most fun stage! Here I can very quickly make huge changes to the read and that’s just what I do here. I darken the foreground and lighten the mid-ground to really separate the piece and create depth as well as making the image easier to read. There’s so much work already done in 3D that this stage goes pretty quickly so hold on tight!
So we put a lot of effort into that foliage, but it still looks a bit weird and 3d. To that end, I grabbed some photos of Ivy (some of which I took myself in my home town) and placed it over the top and simply masked in/out using an ivy-leaf-shaped brush with a bit of scatter applied.
The trees got a similar treatment as they were also too 3D looking. I have my folder of 2D trees which I often reuse. It’s fairly easy to find trees with a Google image search for ‘transparent trees’ or ‘tree png’. But sometimes you can find a tree set against a sky background which is fairly easy to extract. One quick tip though, just apply a very slight 0.3-0.5% Gaussian blur to them if they look too clean. Their leaves can really jump out and look noisy. This applies to absolutely all foliage.
I also added some fog to further separate foreground from mid-ground and to separate the cinema from the building behind it. This is just making things read better – light on dark, dark on light. Where would we be without our fog?
I mentioned this step in my previous tutorials but it’s such a staple that it’s worth mentioning again. The steps below illustrate the process but essentially we grab our cracky/grungy texture, color-correct it first to match the light parts of the image behind it, but then (if the hues are fairly strong) you may have to re-correct the darker parts of the cracks (mine went too blue and light). Because they’re so dark we can grab a quick selection of that using the Magic Wand tool. So now we match the cracks to the dark areas of the building. Next we can double click on the layer to get to the ‘Blend If’ options and drag that white slider back to show only the cracks in our texture. Don’t forget to Alt+click that slider to soften the blend. Finally I mask invert the whole thing and just paint back in the cracks I want.
So there’s a lot of small things that take us from the previous step to this step. Overall, the image is fairly done right out of Blender, but all of the fiddly little things is what takes us to that next level of realism and believability.
I added more ivy leaves to the movie theatre using the same technique as last time and I wrapped some ivy leaves around the foreground lamp post. The lamp post was again using the same technique. I actually took a photo of a tree trunk covered with ivy not too far from where I live and just placed it over the lamp, color corrected it, masked it out (inverted it) and painted it back in with the trusty ivy-scatter brush. It’s surprising how effective that simple technique is.
The rust on the car on the left needed fixing because it just looked too 3d. I say this a lot but it really is important to bridge that gap between fake-realism and something more believable. So I grabbed a photo of a rusty car and placed it over the top and just masked it in. It definitely looks less ‘3d’ after that.
In general, I’m just taking off the perfection and cleanliness of the various bits and pieces. So the signage gets eaten into a little, the ceiling under the sign gets destroyed and even the silhouette of buildings gets erased into ever so slightly. And really this is needed even in a non-apocalypse scene because real life isn’t as perfect as a render. Super straight hard lines hardly ever exist and likewise super crisp sharpness within photography.
Okay, now we can sit back and wonder what happened to our little street, or indeed the whole world!
Sketchfab Models by:
- Sabri Ayes
- Loïc Norgeot