This topic offers answers to a number of questions users commonly ask when first learning to use Particle Flow. The first section contains links to all the questions, and the subsequent sections contain the questions and answers organized by category.
Parameters that measure time in Particle Flow, such as Emit Start/Stop and Test Value, are specified in frames. However, Particle Flow is always aware of the current system frame rate (fps), and if you change this rate, it adjusts all time-related parameters to keep the same timing. For instance, if you set Test Value to 60 when you're using the NTSC frame rate (30 fps), and then switch to PAL (25 fps), Particle Flow automatically changes the value to 50, so the age that's tested for is still two seconds.
Most of the animation in Particle Flow is history dependent; that is, to be able to draw the particles in a particular frame, Particle Flow needs to know what happened in all previous frames. Normally, when you change a parameter value, Particle Flow needs to recalculate all frames between the start and the current frames. Or, if you go to a different frame, Particle Flow must recalculate one or more animation frames. If you go forward, it must calculate the frames between the current frame and the one you go to. So, for example, if you just go to the next frame, relatively little calculation is needed. But if you go backward, even only by one frame, it must calculate all frames from the start of the animation to the frame you go to.
If a lot of calculation is needed, there is a delay. Meanwhile, 3ds Max Design displays a message like “PF Source 01 Update xx% (Press Esc to cancel)” in the status bar, so you can get an idea of how the recalculation is progressing. If, when you see this message, you press the Esc key, Particle Flow displays an alert with the message “Click OK to turn off PF Source 01.” If you click OK, the recalculation stops, giving you the opportunity to optimize the animation. For example, you could reduce the number of particles for testing purposes. You must turn the source back on to continue. If you click Cancel, the calculation continues.
Yes. Particle Flow's lets you store all or part of a particle animation in memory, and then play back the animation from memory rather than having to recalculate particle motion. This makes it much faster to jump between different parts of the animation. You can even save the cached animation to disk as part of the scene file.
Particle Flow can place heavy processing and resource demands on your computer. For optimal performance, the most important thing you can do is to use the fastest available CPU. Also, when using particle systems with many particles, install as much memory as possible in your computer, especially if you're using caching.
Other ways to improve performance include reducing the percentage of viewport particles with the Quantity Multiplier setting, and temporarily disabling flows and actions that you're not currently working with. When making parameter changes, return to the first frame and play forward, or set Particle View Options menu Update Type to Forward. That way, if you change a setting, the particle system is not forced to recalculate its state from the very beginning. The change will affect only animation from the current frame forward. On the other hand, the result could be misleading, because you wont be able to see the difference right away.
Particle Flow doesn't have a fragmentation operator, but by utilizing the in a Birth Script operator, you can implement fragmentation in Particle Flow. You can find example scenes, with commented Birth Script operators, in the files on the second disc in the directory Samples\Scenes\Particle Flow\Fragments\.
On the command panel of the PF Source icon, you can adjust the integration step independently for viewport playback and rendering. The smaller the integration step, the more times Particle Flow calculates particle motion per frame, resulting in greater accuracy at the cost of calculation time.
Yes. Particle Flow includes a and , as well as a , that let you fully customize the particle system. Each scriptable action includes a sample script, which also lists all relevant scriptable functions. You can also control parameters of the and with script wiring, described in the respective topics.
Yes. With the , you can use groups, hierarchies, and objects consisting of multiple elements, with each members of the combined object constituting a separate particle. These objects can be emitted in a specific order, or in a random order. For example, you can use a text object, with the letters emitted in the order in which they appear in the text.
To prevent particles from being affected by a light source, use the light’s Exclude function, found on the General Parameters rollout (Modify panel), to specify any events containing particles to be excluded. Specifying the PF Source XX object (default name) has no effect; you must specify all objects listed as PF Source XX->Event XX.
Yes. Particle View gives you a number of different ways of doing this. You can click an action's icon or an event's light-bulb icon to turn it off, or use the right-click menu, or use Edit menu's Turn On and Turn Off commands. Also, if you press Esc while Particle Flow is calculating, 3ds Max Design gives you the opportunity of turning off the entire particle system, thus immediately returning control of 3ds Max Design to you. You can then analyze the system to determine the area of slowdown, optimize or simplify the particle flow, and then recalculate the animation.
No; you use the , , or to affect particle motion with 3ds Max Design space warps. The ability to do this on a global and local (per-event) basis gives you much greater control over how space warps affect the particles than with previous systems.
You can apply motion blur on a per-event basis by editing the event's with the right-click menu in Particle View, or on a global basis by editing the global event's object properties. In the Particle View dialog, highlight the event to edit and then right-click and choose Properties. On the Object Properties dialog, edit the Motion Blur group settings.
You can animate many of the Particle Flow parameter values with keyframing. In most actions, you can choose the time frame by which to apply this animation to the particles from a drop-down list labeled Sync By. You can apply this animation to particles in the time frame of the entire animation, or at a specific time of each particle's life (particle age), or based on the length of time the particle has been in the current event. See the individual operator and test topics for details.
Particle Flow includes several Split tests, which let you send some particles to another event based on quantity, selection, or source. You can use any number of these in a single event to send parts of the particle stream to different events, and then use a to redirect the remaining particles to another event. Keep in mind that any tests subsequent to the first can work only with particles remaining in the event, not necessarily all particles that begin in the event.
It depends. If an event contains two or more operators of the same type, such as Shape, the last one overrides the rest. If an event contains two or more tests, they are evaluated and particles redirected in the order in which the tests appear.
However, if two actions in an event control the same properties, the interaction is more complex. An action that works on a continuous basis will typically prevail over one that affects particles only when they first enter the event. For example, both the and can control particle speed and direction, but the test works continuously, while the operator takes effect only once. If an event contains both, particle speed and direction will be primarily controlled by the test, in general, even if the operator comes after the test. However, the operator's settings will still have some influence over particle behavior, particularly if its Speed value is significantly higher than that of the test. For a list of actions’ effective time frames, see .
Also, if you're testing for a specific condition that can be affected by other actions in an event, be sure to place the test after the actions. For example, in an event with a and a , place the Collision test after the Force operator. This avoids the possibility of the force pushing particles past the deflector before Particle Flow can test for the collision, which would allow the particles to penetrate the deflector. In general, place tests at the end of the event.
One way is to set the Type option for the in each event to a different choice. For example, the first event could use Ticks, the second Circles, and the third Lines. This way the particles change appearance in the viewports as they move from event to event. You can also use the Display operator to change particle colors, to further distinguish them.
Another way is to select all particles in a certain event. Select the Particle Flow source icon, and then go to the Modify panel Selection rollout and click the Event icon. You can then click an event in the Select By Event list to highlight all of its particles in the viewports.
A material is a static property of an event. It does not travel along with the particles from event to event. A particle's material ID does, but its material does not. If you want particles always to use the same material, define the material in the with a or a . Otherwise, you need to define it in each local event.
A similar operator in the global event might be overriding your local operator. By default, Particle Flow evaluates local operators first, and then global operators. If a global operator affects the same property, such as speed, as a local one, the particle system will use the value set by the global operator. You can set local operators to override global ones by choosing Particle View Options menu Action Order Globals First.