User Tools

Site Tools


Hand Drawing

Spines can be hand drawn with a tablet device or mouse, then manipulated as a Bezier spline.

Overview


Hand drawing enables the user to freehand draw any desired branch with a tablet device or mouse, then freely manipulate the generated control points to ensure exactness. You can even grow procedural content off of the hand-drawn branches. By combining hand drawing with procedural tools, we've given you the ability to be precise where you need to be and procedural where you don't.

Hand Drawn vs. Procedurally Generated

There are a few differences to note when hand drawing branches:

  • “Generation” Parameters do not apply to hand drawn branches. Each node in a hand drawn generator is added manually instead. Unfortunately, this means that if you unlink a hand drawn generator, the nodes will no longer be present when it is relinked.
  • Bifurcation is disabled for hand drawn branches. This feature is not currently compatible with hand drawn elements.
  • Forces and perturbance affect hand drawing. If any forces or disturbance are enabled on a hand drawn generator, the resulting branch may appear “pulled off” the line while drawing.1)
  • Hand Drawn splines are manipulated via control points. Instead of relying on the spine properties alone to define branch shapes, hand drawn lines are converted to Bezier curves with control points. Enter node selection mode to reveal the control points and freely manipulate either the points themselves or the associated handles.
  • Hand Drawn generators can be saved as templates. Templates can be loaded, saved, and pasted into hand drawn generators. See the Working with Hand Drawn Generators section for more info.



The Hand Drawing Process

Follow these steps to get started with hand drawing:

1. Load an existing tree, or create a new tree and set up at least a single bark material. Our library includes several example hand drawing rigs. Individual trees can be purchased online.

Example trees already riffed for hand drawing: Beach Palm (sample tree). Bonsai, Headless Horseman, Hand Drawn Jeffery Pine, Dragon.

2. Align the camera to a suitable drawing angle. When you start drawing, a 2D plane perpendicular to the current view is used as the canvas (You'll have to add three dimensional depth later by manipulating control points).

3. Hold down the SPACEBAR on the keyboard to enter hand drawing mode. You will notice the cursor change from the default cursor to a crosshair.

If using a tablet device (such as a Wacom® tablet) to draw branches, the spacebar key can be mapped to any of the buttons on the pen component of the tablet. Set the tablet properties in the Windows® Control Panel to enable key mapping for the SpeedTree Modeler.

4. Press down on the tablet device (or hold down the left mouse button) with the crosshair inside the tree radius to start drawing a new trunk.

5. Move the crosshair around in screen space to draw the line. As the line is drawn, 3D branch geometry is created and updated as the drawing progresses.

6. Lift up the pen (or release the left mouse button) to finish drawing the line. Your hand drawn branch should remain in view after drawing.

7. If no material is applied, drag the bark material onto the trunk. If you are drawing a branch off of an existing trunk, the material will be inherited from the parent.

8. Draw a branch off of the trunk by holding spacebar and mousing over the trunk. The trunk should receive a white outline, signifying that it is a valid hand drawing canvas.

9. Enter node selection mode, then click anywhere on the hand drawn branch to reveal the computed control points (the hand drawn line is converted into a Bezier spline after the line is drawn. To learn how to fine tune the control points, see the control point options section). Use the Node Manipulator to adjust the rotation angles, position, or size scale of the entire branch.

10. Select a generated control point or handle, then freely rotate or translate the point off of the 2D plane it was drawn in to give the spine more depth. It is often easier to use screen-space manipulation with control points, accessed by click+dragging instead of simply selecting a point before manipulating it.


Toggling Hand Drawing

Starting with version 6.0, all spines can be toggled to and from hand drawn. Press the Toggle hand drawn button found in the “Hand Drawn” property group of any spine generator or node to convert. Please keep in mind the following points:

  • Allow forces and Perturbance are automatically disabled when converting to hand drawn, and are automatically enabled when converting from hand drawn.
  • Converted spines may shift slightly during the process.
  • Bifurcation will be removed when converting to hand drawn, but will be recovered when converting from.



Control Point Options

Changing The Number of Control Points

When a hand drawn line is completed, it is converted into a Bezier spline. There are options for either more precise lines (with a lot of control points to manage) or for a more manageable set of control points (with less precision). Hand drawn splines can be resampled after drawing as well.

Spacing

Housed in the Tree Window Properties, Spacing style defines the minimum distance allowed between neighboring control points. The computed distance between control points is influenced by the speed at which the line is drawn as well as the tightness of the angles being drawn. However, a minimum distance is necessary to prevent the piling up of points in small areas. Spacing can either be in absolute world units, or in relative units (relative to the parent node's length). Relative units are more suitable for trees with largely varying branch or trunk lengths.

"New" vs. "Resample" Options

On every hand drawn generator, a “Hand Drawn” property group exists with two sets of identical functions; Curve fit and Control point style. The options in the “New” group affect only nodes that are created after changing these values. The options in the “Resample” group affect all existing nodes in the generator. Use the options in the “Resample” group if the density of control points is either too high or too low.

The “Resample” group exists as node properties as well. Entering node selection mode will allow you to resample a single hand drawn spline without resampling the entire generator.

Curve Fit

Curve fit is a scalar for the number of control points used to create the spline. A value of 1 results in an accurate spline that may have many control points based on the speed of drawing and other factors. Values less than 0.5 become inaccurate, but have control points that are easier to work with (since each branch is composed of only a few control points). If using a low curve fit value, set the control point style to “Corner” to ensure the best accuracy with only a few points. You can always resample or add more control points later if necessary.

Control Point Style

Controls points are generated in either a corner, linear, or smooth Control point style. Both linear and smooth control points have linear handles (each handle points 180° away from its counterpart), but smooth control points have the extra limitation that they must be of the same length. Smooth is best suited for flowing branches without sharp jinks, since jinks are hard to reproduce with equidistant, linear points.


Working With Hand Drawn Generators

New Branches

New branches are placed according to the following guidelines:

1. If no hand drawn generator is present in the target branch level, a new hand drawn generator is created. The template used for new hand drawn generators is located in the “Templates/Hand Drawn” sub-folder of the SpeedTree Modeler install directory. A separate template is used for trunks (branches drawn from the tree radius).

2. If a hand drawn generator is present, new hand drawn branches will be put into that generator.

3. If more than one hand drawn generators are linked from the parent node, one of the hand drawn generators must be designated as the “hand drawn target” in order to receive new branches (see this section below for more).

Hand Drawn Templates
Like all other generators, hand drawn generators can be saved off and loaded as template (STT) files. When a hand drawn template is loaded in the Generation Editor, it is signified by a “drawing hand” icon overlay in the bottom right-hand corner of the generator icon.

Stacking Templates: Hand drawn templates can be used effectively by linking an entire tree together (i.e. a trunk, level 1, and level 2 branches) made completely of hand drawn templates before drawing a single branch.

Paste Into

“Paste into”, accessed via the right-click menu of a selected icon in the Generation Editor, will paste a copied generator's contents into another generator – even after nodes have been drawn. It will paste all of the properties except for the generation components. This is useful for quickly replacing the settings in a hand drawn generator after branches have already been drawn. It is also great to use when there are node edits on child branches that you don't want to unlink and lose.

Copying and Pasting Hand Drawn Generators

Hand drawn generators can be copied and pasted the same as any other generator. A pasted copy of a hand drawn generator will contain no branches until you draw them.

Resetting a Hand Drawn Generator

Pressing the “Reset” button while selecting a hand drawn generator will only remove the node edits from the hand drawn nodes. To remove all hand drawn branches without unlinking/relinking, select the link before a hand drawn generator and press the “Reset” button instead, or breaking the link and relinking the generator will work too.

Hand Drawn Targets

The first hand drawn generator created in a branch level is automatically the designated “target”. The target is indicated with a checkmark ('√') next to the hand drawn icon overlay. However, the target can be manually turned off via the '√' button on the Generation Editor toolbar. Once the target has been disabled for a branch level, a new hand drawn generator will be created the next time new branches are drawn on that level. The target can also be moved between existing hand drawn generators, but only a single target is allowed per shared parent at any given time.

Locking Hand Drawn Sources

Occasionally you may want to “lock” a generator so that hand drawn branches cannot be generated as children. This may be with a complex tree where it is difficult to tell which generator a particular branch belongs to. By locking a generator (toggling the lock and key icon on the Generation Editor toolbar), hand drawing new children will be prohibited off of it.

1) When toggling hand drawing, forces and perturbance are automatically disabled for this reason.