# Bongo: Document Options

This guide continues where the Looping guide ended.

Use the command Options and navigate to the Bongo section of the Document Properties dialog:

## General

### Animate inside instances (blocks)

Governs whether animation data on objects inside instances (blocks) will be animated. This can be rather slow, so this is off by default. Using this option, it is possible to create animated blocks that can be reused in the model. More info about this feature can be found in the Bongo: How to Animate in Instances (Blocks)? FAQ.

### Use proxy for multiple objects transform

When multiple objects are transformed in animate mode, they each receive their own pivot and transform around this. This can be counter-intuitive in many situations, especially when using groups.

Using this option, Bongo will create a point object (a proxy point) and link all of the transformed objects as children to this object. The transformation will then be applied to the proxy instead of the children.

Hierarchical animation can be used to create proxy objects. Proxy objects control other objects. Proxy objects are sometimes referred to as controller objects.

A good example of a use for proxy objects is animating a group. In Rhino, a group is not a single object, the objects simply all select together. This can create problems when animating a group because each object in the group receives its own pivot and transformations act around that.

Features in Bongo that aid in setting up proxy situations include:

• The BongoPlaceProxyPoint command places a proxy point object and then prompts you to select children for the proxy point object.
• Check the Use proxy for multiple object transforms option. Proxy points are created automatically when multiple objects are animated for the first time.
• If multiple objects that have the same proxy point as their parent are transformed in animate mode, the transformation is applied to the parent proxy point rather than the selected objects. The same is true if children and their parent are transformed - only the proxy object will receive the transformation keyframes.

Despite these features, groups can still be cumbersome to animate in complex models. In these cases, we recommend using Rhino blocks to create a single object from a group before animating.

To create a pivot for a group of objects:

1. Create a proxy point at the required pivot.
2. Make the group the child of the point.
3. Apply the transformations to the point object rather than the group.

### Use smart object dragging

Looks at the object selection set while dragging and recording a keyframe to see if the movement can be reached by applying the keyframe only to a parent instead of the whole selection.

### Show reticle for animated viewports

By default, Bongo displays information inside animated viewports including the center of the view, the view aspect and the current slider position. Turn the display of this information off with this option.

## Inverse Kinematics

### Enable

Enables or disables the Inverse Kinematics feature.

### Precalculate

By default, Bongo precalculates the IK chain every time you make a change to it. Turn the precalculate off with this option.

When precalcualtion is disabled, IK is solved from the slider’s current position. For example, you will get two results at tick 50 when you move the slider from tick 10 to 50 and from tick 20 to 50. When precalcualtion is enabled, IK is solved when IK setup is done and the information is stored in the cache. You will always get the same result at tick 50. The slider’s current position won’t make any difference to the result because IK is just replayed once and once again.

### Precalculation samples

Determines how many samples are calculated before solving an IK case.

When the precalculation sample is set to, for example, 20 and the timeline length is 100 ticks, then there is one precalculation tick every 5 ticks. Increasing the sample number shortens the distance between precalculation ticks that increases the accuracy of IK, but it will need more time for precalculation. If you have a complicated IK chain or fast moving goals, you will need higher precalculation samples for a better result.

### Display IK information in viewport

By default, when an IK chain is created Bongo the join types are drawn in the viewport. Use this option to enable disable these markings.

### Position goal error

Specifies how accurately IK motion constraints are adhered to.

Position tolerance is absolute. See the IK Error Tolerance section below for more info.

### Rotation goal error

Specifies how accurately IK rotation constraints are adhered to. The rotation tolerance is absolute. See the IK Error Tolerance section below for more info.

### Scaling goal error

Specifies how accurately IK scaling constraints are adhered to. Scaling tolerance is relative. See the IK Error Tolerance section below for more info.

### IK Error Tolerance

IK error tolerance settings adjust how accurately IK constraints are held up. Higher number means less accuracy and more wobble. Smaller number means more accuracy and less wobble.

Translation, rotation and scaling have their own tolerance, translation and rotation tolerance are absolute and scaling tolerance is relative. Tolerances are used per axis – each component can have that much error. Setting the translation error to 0.1 means that the constraint object is allowed to be 0.1 units away from the goal along any axis. So it should stay inside a cube centered at the goal and whose sides are 0.2 units.

## Object Pivots

Controls the display of the Constraint Heading Indicator.

Parents are linked to their children by dotted lines between their pivots. Use this option to enable or disable these lines.

### Enable object pivot display

Controls the display of object pivots for all animated objects. Object pivots can also be turned off on a per-object basis using the command BongoPivotDisplay.

### Always show pivot for non-animated children

By default, children with no animation data do not display an object pivot. This option enables pivot display for these objects.

### Show decoration of hidden objects

Displays Bongo pivot, pivot path, parent-child links, constraint headings, IK information, and other Bongo object notation when objects are hidden.

### Pivot size

Controls the pivot size in model units.

## Animation Preview

### Continuous

Plays the preview in a continuous loop. When this checkbox is cleared, the preview will stop at the end of the animation limits.

### Run Forwards/Run Backwards/Run Forwards then Backwards

Changes the direction of the animation during preview.

### Timeline length in seconds

Controls the amount of time it takes the slider to move from the start extent marker to the end extend marker during animation preview. Does not affect output to video – see “Bongo Render Animation Dialog” for more information on controlling the output speed.

## Show pivot/view paths

### Never show pivots/view paths

Enables or disables the pivots/view paths showing globally.

### Show keyframes and frame markers as points

Displays points for keyframes and tick marks during pivot path display.

### Dots

Displays dots for keyframes and tick marks during pivot path display.

### Draw point/dot every X ticks

Determines how often points/dots are drawn on the paths.

## Next Steps

Please continue with the Global Options guide.