With this modifier you can limit the movement of particles by preventing them from moving in one or more planes. So for example, if you have a Turbulence modifier in the scene, the Limit modifier could be used to restrict movement to the X and Z axes, with no movement along the Y axis.
Note that if you set the limit to 100% in all three fields, the particles will not move at all!
In the latest version you can also limit particle rotations or use the modifier to limit a variety of other particle data values.
This modifier was originally written by Paul Taylor in Python using the X-Particles API. Paul generously allowed us to convert his modifier into a full inbuilt modifier for the particle system.
This modifier has the following sections:
For the 'Groups Affected', 'Mapping', and 'Falloff' tabs, and for the buttons at the bottom of the interface, please see the 'Common interface elements' page.
Uncheck this switch to disable the modifier.
Independent [default setting]
In this mode, the modifier will work in the same way as a standard Cinema 4D particle modifier: particles will be affected if they come into the field of effect of the modifier. X-Particle Actions have no effect on the modifier in this mode.
In this mode, the modifier will only act on a particle when told to do so by an Action. Until that point, the particle will not be affected, but once activated for a particular particle, the modifier will continue to influence it as long as it is in the field of effect of the modifier. The modifier's effect on a particle can be halted by means of another Action, if desired.
Check this switch to enable position limiting.
Use Emitter Space
If this space is unchecked, the axes on which movement is limited will be the global, 3D world, axes. If it is checked the emitter axis is used instead. You will only see a difference if the emitter is rotated so its axes are not aligned with the world axes. Note that this setting has no effect if you are emitting from an object, only if you emit directly from an emitter.
This is the limit, in percentage terms, of movement on the three axes. A value of zero means no limit, a value of 100% results in no movement at all on that axis.
The three components (X, Y, and Z axes) of the 'Axis Limit' parameter can be mapped individually.
This drop-down has three settings:
There is no restriction on the X-axis other than the value in 'Axis Limit' if that is greater than zero.
X-axis movement is restricted to the positive axis. This can be combined with the 'Axis Limit' setting to reduce movement along the other axes.
X-axis movement is restricted to the negative axis. This can be combined with the 'Axis Limit' setting to reduce movement along the other axes.
Y-Axis Restriction. Z-Axis Restriction
These operate in the same way as for the 'X-Axis Restriction'.
When particles turn to move in a different direction, the bank component of their rotation is often changed automatically. This looks natural for such things as birds, but if you watch a school of fish, they do not appear to bank on turning.
If you would prefer that the particles emulate that behaviour and don't bank when turning, you can use this modifier with 'No Banking' checked.
In this quicktab you can apply limits to the particle's scale.
Check this switch to enable scale limiting.
Limit Upper Scale
To limit the maximum scale of the particle, check this switch.
If 'Limit Upper Scale' is checked, this is the maximum scale of the particle.
Limit Lower Scale
To limit the minimum scale of the particle, check this switch.
f 'Limit Lower Scale' is checked, this is the minimum scale of the particle.
In this quicktab you can limit the rotation applied to a particle.
Check this switch to enable rotation limiting.
Limit H positive
When checked, particle positive rotation around the H axis will be limited to the value in 'Positive Limit'.
The limiting value to use when 'Limit H Positive' is checked.
Limit H Negative, Negative Limit
As for 'Limit H Positive' and 'Positive Limit' but for negative rotation around the H axis.
Limit P Positive, Positive Limit, Limit P Negative, Negative Limit, Limit B Positive, Positive Limit, Limit B Negative, Negative Limit
As for rotation around the H axis for the P and B axes.
Restrictions on rotation limiting
If you use the emitter Extended Data tab to implement a rotation mode such as Tangential rotation, this modifier will have no effect. This is because the emitter rotates the particle after all modifiers are executed, so will override anything the Limit modifier does. If you don't want that to happen, enable rotations in the emitter but leave its 'Rotation Mode' setting at 'None'. You can use the Spin modifier to carry out the rotations instead. This has a 'Tangential' mode so the emitter is not needed for such rotation.
Degrees of freedom
One problem to be aware of is that it is not possible to limit rotations around all three axes independently. As an example, consider what happens if you use a Direction modifier to change the direction to +90 degrees H (heading), and a Spin modifier to rotate the particle tangentially. You would see something like this:
If you use the XP Console to see the rotation values, you will see that the particle is rotating around H but P and B are still zero. You can use the Limit modifier to restrict the rotation around the H axis and it will not affect the P or B axes.
Now in the Direction modifier also change the direction to +45 degrees on P (pitch). Then you see this:
If you use the XP Console, you see that as well as changes to H and P, rotation around B also changes. This is inevitable: change two axes of rotation and the third must change too. If we use a Limit modifier to limit rotation around B to zero degrees, it will work - but the rotation will no longer be tangential, because altering B must alter H and P as well, as seen here:
This is a known issue with 3D rotations. Just be aware that in some circumstances it is not possible to limit rotations without altering the rotation in an undesirable way.
Other Data quicktab
You can use this quicktab to limit the value of several particle data parameters to within upper and/or lower limits.
Limit Other Data
Check this switch to enable the limiting of other particle data.
Parameter to Limit
From this drop-down menu you can choose the data item to limit. The options are:
- User Value
Clip Lower Values
If checked, the selected parameter will be clamped to no lower than the value in the 'Value' parameter.
The lower limit value to use.
Clip Higher Values
If checked, the selected parameter will be clamped to no higher than the value in the 'Value' parameter.
The upper limit value to use.