Shape Instance lets you use any reference object in the scene as particles.
You can effectively define only one reference object per event, but the object can comprise any number of sub-objects, each of which Particle Flow can treat as a separate particle. Also, using tests, you can divide the particle stream into multiple branches and define a different particle shape for each.
As the name of the operator indicates, reference geometry is instanced into the particle system. Thus, any physical changes you make to the original geometry are reflected instantly in the particle system. If you hide the original geometry, the particles still appear. However, if you delete the original geometry, the particles are deleted as well.
Using Transform-Animated Reference Objects
You can create animated particle shapes by animating the reference object with modifiers, and then turning on Animated Shape. However, Shape Instance ignores any rotational and positional transformations applied directly to the reference object; it uses only the pure scale component. For example, if you scale an object non-uniformly using the View reference coordinate system, the result might skew the object's shape. Because the skewing is the by-product of a rotational transform, it wouldn't be reflected in the particles' shape. However, modifiers and comparable functions that contain transformations applied to the reference object are reflected in the instanced particles. For example, if you want particles to use rotational transforms applied to the reference object, use the Reset XForm function on the reference object. Reset XForm is available from the Utilities panel.
Tip: Particle Flow
can , however, use rotational and positional animation applied to descendant objects in a hierarchy, when you use the entire hierarchy as a single particle. To do this, create a hierarchy, animate the descendant objects, and then designate the parent as the reference object. Do not turn on Separate Particles For
Object And Children. You'll find a procedure illustrating this, below.
When using an animated reference object, it is recommended that you hide the reference object after instancing it in the particle system.
Procedures
Example: To use the reference object's rotational and positional animation in the particle system:
- Create an object you want to use as the particle shape, such as a teapot, and a Dummy helper object.
- Animate the teapot using the Move and Rotate tools.
- Use the Align tool to center the teapot to the dummy.
This step isn't necessary, but it can help to obtain more consistent results.
- Link the teapot as a child of the dummy (drag from the teapot to the dummy).
You can use any object as the parent, but using a dummy, which doesn't render, lets you animate all instanced particles visible in the final animation.
- Create a default Particle Flow system.
- In Particle View, delete the Rotation operator.
- Replace the Shape operator with a Shape Instance operator.
- In the Shape operator parameters, designate the dummy as the Particle Geometry Object.
- Turn on Animated Shape.
- For sequential animation, which can be more interesting visually, in Animation Offset Keying, set Sync By to Particle Age or Event Duration.
Interface
Particle Geometry group
Use this control for defining the object to be used as the particle geometry. This object is known as the reference object.
- [Particle Geometry button]
- Click this button, and then select a geometry object in the scene to be used as the particle shape. The mouse cursor changes to a cross shape when positioned over an object that's valid for use as a reference object. Valid objects include multi-shape objects such as groups and hierarchies; see Separate Particles For group.
After picking a reference object, its name appears on the button.
You can use almost any geometry object as a reference object. By default, the operator automatically converts closed splines to rendering geometry by “filling in” the area defined by the shape outline. To use the shape outline instead, select the original shape and, on the Modify panel Rendering rollout, turn on Display Render Mesh. You needn't turn on Renderable, but changes to all other Rendering rollout settings, such Thickness and Sides, are reflected in the rendered particles.
Particle Flow does not automatically “fill in” open shapes such as Line (non-closed) and Arc. To render these shapes when using them as particles, turn on Modify panel Rendering rollout Display Render Mesh.
If a Shape Instance operator is in effect for which the geometry object is not defined, and the viewport display type is set to Geometry, then the particles appear in the viewports as X characters.
Note: If a multi-shape object used as a reference object comprises objects both with and without materials applied, and Acquire Material is on, Particle Flow will apply the first available material to any objects without materials applied.
Note: You can use a NURBS surface as a reference object, but not a NURBS curve. To use a NURBS curve as particle geometry, first convert it to a surface using a method such as the Cap function.
Tip: For best results, when using an animated reference object, it's highly recommended that you hide the original object before rendering, or use Object Properties to turn off its Renderable checkbox.
Note: If using a group as a reference object, make sure the group is closed before selecting it. Selecting an open group will add only the group member you click, not the entire group.
Separate Particles For group
3ds Max provides a number of methods for combining disparate objects into single entities, including grouping, building hierarchies with linking, and attaching. By default, when using such a multi-shape object as particle geometry, each particle comprises all member objects. Alternatively, you can instruct Particle Flow to treat each member object as a separate particle with these options. When on, Particle Flow uses each member object as a single particle, in left-to-right order according to its X-axis position, by default. So, for example, if you create text in the Front viewport, assign it as reference geometry, and turn on Object Elements, the letters come out in the proper order.
You can vary the order randomly by turning on Multi-Shape Random Order.
You can turn on any combination of Separate Particles items. All are off by default.
- Group Members
- When on, group members are treated as separate particles.
- Object and Children
- When on, linked objects are treated as separate particles.
- Object Elements
- When on, element sub-objects of a single mesh object are treated as separate particles.
- Vertices/Faces
- Show the number of vertices and triangles per particle. If the reference geometry is multi-shape and the appropriate checkboxes in the Separate Particles are on, then these displays show an average vertex/face count.
- Number of Shapes
- Shows number of different particle shapes. This number is always 1 unless the reference geometry is multi-shape and the appropriate checkboxes in the Separate Particles For group are on, in which case this displays the number of resulting different shapes.
- Scale (%)
- Specifies a uniform scaling factor for all particles. Range=0 to 100000. Default=on, 100.
The center of scaling for multi-shape object members treated individually depends on how the objects are combined. For grouped and linked objects, the scaling is done about the objects' pivot points. For object elements, the scaling center is the geometric center of each object; that is, the averaged location of all the vertices.
This value cannot be animated. To animate particle size, use the Scale operator.
- Variation (%)
- Specifies a randomized percentage of scaling variation. Use the Uniqueness setting to change the randomization. Range=0 to 100. Default=0.
This value cannot be animated. To animate scaling variation, use the Scale operator.
- Acquire Mapping
- When on, all mapping data from the reference object is transferred to particles. Default=on.
- Acquire Material
- When on, material data from the reference object is transferred to particles. Default=on.
If the reference object is a group, with different materials applied to the group members, Particle Flow creates a new Multi/Sub-Object material containing all of the materials and uses it as the particle material.
Tip: Because materials are “sticky” in Particle Flow, if you turn off Acquire Material after specifying a reference object with an attached material, the material remains applied to the particles. To avoid applying the instanced shape's material to the particles, turn off Acquire Material before specifying the reference object.
- Sub-Mtl ID Offset
- When using material inheritance with a Multi/Sub-Object material, the Shape Instance operator adds this value to the Material ID value to create a sub-material ID. Particle Flow uses this ID to determine which of the material's sub-materials to inherit and thus apply to the particles in its event, based on the sub-material ID in the material.
- Multi-Shape Random Order
- When on, assigns shapes to particles in random order. When off, Particle Flow emits each shape in the multi-shape object as a single particle, in the order of the shape's X coordinate. In other words, the shape with the lowest X-axis coordinate is emitted first, then the one with the next highest, and so on. The option is available only if at least one of Separate Particles For group checkboxes is on. Default=off.
For example, if you want the particles to spell out a word or phrase, use extruded text created in the Front viewport as the reference object, turn on Separate Particles For Group Elements, but leave Multi-Shape Random Order off.
- Animated Shape
- When on, particles use any animation in the reference object, including cyclic animation applied with the Parameter Curve Out-of-Range Types controls. When off, the particles are not animated.
With this option, you can use the Animation Offset Keying controls to specify how to synchronize the reference-object animation with the particles. See the next section.
Note: A particle that uses this option is animated only while in the event containing the Shape Instance operator. If it moves to another event that doesn't contain a shape operator, it keeps the same shape, but the animation stops. The easiest way to keep the animation going from event to event is to place the Shape Instance operator in the
global event. Otherwise, you need to place the operator in each event in which the particle should be animated.
- Fast Shape Evaluation
- When on, this option speeds up execution of the Shape Instance operator by evaluating the particle shape at the final integration step only. This is similar to the History-Dependent option for Output suboperators.
You can see how the option works with the example scene SpidersForCaching.max. Compare the time to switch from first frame to the last frame in viewport with this option on and off.
- Acquire Current Shape
- When on, Particle Flow acquires the particle shape from the reference object as each particle enters the event. Thus, if the reference object is animated, particles that enter at different times get different shapes. However, these shapes are not animated. When the option is off, the shape is acquired from frame 0. Default=off.
This option is available only when Animated Shape is off.
Animation Offset Keying group
These controls are available only when Animated Shape is on.
- Sync By
- Lets you choose how to synchronize reference-object animation with the particles.
- Absolute Time All particles have the same shape at any given moment.
- Particle Age Animation of the reference object is synchronized with particle age: Frame 0 of the reference-object animation corresponds to the frame of each particle's birth.
- Event Duration Frame 0 of the reference-object animation corresponds to the moment the particle enters the event.
- Rand Offset
- When on, randomly varies the start of each particle's animation. Use the numeric setting to specify the number of frames by which the animation start can vary.
- Update Particle Shape
- Refreshes instanced particle shapes from the reference object. Use this after changing an object in a hierarchical reference object.
In most cases, Particle Flow automatically updates instanced particles when changes are made to the reference object. However, in some cases, when you change an object deep in a hierarchy, the particle instances might not be updated. In such a case, click Update Particle Shape to refresh the instances.
Uniqueness group
The Uniqueness setting enables changing the randomization of the scale variation, animation offset, and the multi-shape random order.
- Seed
- Specifies a randomization value.
- New
- Calculates a new seed using a randomization formula.