reactor > 

This topic provides solutions to some problems with reactor simulations that you might encounter.

A character collides with a fracturing window.

Check also : Frequently Asked Questions

General Troubleshooting

Analyzing the World

Whenever you get unexpected behavior from reactor, it is advisable to perform a world analysis to get a report of anything detected by reactor as suspicious, unexpected, or prone to error in your scene. For more information, see reactor Utilities.

Discussion Forums

The Area provides you with a moderated community to discuss, learn, and share techniques and ideas with other 3D professionals. Need to know how to do something? Having a problem? Just want to show off your work? Post your questions to the appropriate forums.

Simulation takes too long.

General tip:

If you are using Soft Bodies, Cloth, or Rope:

If you are using rigid bodies:

Water doesn't render.

The reactor Water is a world-space modifier and therefore it is not a renderable object. You can bind renderable object (like planes) to the water WSM in order to render a water animation. See Rendering Water.

Cloth/Soft/Rope becomes unstable and explodes.

Rigid bodies become unstable/explode/fly to infinity.

In rare situations, simulation can become unstable and objects can "explode.” This typically happens only when using complex systems of objects, like Fracture, or using simple constraints like springs or dashpots.

Cloth/Soft/Rope object stretches too much

If you have attached (using the Attach to RB Constraint) it to a falling object, be sure to turn off Do Not Affect Rigid Body. If the problem remains, increase the mass of the Cloth/Soft/Rope, or decrease the mass of the attached rigid body. Increasing the strength and damping of the Cloth/Soft/Rope should also improve the situation.

Objects seem to move very slowly

Make sure you are using the proper World Scale in the scene. A 10cm box falling from a 1m height doesn't behave the same as a 1km box falling from a height of 10km: The second one will reach the ground much later). Use real-world units or have a proper mapping between 3ds Max Design units and simulation units ( World Scale).

Why, after simulation, do I get warnings regarding "topology changes"?

The term “topology” refers to the internal connections of the vertices, edges and faces of a mesh. If you change the number of vertices in a mesh, you are changing its topology. While 3ds Max Design lets you animate the topology of objects (e.g., change the number of vertices or faces over time), reactor can simulate only objects with fixed numbers of vertices. If, during a simulation, reactor detects a topology change, it ignores the object in question and reports the problem as a warning.

Objects interpenetrate.

There can be different reasons for this:

Cloth/Soft/Rope intersects itself.

Make sure you have turned on the Avoid Self-Intersections option in the modifier.

I can't add an object to a Cloth/Soft/Rope Collection.

Only an object that has the proper reactor modifier applied can be added to one of these collections. Make sure you have applied a reactor Cloth, Soft Body, or Rope modifier to the object.

I can't add an object to a Rigid Body Collection.

If you are using compound bodies, make sure the group is open, as only the group parent can be added to a Rigid Body Collection.

Mass and other properties are disabled.

Make sure you have selected only one object, and that this object is geometrical. The most common cause for this is the use of groups. You can use groups to create compound rigid bodies, but in order to change the properties of the primitives inside the group, you'll need to open it and selected the individual primitives inside it.

Rigid bodies don't bounce enough.

Increase the Elasticity property of the object. Try also increasing the Elasticity of the other object involved in the collisions, as the elasticity of a collisions is a function of the elasticity property of the two objects involved.

Objects stop moving unexpectedly in the middle of a simulation.

This can be caused by objects being deactivated. There are two ways objects can be deactivated: through the world deactivation or, if the object belongs to a constrained system, through the Constraint Solver deactivation parameters

In both cases, try modifying the deactivation parameters for a less-aggressive deactivation, or disable deactivation in general.

An object doesn't move during the simulation.

Make sure that you've added the object to a RBCollection and that it has a mass other than 0.0 (objects with mass 0.0 are fixed). If you are using Fracture, make sure none of the pieces is fixed (has mass 0.0).

A keyframed object doesn't move during the simulation.

Make sure that you enabled the unyielding property for that rigid body.

My old scripts don't work.

reactor exposes parameters and functionality to MAXScript in a much more consistent and complete way than previously. For the update, some reactor MAXScript interfaces had to be renamed, but all functionality exposed in previous versions is still available, and a lot more functionality has been exposed. While this means that some reactor-specific scripts need to be updated, it also means that a great deal more flexibility and power is now achievable using MAXScript with reactor. For more information, see the MAXScript Help, available from the Help menu.

I can't disable collisions between two bodies.

If your objects don't appear in the Define Collisions dialog, make sure you've added the two bodies to a collection; only objects in collections are shown in that dialog.

Rigid bodies don't sink/don't float in the water.

Objects sink or float depending on their density and the density of the water. You define water density explicitly in the Water space warp. The density of a rigid body is defined as its mass divided by its volume.

If your bodies still don't sink enough for your liking, try the following:

Follow the opposite steps if you're trying to make your objects float more.

Water doesn't ripple enough

You can either increase the Max Ripple value in the Water space warp, or you can scale the effect of the space warp on a particular object that you've bound to the space warp by modifying the Scale Strength value in the Water world-space modifier. The first option (increasing the Max Ripple value) is preferable, but you need to re-create the animation in order to see the effect. The second option (increase the Scale Strength parameter in the modifier) affects only the object bound to the Water space warp. It can thus produce inconsistent results if you have objects floating in the water, because they won't be affected by the change.

I can't see any stored collisions.

Make sure you've set reactor to store collisions during the simulation. Collisions are stored only for rigid bodies; not for Cloth, Soft Bodies, or Rope.

Constrained objects snap at the beginning of the simulation.

During a simulation, reactor tries to match the two constraint spaces (sub-objects) defined in the constraint (see Constraint Concepts for more info). When you create a constraint those spaces are aligned by default. After setup, each space moves with the corresponding attached object. If you have moved the objects and wish to realign the constraint spaces, there are tools in the helper to do so (see Working With Constraint Spaces for more info).

File size increases dramatically.

reactor runs out of memory during simulation.

Reduce the complexity of the objects simulated:

For any deformable body, the Avoid Self-Intersection option is particularly memory-intensive. Avoid using this option if you are having problems regarding memory.

Using FFD-Based Soft Bodies to animate a part of a mesh, the whole object seems to be rotated by the simulation.

If you are using FFD Soft Bodies to animate just a subpart of a mesh, make sure the Animate Transform check box is off, as this option works only for FFD animating the whole mesh.

Using FFD-Based Soft Bodies to animate a whole mesh, some weird squashing happens on occasion.

If you are using FFD Soft Bodies to animate the whole mesh, sometimes the FFD modifier deformation can show artifacts when the lattice points are rotated. Try switching on the Animate Transform check box in the modifier to avoid those artifacts.

Picking objects during preview makes them go unstable.

Try reducing the strength and damping of the mouse spring on the Display rollout.

Objects barely move when picking during preview.

Try increasing the strength and damping of the mouse spring on the Display rollout.

I can't see anything in the Preview Window.

It might be caused by the lack of a proper camera; create a camera and select it in the Display rollout. If still doesn't work, try changing the far and near clipping planes.

The preview shows everything in black.

If the scene uses texture maps but 3ds Max Design can't find the map files, they're shown as black. Disable textures by pressing X during the preview.

After the simulation I get a warning reporting that objects moved to infinity.

When instability occurs, rigid bodies can reach extreme velocities and therefore move to infinity. If reactor detects this condition when creating an animation, it does not create keyframes, but instead reports the problem once the animation is finished.

Check also the Rigid bodies become unstable section above.

There is a visible gap between rigid bodies in the simulation.

Try reducing the Collision Tolerance of the simulation.

reactor complains about a no longer existing node.

This can happen if you rename an object that is used as geometry or display proxy for a rigid body; proxies are stored by name, so if you change the name of the proxy you'll have to manually update the rigid bodies that use it.

Error : All vertices are coplanar, use concave mesh.

By default, geometries in reactor are simulated by using their convex hull. reactor can't create a convex hull from geometry in which all the vertices lie in the same plane, such as a standard 3ds Max Design plane. Those geometries need to be simulated as concave. Check the Rigid Body Properties section for more information.

Rope simulation modifies the smoothness of the spline.

Although reactor simulates cloth as a series of linked vertices, the Rope modifier tries to produce a smooth curve going through the vertices. In most cases the curve generated by the modifier is suitable, but in some cases (for example, if the vertices in the spline are far apart) you might find that the generated curve is not optimal. In those cases you can:

Animation works in the preview, but not in 3ds Max Design after creating the animation.

reactor creates the animation for rigid bodies by sending transforms (new rotation and new position) to the controllers assigned to those bodies. Some controllers, like procedural controllers (Noise) and some system controllers (Biped) do not handle these explicit transform updates. To overcome this, assign a regular keyframable controller such as Euler XYZ or Bezier to the objects or, if that's not possible or desirable, create a copy or snapshot of the bodies and make sure that a suitable controller is assigned to the snapshot copies. Use these copies for the reactor simulation instead.

Rigid bodies in animation flicker and jump when playing the animation but not when moving the time slider.

This is usually a problem with the subframe interpolation of the Euler (XYZ) rotation controller. While reactor sends valid transformation keys to the controller, the conversion from an arbitrary rotation to X,Y and Z Euler angles may cause non-smooth animations between keyframes (the controller produces noncontinuous X,Y and Z values). This problem can be solved by using a quaternion-based rotation controller, such as the TCB controller, for the rigid bodies.

Preview Animation fails

While the Preview Window should work with most OpenGL and DirectX compliant hardware, some specific hardware and driver configurations might cause problems:

Wind doesn't seem to work