Manually set physical attributes.
This operator does not affect particle behavior independently. Instead, you use it to set “physical” attributes such as mass, drag, and charge that control how other operators, such affect the particles.
You can also use this operator to set the follow attribute, which
controls which leader a particle follows in the Follow
POP, which attractor point affects a particle in the
Attractor POP, and which center to orbit in the
Orbit POP
This operator modifies the following attributes: attract, charge,
drag, follow, mass, oaxis, ocenter, ocntrid, oradius,
ospeed and pscale.
Parameters
| Activation | Turns this node on and off. The node is only active if this value is greater than 0. This is useful to control the effect of this node with an expression. Note that this is activation of the node as a whole. You can’t use this parameter to deactivate the node for certain particles. |
| Source Group | Only affect a group of points (created with, for example, a Group POP or Collision POP) out of all the points in the input. |
Physical
The parameters on this tab set attributes corresponding to real world physical properties on the input particles. Other operators use these attributes to simulate the effect of forces on the particles.
| Mass | Sets the mass of the input particles. Changing the mass of a particle scales forces on the particle according to the following formula: $$F = M * A$$ where F is force, M is mass, and A is acceleration. So, particles with high mass require more force (F) to change their motion. |
| Center of Mass | Sets the relative position of the center of mass for input particles. This is a displacement in object space from the origin (0,0,0) of the object. The rigid body particle representing an object is always placed at the origin of the object, which may not be the real center of the geometry. In this case you would specify a center of mass so that the particle behaves as if its center of mass is at the center of the geometry. |
| Bounce | Sets the bounce coefficient of the input particles. When two objects collide, the product of the bounce coefficients of the objects determines the energy lost to the collision (and so the velocities of the object after the collision). |
| Dynamic Friction | Sets the attribute controlling friction between two moving rigid body particles. When two objects are in contact and sliding across each other, the product of their dynamic friction values determines the force of friction acting against the sliding motion. |
| Static Friction | Sets the attribute controlling friction between two stationary rigid body particles When two objects are in contact and relatively at rest, the product of their static friction values determines the amount of force required to induce a relative (sliding) motion of the objects. |
Orbit
The parameters on this tab control how the input particles orbit a center in the Orbit POP.
| Axis | The axis around which the particle rotates (a vector normal to the plane of rotation). |
| Center | 3D point to orbit. The interpretation of this value is controlled by the Orbit POP. |
| Radius | Radius of the orbit in units. |
| Speed | Speed of the orbit in RPM. |
| Orbit Index | ID of the point in the “Center Group” to be used as the center of orbit. The interpretation of this value is controlled by the Orbit POP. |
Misc
The parameters on this tab set attributes used by the Attractor POP, Follow POP, Interact POP, and other operators.
| Follow Index | The ID of the particle to follow. The interpretation of this value is controlled by the Follow POP. |
| Attractor Point | The point that attracts/repels the particle in the Attractor POP. |
| Charge | The positive or negative “electrical charge” of the particle in the Interact POP. Particles with opposite charges attract, and particles with like charges repel. |
| Uniform Scale | Sets a scaling factor for the input particles. This may be used by the Interact POP to determine the size of the particle’s field of influence on other particles, and by the Render POP to control the rendered size of particles. |
| Scale | Sets non-uniform scaling factors for the input particles. |
| Drag | Sets the drag attribute of the input particles. Other operators use this attribute to control how forces affect the particles. |
| Cling | Sets the cling factor, used when the particles are sliding. Note Cling is implemented as a force that acts to counter forces pulling the particle away from the surface. Cling is not applied if there is no force to counter. Sliding particles apply friction to act against the tangential motion of the particle. |
Local variables
Standard POP local variables
| AGE | The seconds a particle in the template has been alive. |
| AX AY AZ | Acceleration of the particle. |
| BBX BBY BBZ | The point’s relative position in the bounding box. |
| DEAD | Point is dead. |
| ITER | Processing iteration number. |
| JUSTHIT | A collision for this particle was detected (for example, by the Collision POP) during the processing of this timestep (that is, this iteration of the particle simulation). This variable is cleared at the beginning of each timestep. Note that the collision POP actually detects any collisions which would have occurred the during the previous frame. |
| LIFE | Percent of total life used (from 0 to 1). |
| LIFESPAN | Expected lifetime of particle. |
| MAPU MAPV MAPW | Point or vertex texture coordinates. |
| NPT | Total number of points. |
| NGRP | Total number of points in source group. |
| NX NY NZ | Normal vector. |
| PT | The point number of the currently processed point. The |
| RESTX RESTY RESTZ | The rest position. |
| SLIDING | The sliding state of the particle. |
| SPRINGK | Elasticity of a point. |
| STOPPED | Point is stopped. |
| STUCK | 1 if particle is stuck to a collision object. |
| TENSION | Spring tension. |
| TIMEINC | Time increment. |
| TX TY TZ | Point position. |
| U V | Surface UV values. |
| VX VY VZ | Velocity direction. |
| WEIGHT | Point spline weight. |
Added by Collision POP/Limit POP
| DIST | Distance from particle to last collision. |
| HCR HCG HCB | Diffuse color at the collision point on the surface the particle collided with. |
| HITID | ID for last collision. You can control how this attribute is set in the Collision or Limit POP to help distinguish types of collisions. |
| HITTIME | The time at which the last collision occurred. |
| HMAPU HMAPV | The texture map UV coordinates for the surface location where the last collision occurred. |
| HNX HNY HNZ | The normal at the surface location where the last collision occurred. |
| HTX HTY HTZ | World space position of the last collision. |
| HU HV | The UV coordinates for the surface location where the last collision occurred. |
| NUMHIT | Number of times the particle has collided. |
Added by Color POP
| CA | Point or vertex alpha value. |
| CR CG CB | Diffuse point or vertex color. |
Added by Property POP
| ATTRACT | Attractor point. |
| CHARGE | Charge of the particle. |
| CLING | Point is clinging to geometry. |
| DRAG | Point drag. |
| FOLLOW | Leader to follow. |
| MASS | Point mass. |
| PSCALE | Particle Scale. |
| SCALEX SCALEY SCALEZ | Non-uniform scale. |
Added by Proximity POP
| NEAREST | Either the point number or id of the particle nearest to this one. |
| NEARESTDIST | The distance to the nearest particle. |
| NUMPROXIMITY | The number of particles within a specified proximity to this particle. |
Added by Rotation POP
| ROTA | Rotation angle. |
| ROTX ROTY ROTZ | Rotation axis. |
Added by Source POP
| GEN | Generation. |
| ID | ID number, which always remains constant. |
| ORIGIN | Original Source point was birthed from. |
| PARENT | Parent’s ID Number. |
Added by Speed Limit POP
| SPEEDMAX | Maximum speed. |
| SPEEDMIN | Minimum speed. |
Added by Sprite POP
| SROT | Sprite rotation around view axis (in degrees). |
| STEXU STEXV | Texture coordinate of sprite’s lower-left corner. |
| STEXW STEXH | Size of sprite in texture space. |
| SX SY | Sprite scale. |
Controlled by Suppress Rule POP
| SUPPPOS | Suppress default position rule. |
| SUPPVEL | Suppress default velocity rule. |
| SUPPUP | Suppress default up-vector rule. |
| SUPPAGE | Suppress default aging rule. |
| SUPPROT | 1 if particle is suppressing its default rotation rule. |
| SUPPANGVEL | 1 if particle is suppressing its default angular velocity rule. |
Added by Up Vector POP
| PVX PVY PVZ | Previous velocity. |
| UPX UPY UPZ | Up vector. |
Added by Location, Source, Softbody, Split POPs
| SPEED | Absolute speed of particle. |
Examples
| Swarm | Load | Launch |
This network utilizes the Property POP to give particles certain Orbit attributes which in turn are referenced by the Orbit POP. A Mass value, for example, is one of the attributes that can be assigned by the Property POP. Here, one particle is given a much greater mass hence affecting the orbiting motion of all the other lighter particles. The greater the mass of a particle, the less other forces (including those from other particles) can influence it. There are two particle systems in this example: | |
| Particle system 1 | The source1 POP births several particles, with a random forward velocity. The property POP gives the particles orbit attributes oaxis, oradius and ospeed. These attributes are only useful in conjunction with the Orbit POP. The orbit axis is oriented along the z-axis, with some variance. The expression rand($ID) is used to generate a random number that is unique per particle, but remains constant throughout the animation. The orbit radius also uses this expression to assign a radius between 1 and 1.5 units. The orbit speed is proportional to the orbit radius. The group1 POP groups this particle system as “light”. |
| Particle system 2 | The source2 POP births a single particle, with a random forward velocity. The property1 POP is used to assign a mass of 20 to this particle. This is done so that when this system is combined with the first system, the center of mass will be closer to this particle. The property2 POP gives the particle an orbit axis oriented along the z-axis, an orbit radius of 1 unit, and an orbit speed of 10 RPM. The group2 POP groups this particle system as “heavy”. |
Examples that use this node
| Example for | Example name | |
|---|---|---|
| Attractor | AttractToGrid | Load | Launch |
| ||
| Follow | FollowInteract | Load | Launch |
| ||
| Follow | SplitAndStick | Load | Launch |
| ||
| Interact | Disperse | Load | Launch |
| ||
| Orbit | OrbitAlternate | Load | Launch |
| ||
| Rotation | RotateBasic | Load | Launch |
| ||
| Split | RecursiveSplit | Load | Launch |
| ||
| Add Attribute | pscaleVOPSOP | Load | Launch |
| ||