Rotates particles so they point in a certain direction.
This operator rotates the input particles to look in a direction or look at a point. This is useful when you are using sprites] (to keep the texture facing the camera) and particle replacement (for example, to keep the models pointed toward their goal).
This operator modifies the following attributes:
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.
How to orient the input particles.
Transform space in which to interpret the Direction parameter.
Object in whose local space to interpret the Direction parameter, when Reference is “Reference object”.
Vector for the lookat direction, interpreted in the space specified in the Reference parameter above.
The vector’s origin is at 0, 0, 0 in the Reference space. As an example, a direction of (0, 0, 1) means a vector pointing down the Z axis.
Standard POP local variables
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.
Point is dead.
Processing iteration number.
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.
Percent of total life used (from 0 to 1).
Expected lifetime of particle.
|MAPU MAPV MAPW|
Point or vertex texture coordinates.
Total number of points.
Total number of points in source group.
|NX NY NZ|
The point number of the currently processed point. The
|RESTX RESTY RESTZ|
The rest position.
The sliding state of the particle.
Elasticity of a point.
Point is stopped.
1 if particle is stuck to a collision object.
|TX TY TZ|
Surface UV values.
|VX VY VZ|
Point spline weight.
Distance from particle to last collision.
|HCR HCG HCB|
Diffuse color at the collision point on the surface the particle collided with.
ID for last collision. You can control how this attribute is set in the Collision or Limit POP to help distinguish types of collisions.
The time at which the last collision occurred.
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.
The UV coordinates for the surface location where the last collision occurred.
Number of times the particle has collided.
Added by Color POP
Point or vertex alpha value.
|CR CG CB|
Diffuse point or vertex color.
Added by Property POP
Charge of the particle.
Point is clinging to geometry.
Leader to follow.
|SCALEX SCALEY SCALEZ|
Added by Proximity POP
Either the point number or id of the particle nearest to this one.
The distance to the nearest particle.
The number of particles within a specified proximity to this particle.
Added by Rotation POP
|ROTX ROTY ROTZ|
Added by Source POP
ID number, which always remains constant.
Original Source point was birthed from.
Parent’s ID Number.
Added by Speed Limit POP
Added by Sprite POP
Sprite rotation around view axis (in degrees).
Texture coordinate of sprite’s lower-left corner.
Size of sprite in texture space.
Controlled by Suppress Rule POP
Suppress default position rule.
Suppress default velocity rule.
Suppress default up-vector rule.
Suppress default aging rule.
1 if particle is suppressing its default rotation rule.
1 if particle is suppressing its default angular velocity rule.
Added by Up Vector POP
|PVX PVY PVZ|
|UPX UPY UPZ|
Absolute speed of particle.
|Lookat||Load | Launch|
This example shows how to use the Lookat POP to make copied geometry point in a particular direction. This is useful when the copied geometry should always be seen face on, like sprites for example.
Three particles are birthed on a grid. They are assigned an up vector to give the particle some frame of reference. The up vector is the y axis, rotated by however much the camera path is rotated.
The Lookat works by applying a transformation that will rotate the z axis to point towards the requested direction. By making the up vector point in the same direction as the plane that the camera moves, the instanced grids' up direction will always be oriented correctly.
The Suppress Rule POP is here to tell Houdini not to apply the default position rules which usually advance the particle positions by its velocity. In this example, we just want the particles to stay still and rotate.
Finally, the Lookat POP applies a transformation so that the particle’s z axis will point towards the z axis of cam1.