Tips for creation of 3D plants :

Before I prepare some real tutorials for this section, a couple of tips that may save you a lot of nerves :

Simple models

Don't overcomplicate the graph trying to add too much functionality into one model.

It is better to create 5 separate variations of a plant, than have them all inside one model.

TPF provides you with external parameters like age, health, season. So in theory you should be able to create a model which generates trees from 30 cm tall seedling, through 20m lush adult to dead tree with sparse bald broken branches. Yes, it is possible, but it does not mean it should be done with every model.

Let's consider analogy to cars - One could create a model of a car that could transform itself from a small compact to a huge truck, and then to a road wreck. But surprisingly nobody does it. Simply because it does not make much sense. It is better, simpler, easier to create 3 separate models than one complicated "transformer" like that.

There may be some rare cases when such age/season/health functionality makes sense, then do it if you can't go the other, simple way (create several sets of plants)

You may try to implement one parameter like age, and if graph is still manageable, try to add another. But think if next year you will be still capable to figure out how it works.

Incompatibility risk

With procedural models there is intrinsic risk of data loss.
Minute modification to software code has potential to destroy hundreds models.
Imagine that branch angle 0 meant branch orthogonal to parent. But for next version of software, some developer gets an idea of changing this definition, and now angle 0 means branch parallel to parent....

If you have just 3 models, each with a couple of nodes without complex, extracted functions, maybe you can remade them in 15 minutes. But imagine that over several years you have created a collection of 500 models, each model is a complex maze of multiple interacting nodes, and after you updated your software, all models look like.... Disaster ! When incompatibility strikes, it may happen that remaking the plant from scratch is faster than finding the cause of malfunction. This is why I suggest that after you create the final model, you bake it to polygons and save in some common format like OBS or 3DS. If incompatibility happens, at least you will keep the static polygonal mesh.

TPF has some provisions to cope with backward compatibility when nodes code is modified, but the risk still exists.


Check links to external tutorial in LINKS / TUTORIALS section. There is already plenty of TPF tutorials prepared by Vladimir Chopine, and also quite a lot of Speed Tree tutorials. So I don't know if I'll do mine TPF tutorials - it would just double what Vladimir already did - pointless. Probably e-on is also about to prepare some - there is already one on e-on youtube channel.

Maybe in this section I'll limit myself to write down some interesting observations, suggestions helpful for TPF users.