Dependent Sub-Objects (NURBS)
 
 
 

A NURBS sub-object is either independent or dependent. A dependent sub-object is based on the geometry of other sub-objects. For example, a blend surface smoothly connects two other surfaces. Transforming or animating either of the original, parent surfaces causes the shape of the blend to change as it maintains a connection between the parents.

Moving a parent surface changes the blend surface (the blend surface is displayed in green)

The immediate, interactive relation between the parent and dependent sub-objects is known as relational modeling. Relational modeling is one of the reasons NURBS models can be particularly easy to change or to animate.

ImportantDependent sub-objects must have parents that are also sub-objects of the same NURBS model. Dependent relationships can’t exist between object-level NURBS curves or surfaces. If you want to use a top-level NURBS object to create a dependent object, first you must attach or import the top-level object. See Attaching and Importing 3ds Max Objects.

You have the option of making a dependent sub-object independent. After you do so, the sub-object is no longer related to its parents. Changes to the former parents don’t affect it, but you can edit and transform it as an independent sub-object in its own right.

At the appropriate sub-object level, dependent NURBS are displayed in green in wireframe viewports. (You can change the display color using the Colors panel of the Customize User Interface dialog.)

Relational modeling does add computation time to a model, so when you transform or edit dependent sub-objects in other ways, often you will notice a slowdown in performance. Once a dependent surface sub-object has the shape you want, you can improve performance by making it into a rigid surface.

Transforming Dependent Sub-Objects

In general, you can select and transform dependent sub-objects, but the effect of the transform depends on the sub-object type. Some dependent objects have a gizmo, similar to the gizmo used with modifiers. Sub-objects that don’t have gizmos can’t change relative to their parent objects. For these kinds of sub-objects, transforms apply equally to the sub-object and its parents. For example, moving a blend sub-object moves its parents as well. Sub-objects that have gizmos can change relative to their parent objects. In this case, as with modifiers that use gizmos, you are really transforming the gizmo. For example, rotating a mirror sub-object changes the mirror axis, and therefore the mirror’s position relative to its parent curve or surface.

When you +Clone a dependent NURBS sub-object, by default the parent objects are also cloned. For example, if you Shift+Clone a UV loft, all the lofting curves are copied as well. This means that the new object has the same type as the original object. The cloned object keeps its parents, so you can edit it just as you do the original. When you Shift+Clone a NURBS sub-object, you can also choose to remove dependencies in order to improve performance.

Error Condition for Dependent Sub-Objects

Sometimes changes you make to the parent objects make it no longer possible to correctly update the dependent object’s geometry. For example, a fillet between two curves requires the curves to be coplanar. If you move one curve (or its CVs or points) so that the curves are no longer coplanar, the fillet cannot update correctly. In this case, the dependent object’s geometry reverts to a default position, and it is displayed in orange to indicate an error condition. (You can change the error color using the Colors panel of the Customize User Interface dialog.)

The arrow points to the segment indicating an error condition.

Seed Values

Some kinds of dependent sub-objects depend on geometry that might have more than one solution. For example, if you want to create a surface-curve intersection point, and the curve intersects the surface more than once, 3ds Max must decide which intersection is to be the location of the point.

For these kinds of objects, seed value parameters control the decision. The seed location is on a parent object, and 3ds Max chooses the location nearest to the seed value that satisfies the creation condition. You can alter the seed value when you edit these dependent sub-objects. The seed location is displayed as a yellow square.

For example, the seed location for a surface-curve intersection point is a U position along the length of the parent curve. The surface-curve intersection closest to the seed is chosen as the location of the dependent point.

The seed location for a surface is a pair of UV coordinates in the surface's parameter space.

Replacing Parent Sub-Objects

Dependent sub-objects have controls that let you replace the object or objects on which they depend. For example, Offset Surface has a button called Replace Base Surface. You can click this button and then click a different surface to act as the base of the offset.

This capability lets you replace a trimmed surface with its untrimmed version, or vice versa. To do so, you need to use the Select Sub-Objects dialog, which is a subset of the Selection Floater that you can use during sub-object creation as well as sub-object selection. For example, select the trimmed surface sub-object and turn on the Keyboard Shortcuts Override toggle. Click the replacement button, press the H key, expand the surface's tree, and then highlight the name of the untrimmed version.