reactor > 
Special Features in reactor

A number of reactor features enhance speed and usability. reactor lets you create new and better animations that were virtually impossible without reactor, and you can set up those animations in an efficient, intuitive way. Here we present some of the main features in reactor.

Two Simulation Engines

From the reactor utility interface, you can choose to run your simulation with either of two engines: Havok 1 or Havok 3.

If your reaction involves cloth, rope, or soft bodies, you'll need to stick with Havok 1, the version included with previous releases of 3ds Max Design. However, if you're using rigid bodies only, you can take advantage of the enhanced accuracy available in Havok 3. For more information, see The reactor Utility and Havok 1 World / Havok 3 World Rollout.

Integrated User Interface

The reactor interface is fully integrated in 3ds Max Design. You can access functionality in reactor through menus, quad menus and toolbars. All 2D and 3D icons follow a consistent look and feel. The reactor utility parameters are arranged for easy access.

You can find more details in:

Vertex Selection Inside reactor Modifiers

The reactor modifiers for deformable bodies: Cloth, Soft, and Rope, let you select vertices and apply constraints (fix points, keyframe points, attach to rigid body, attach to deforming mesh) to those vertices without leaving the modifier or having to apply extra modifiers. You can create and manipulate deformable constraints inside the modifier.

Vertex selection in red, across the top of the mesh

Cooperative Constraints

reactor includes a number of cooperative constraints that facilitate the simulation of articulated bodies and machinery.

Mannequins constrained to touch hands

The Rag Doll constraint allows the simulation of constrained bodies with relative rotation and twist angles limits similar to those found in human and animal joints.

The Hinge constraint allows the simulation of hinges (limited or not) and hinge-like joints where movement is limited around a specified axis, like elbows and knees.

The Prismatic constraint allows the simulation of translation-only joints (limited or not) like those found in robots and machinery.

The Car-Wheel constraint is particularly suited to the simulation of wheels attached to a chassis. The wheels rotate (and can be powered) about a given axis. Limited linear motion relative to the chassis is allowed along a user-defined suspension axis.

Using Point-Point constraint with the Limited option lets you limit the relative rotation of the attached objects by a given degree around each axis.

Using Point-Point with the Stiff Spring option constrains both objects as though attached by a fixed-length bar (a very stiff spring).

Fracture Object

The Fracture object in reactor offers excellent usability and behavior. Objects inside Fracture are standard Rigid Bodies and, as such, you can add them to constraints, assigned initial velocities, etc. You can tell pieces to break at a specific time.

A fractured glass

Constraint Manipulation and Constraint Spaces

Constraints in general restrict the relative movement between two bodies (parent and child) or between a body (child) and the world, and use consistent, intuitive nomenclature and setup methods. Springs, linear dashpots and angular dashpots are referred as Simple Constraints, while the other constraints (those that are grouped with a Constraints Solver) are referred to as Cooperative Constraints.

In reactor, you define the effect of constraints by the specifying and manipulating two constraint spaces. Limits, such as minimum and maximum rotation angles, are defined and displayed around those spaces, which you can modify using sub-object manipulation. reactor provides tools for automatically aligning and manipulating those spaces.

Storage and Access of Collision Information

reactor can store information of all rigid body collisions occurred during the simulation. The information includes the objects involved, the point of collision, and the relative velocity during collision, and can be used by animators to generate particles or other effects, trigger sounds, etc. You can access the information via MAXScript and save it to a text file.

For more information, see Storing and Accessing Collisions.

Support for Global Collisions

In reactor, you can enable or disable collisions globally instead of inside the Rigid Body Collection. 3ds Max Design stores disabled collisions inside the reactor Utility. You can disable collisions not only for rigid bodies, but also for cloth, soft and rope. And you can access disabled collisions through MAXScript.

Animatable Wind

You can animate most parameters in the reactor Wind object, including wind speed and direction. Range and Falloff parameters let you set up the range of action for the wind.

An array of planes shifted by wind

Cloth/Soft/Rope Attachments to Deforming Meshes (Skin)

The Attach to DefMesh deformable constraint allows vertices in cloth, soft bodies, and rope to follow a non-rigid mesh such as skin.

One mesh deforms another

Soft Selection for Cloth/Soft/Rope

The deformable (cloth/soft/rope) modifiers in reactor can now use the soft selection flowing to that modifier and blend the current vertex animation with the reactor animation, facilitating the transition between skin-driven and reactor-driven animation.

Soft selection dampens the deformation

Floating Rigid Body Property Editor

In reactor you can change the rigid body properties, like mass, elasticity or friction without having to use the reactor Utility. You can open a floating MAXScript window to modify rigid body properties from the reactor menus, quad menus, and toolbars at any time.

MAXScript Access

Virtually all parameters and functionality in reactor are accessible through MAXScript.

Animation Features

reactor can automatically create list controllers (or character studio layers) to store the animation of rigid bodies. For more information, see Preview & Animation Rollout.

Also, the ragdoll script is aware of being applied to character studio bipeds, and, in such cases, sets up the constraints so that, when you create an animation, the biped is physically animated.