Modeling Trees

tree_large

Compared to the modeling hardware, trees are can be really tough; all those random branches with all those random leaves! Obviously one way would be use the Treez plug-in to mathematically grow the branches and use particle techniques for leaves. Although I'm confident that with sufficient experimentation one might be able to come up with a convincing simulation, so far the examples I've seen don't appear all that natural. For my purposes, trees are just set dressing. It's the one case where I don't expect arm's length realism so I don't require a highly detailed tree with realistic numbers of branches and leaves. All I need is a technique to simplify building a wide variety of models that present a convincing impression of trees. I especially want to be able to see sky through random groups of leaves and I want them to cast suitably dappled shadow.

My solution was to create a "kit" containing a number of basic components that, after not too much spline wrangling, can be assembled into a reasonable approximation of a tree.

tree_branches

I start with branches_basic.mdl, a group of basic wood parts. There are three styles of Y splits. Through a combination of hooks and 5 pt. patches they all end in 8 pt. cross-sections so they can be stitched together continuously. There are three sizes of "stick-on" branches that start as 16 pt. cross-sections so they conform well to the shape of a cylindrical trunk. There is a straight trunk that starts as an 8 pt. circle and ends as a 4 pointer to be used to transition from the Y splits to thinner branches.

tree_leaves

The leaves start as the basic shapes in leaves_basic.mdl; cylindrical, hi-res mushroom, low-res mushroom and shrub. Take a basic leaf shape and tease it into a suitably random foliage shape (even cut some holes in it). Position this leaf group with respect to the branches and re-shape to fit (e.g. no branches sticking out,unless this is what you want).

Copy this first leaf group twice to new groups and add them to the tree, scaling each new layer down a bit to fit within the next largest layer. Also rotate each group at least 45 deg. around the Y axis with respect to its neighbours so they don't match from any angle. The final step is to add the materials.

leaves_mats

The three leaf materials, shown at left, are variations of foliage.mat. This material is part of the entire texture package that can be purchased from the Enhance AM site. This material uses the AM_Crust combiner. Apply low density leaf material to the outer layer, a medium density material to the middle layer and a high density material to the inner layer.

trunk

I built a fairly simple colour and bump material for the trunk and branches, shown at right. Due to the materials' orientations, their realism quickly breaks down on any part of the trunk that is not vertical.

In my opinion, the "look" of such trees holds up relatively well even at close proximities, assuming you have enough splines in the leaf layers for a sufficiently convoluted surface.

tree_kit.zip (313 kb) contains everything used to build the tree at the top of this page. There are eight files:

  1. branches_basic.mdl
  2. leaves_basic.mdl
  3. leaves_green_a_dense.mat
  4. leaves_green_a_medium.mat
  5. leaves_green_a_sparse.mat
  6. tree_bark_a_color.mat
  7. tree_bark_a_bump.mat
  8. tree_01_med.mdl - the completed tree model is full size, about 30 ft. (9 m) high

If you're interested in building your own trees, send me an e-mail and I'll be happy to send you tree_kit.zip.

Return to main page