The Eiffel Tower project

Again: Greenery

You may remember me being not really happy with my Sapling trees, and I planned to replace them. But this won't be topic here. This is about organizing objects.

 

You might as well remember me adding lots of OpenStreetmap trees to my scenery and converting them from mesh data into group instances (if you have forgotten, just look here).

At the moment my scenery contains about 30.000 trees and shrubs - each of them being a group instance, represented by an empty. This seemed to be a good idea to me, because it keeps the amount of vertices low.
But now I have to recognize that this architecture is slowing down my system extremely - almost making it impossible to work with the file.
I'll have to look for some alternative.

And finally you may remember the reason for me doing so: Each single OSM tree object coming along with unique information about location, size and rotation, and I wanted to copy those attributes to my tree instances.

 

As you've seen I got what I wanted. But if the price would be a huge, un-editable file, it's not worth while.

Let's have a short look at those informations I wanted to keep:

Thinking that over I came to the conclusion that I could easily bring in some randomness myself as well...

 

Somewhere I read Blender wasn't designed to deal with thousands of objects. Respecting this it's obvious why my file isn't working.
On the other hand I never heard about difficulties if you have to deal with objects consisting of thousands of vertices...
Therefor I decided to do another attempt working with particle systems.

Generally the idea is having one single mesh including all tree objects as single verts (each of them being at the given location of course), then set up a particle system using "Hair" option and having each hair replaced by a tree.
Furthermore saving the information, which kind of tree or shrub it should be.

 

The operating process follows the same logical rules than before; it's just the opposite way. So I'm gonna keep it quite short:

Result will be one mesh for each tree and shrub variation, having one vertex at each location.
Going on:

Next step isn't necessary indeed; I did it to have my work visualized: selecting all the verts, connecting them to one quite ugly face:

... as you may notice storing information about 3 different alley trees, 3 different ordinary trees, 5 kinds of shrubs, and something special dealing with hedges.

 

Now let's set up particle systems. You'll need one particle system for each tree and shrub variation.

I'm gonna walk through from top to bottom:

Important: All the particle systems need unique settings, so it might be a good idea to check them for some shared data (which might occur by duplicating/copying particle systems):

The number "2" tells you how many particle systems share the same settings. Simply clicking on it will produce single user data.

One last step to do: All the affected groups have to be rotated about 90 degrees around Y:

... but Attention: if you use those group instances besides particle systems you'll have to respect that of course.
I think this is a bit annoying and not very intuitive. Obviously Blender programmers think that hair should always be rotated in Y direction, so they defined it as the default orientation...

 

Short summary

Replacing thousands of group instances through particles seemed to be a really good idea - the file is much "handier" than before, and I'm again able to work with my model directly instead of doing changes in a separate file and paste them afterwards.

 
 

next   

 
 
 

Leave a comment

Attention! Comments including hyperlinks or mail adresses within the "Message" field will be automatically spammed.