A new tree add-on


most of you probably follow BlenderNation as well but for those who missed it: I created a new tree add-on. It is definitely not meant as a replacement for Sapling or IvyGen but it it does offer a different approach on generating natural looking trees and how that can be done is described in detail in the blog article.
Some examples of what it can do (and no doubt the texturing and lighting can be improved upon by real artists):


– Michel.


ooooo :slight_smile: that looks pretty good :slight_smile:

I’ve been trying it out, and here are my thoughts.

The default settings as of now are mainly useful for baby shrubs and that’s it, the user is currently required to make some significant changes to the settings if he wants a full-fledged tree with multiple branch levels. It doesn’t have to make a real big tree or a real detailed one, but it should be enough to be a nice starting point.

Second, and this might be a somewhat bigger issue, the algorithm as of now does not space the skinning points in positions that are optimal for good results with the skin modifier, as a result you will have a lot of intersecting/overlapping geometry that need to be cleaned up after the script is run. The skinning points in general need to initially go in a steeper angle away from the intersection before turning because doing that will avoid any perceived quality issues. This can already be cleaned up a bit with the smooth tool, so perhaps adding an option for additional smoothing or displacement could be an option.

Overall, good work, needs some improvements, but it’s in a good position now. Though I do hope we can eventually see some actual skinning functionality in sapling rather than each branch being its own piece (and it’s sometimes not real practical to boolean the branches together though it is faster than trying to manually weld the edges so they can use the skin modifier).

@Ace Dragon: I agree on the default settings, but there is also the speed issue we have to keep in mind; I don’t want to choose some defaults that lets a first time user wonder if his or her computer has crashed . As for skinning/smoothing/branch angle issue: Adam Runions already suggested an algorithm for that in his thesis and I have it on my list of things to implement. I am not sure the skin modifier should be used at all or that it would be better/faster toi implement our own funtionality to flesh out the branches, especially if we want to have clean uv-maps as well. Enough work to keep me of the streets for a while :slight_smile:

Thank you for this really nice script. This makes it really quick and easy to create low-poly tree models for games :slight_smile:

glad you like it but larger trees are not all that low poly, especially with an extra subdiv modifier on top(i think the mature tree in the thitd image is a few hundred thousand quads). but i intend to work reducing the complexity of the branches so the number of polys might decrease.

Uploaded a new release on GitHub that is focused on a better workflow: It is now possible to define the shape of the crown based on a group of objects. Details and instructions in this article.


– Michel.

I didn’t mean you get a game-ready tree out-of-the-box using the addon. You still need some manual work as always but it allows me to create a game-ready tree in under 30 minutes which is great :slight_smile:

Hi Varkenvarken,
Really nice Add-on and good explanations. But downloading the zip file u link to on your site doesn’t work, I had to download the auto-zip from github. Hope you see what I mean, sorry for my english.

Hi matali, thanks for your report. I will checkt it as soon as I am home

Edit: when I checked it it seems to work ok; it is a binary file of course so when you click on it you get a new page with a single ‘view raw’ link. You have to click that one to start downloading it. Maybe that was the issue?

Does anyone have an idea how to refer directly to a github file, so people don’t have to go through this annoying routine?

Yes, that may be the problem, I didn’t know about that ‘view raw’ button that allow to download. Can you link to the github zip package ? At the root directory of your code, github propose to dl a zipball. That’s what I downloaded and it works.

Hi varkenvarken, thanks for your add-on. I like the new method for defining the shape of the crown with objects - reminds me of an old lightwave add-on that used a similar approach. Gives some very welcome control. Great job!

Suzanne tree
a simple test of the script give me this result in 5 minuts
rendered in cycle and make a group out of poor suzanne

thank you

so cool! thanks mate!

@swathi: very nice!

@varkenvarken thank you for the comment and the amazing tool. one question- can we direct the trunk of the tree by grease pencil? already this tool helping me in garden designing
thanks again

@swathi: interesting suggestion, I will think about it. Thanks.

can we direct the trunk of the tree by grease pencil?

yes,something like treesketch


TreeSketch’ interactive modelling is indeed fantastic but that level of responsiveness is difficult to achieve using just Python. However, the general idea of sketching the initial marker distribution and later adding more while growing the tree would indeed be very useful. Probably the interface would have to be reimplemented but i’ll definitely give it some serious thought.

@swathi: That is Awesome! Plain awesome!!!