Select Page

How to Make Realistic Trees in Blender

This Christmas….

This Christmas, I got a 3D graphics assignment. Sorry, I can’t say ‘This Christmas’ without singing it.

Assignment received

For this assignment, I was asked to create a look-and-feel animation that conveyed the spirit of Christmas in a general sense. The ending needed to focus on gift giving. First, I developed a concept that involved a gift box opening on it’s own with shafts of light bursting through it. Upon opening, the bow would untie itself and explode into a shower of fabric. The fabric would be so abundant we’d lose sight of everything else for a moment. Finally, the box would fall open to reveal the title inside.

Obviously, this is a wildly ambitious sequence to create. It would require a ton of time to develop just the cloth sequence, let alone the rest of the animation. To date this project a little, this came at a time when Eevee was still in alpha. Cycles was my only realistic option coming from Blender. However, I ended up running a few test renders before moving in a different direction.

Running out of time

By the time I landed on the final Christmas tree concept, the deadline for this project was fast approaching. I needed a way to create a realistic Christmas tree and quick. Enter The Grove. This plugin fit a perfect gap in my production pipeline. The controls were very intuitive. After a few minutes of learning the basics of the parameters, I was able to generate branches, attach leaves, and animate a gentle breeze that rendered fast, even in Cycles.

Here’s the final shot created specifically to be seamless 10 second loop:

Of course, you can custom model a tree based on tons of references, but the ROI on the time and energy investment didn’t make sense in this instance. Plus, The Grove’s controls make it easy to create virtually any design for a tree that you like! The plugin The Grove version 6, and was purchased for Blender 2.79. Just a few days after the project was completed, Blender 2.80 went into beta and I was automatically upgraded to The Grove version 7. Naturally, the plugin is thoroughly worth it, and if that doesn’t convince you, The Grove was used to create trees in Next Gen.

So not only did The Grove save the day and help me create a great final product, it also gave me the speed and flexibility that this particular project required. The beauty of this plugin is that it’s not something I feel like I’ll use just once and never touch again. Trees and nature are so commonly needed in production I’m sure I’ll need them again. And what’s more, The Grove creates branches using a particle system. That means you can create one custom branch (e.g. one with a Christmas ornament hanging from it) and populate an entire tree instantly.

Check out more articles

How to Generate a Ranger Config File

ranger --copy-config=all This will copy all the default config files from /usr/local/lib so you can make edits without messing anything up. Huge shout out to for explaining this and so much more. Took me a...

First Open Source Contribution

Surprise! I genuinely did not plan on making my first ever open source contribution today. In fact, I didn't plan on a lot of things happening this week at all. I recently got an awesome opportunity to work on a site that is being hosted on a platform called Pantheon,...

How to Exclude Specific Posts and Pages from WP_QUERY

For the sake of having something to work with, let's suppose we've got the following query:In this query, inside the $args array, there's a special parameter that allows you to exclude specific posts and pages from the query. This parameter is called post__not_in and...

Configure SSH For Password-less Connections

Preamble I'm slightly embarrassed to admit this, but it was a long time before I figured out how amazing this little file is and how exactly to put it to good use. The file I'm talking about is the SSH config file. By default, when you first connect to a server via...

WordPress Site Stuck in Maintenance Mode

Plugin Error Code 500 During Update While I was updating a WordPress plugin locally, something happened on my local server to trigger a 500 error code as the plugin was updating. On the frontend, I refreshed the page and was greeted with "Briefly Unavailable for...

Creating a WordPress Plugin Downloader

How it Started I was recently tasked with the challenge of creating a WordPress theme generator. The idea being, instead of writing your style.css file from scratch, you'd be able to just answer a few simple questions about how you'd like your theme set up, and those...

Fix Audio on XFCE Chromebook

The Problem After moving from GalliumOS to Xubuntu, I noticed that playing YouTube videos on both Firefox and Chromium would result in decent playback for a few minutes, but suddenly the audio would turn into a solid beeping tone while the YouTube video displayed the...

Adjust Trackpad Sensitivity XFCE

xinput set-prop "Elan Touchpad" "Synaptics Finger" 1 1 1 What are the values 1 1 1? This sets the sensitivity as close to the original ChromeOS as possible. Larger numbers will decrease sensitivity of various aspects. I never looked into which individual value...

Fireworks (Short Film) About the film Year: 2020 Director/DP: Tim Searfoss Writers: Matt Jones, Tim Searfoss Sound Mix: Matt Jones

Hosting Multiple Sites Using LocalWP

I've done a write-up on hosting local WordPress sites before, but I definitely prefer this method over the previous one. If you've never tried hosting multiple sites using LocalWP, then I'd encourage you to check it out. I've had really bad issues with it in the past,...

Looking for a place to host your next project or design?

Use this link to get your first 4 months of WP Engine for free: WP Engine – Plans (With 4 months free)