f@Frame |
The current floating frame number, equivalent to the $FF Hscript variable |
f@Time |
The current time in seconds, equivalent to the $T Hscript variable |
i@SimFrame |
The integer simulation timestep number ($SF), only present in DOP contexts |
f@SimTime |
The simulation time in seconds ($ST), only present in DOP contexts |
f@TimeInc |
The timestep currently being used for simulation or playback |
- | - |
Attribute Wrangle | |
v@P |
The position of the current element |
i@ptnum |
The point number attached to the currently processed element |
i@vtxnum |
The linear number of the currently processed vertex |
i@primnum |
The primitive number attached to the currently processed element |
i@elemnum |
The index number of the currently processed element |
i@numpt |
The total number of points in the geometry |
i@numvtx |
The number of vertices in the primitive of the currently processed element |
i@numprim |
The total number of primitives in the geometry |
i@numelem |
The total number of elements being processed |
- | - |
Volume Wrangle | |
v@P |
The position of the current voxel |
f@density |
The value of the density field at the current voxel location |
v@center |
The center of the current volume |
v@dPdx , v@dPdy , v@dPdz |
These vectors store the change in P that occurs in the x, y, and z voxel indices |
i@ix , i@iy , i@iz |
Voxel indices For dense volumes (non-VDB) these range from 0 to resolution-1 |
i@resx , i@resy , i@resz |
The resolution of the current volume |
- | - |
Common Geometry Attributes | |
i@id |
A unique indexing number that remains the same throughout time Used to match elements between frames |
f@pscale |
Particle radius size Uniform scale Set display particles as 'Discs' to visualize |
f@width |
Thickness of curves Enable 'Shade Open Curves In Viewport' on the object node to visualize |
f@Alpha |
Alpha transparency override The viewport uses this to set the alpha of OpenGL geometry |
f@Pw |
Spline weight Mostly depreciated at this point |
v@P |
Point position Used this to lay out points in 3D space |
v@Cd |
Diffuse color override The viewport uses this to color OpenGL geometry |
v@N |
Surface or curve normal Houdini will compute the normal if this attribute does not exist |
v@scale |
Vector scale Allows directional scaling or stretching (in one direction) |
v@rest |
Used by procedural patterns and textures to stick on deforming and animated surfaces |
v@up |
Up vector The up direction for local space, typically (0, 1, 0) |
v@uv |
UV texture coordinates for this point/vertex |
v@v |
Point velocity The direction and speed of movement in units per second |
p@orient |
The local orientation of the point (represented as a quaternion) |
p@rot |
Additional rotation to be applied after orient, N, and up attributes |
s@name |
A unique name identifying which primitives belong to which piece Also used to label volumes |
s@instance |
Path of an object node to be instanced at render time |
- | - |
DOP Particle Attributes | |
f@age |
Time in seconds since the particle was born |
f@life |
Time in seconds the particle is allowed to live When f@age>f@life, i@dead will be set to 1 |
f@nage |
Normalized age, f@age divided by f@life Implicit attribute, you cannot write to this |
i@dead |
Whether a particle is living (0) or dead (1) A dead particle is deleted in the Reaping stage |
i@id |
A unique id for the particle that remains the same throughout a single simulation |
i@stopped |
Whether a particle is moving (0) or stopped (1) |
i@stuck |
Whether a particle is free (0) or stuck (1) |
i@sliding |
Whether a particle is free (0) or sliding along a surface (1) |
f@cling |
Force applied to sliding paritcles inwards (according to the collision's surface normal) |
s@pospath |
The path to the object that the particle is colliding with |
i@posprim |
Which collision primitive in the path geometry whose position we wish to refer to |
v@posuv |
Parametric uv on the collision primitive |
i@hittotal |
The cumulative total of all hits for the particle (only incremented once per timestep) |
i@has_pprevious |
This is set to 1 if v@pprevious contains valid values |
v@pprevious |
Stores the position of the particle on the previous frame Used for collision detection |
i@hitnum |
The number of times the particle collided in the last POP Collision Detect |
s@hitpath |
The path to the object that was hit A path to a file on disk or an op: path |
i@hitprim |
The primitive hit Could be -1 if it the collision detector couldn’t figure out which prim |
v@hituv |
The parametric UV space on the primitive |
v@hitpos |
Where the hit actually occurred Useful if the colliding object was moving |
v@hitnml |
The normal of the surface at the time of the collision |
v@hitv |
The velocity of the surface at the time of the collision |
f@hittime |
When the collision occurred, that could be within a frame |
f@hitimpulse |
Records how much of an impulse was needed for the collision resolution varies with timestep |
f@bounce |
When particles bounce off another object, this controls how much energy they keep |
f@bounceforward |
Controls how much energy they keep in the tangential direction |
f@friction |
When particles bounce, they are slowed down proportional to how hard they hit |
s@collisionignore |
Objects that match this pattern will not be collided |
f@force |
Forces on the particle for this frame |
f@mass |
Inertia of the particle |
v@spinshape |
This is multiplied by f@pscale to determine the shape of the particle for rotational inertia |
f@drag |
How much the particle is effected by any wind effects |
f@dragexp |
Ranges from 1 to 2, default is set on the solver Used for both angular and linear drag |
v@dragshape |
How much the particle is dragged in each of its local axes |
v@dragcenter |
If specified, drag forces will also generate torques on the particle |
v@targetv |
The local wind speed Thought of as the goal, or target, velocity for the particle |
f@airresist |
How important it is to match the wind speed Thickness of the air |
f@speedmin |
Minumum speed, in units per second, that a particle can move |
f@speedmax |
Maximum speed, in units per second, that a particle can move |
p@orient |
Orientation of the particle Used for figuring out 'local' forces |
v@w |
Angular speed of the particle A vector giving the rotation axis |
v@torque |
The equivalent of force for spins No inertial tensor (the equivalent of mass) is supported |
v@targetw |
The goal spin direction and speed for this particle |
f@spinresist |
How important it is to match the targetw |
f@spinmin |
Minumum speed in radians per second that a particle can spin |
f@spinmax |
Maximum speed in radians per second that a particle can spin |
- | - |
DOP Grains Attributes | |
i@ispbd |
A value of 1 causes the particle to behave as grains |
f@pscale |
Used to determine the radius of each particle |
f@repulsionweight |
How much the particle collision forces are weighted |
f@repulsionstiffness |
How strongly particles are kept apart Higher values result in less bouncy repulsion |
f@attractionweight |
How much the particles will naturally stick together when close |
f@attractionstiffness |
How strongly nearby particles stick to each other |
v@targetP |
Particles are constrained to this location |
f@targetweight |
The weight of the v@targetP constraints |
f@targetstiffness |
The stiffness with which particles are fixed to their v@targetP attribute |
f@restlength |
Particles connected by polylines will be forced to maintain this distance (prim attribute) |
f@constraintweight |
Scale, on a per-particle basis of the constraint force |
f@constraintstiffness |
This controls the stiffness on a per-particle basis |
f@strain |
This primitive attribute records how much the constraint is stretched |
f@strength |
If f@strain exceeds this primitive attribute, the constraint will be removed |
- | - |
DOP Packed RBD Attributes | |
i@active |
Specifies whether the object is able to react to other objects |
i@animated |
Specifies whether the transform should be updated from its SOP geometry at each timestep |
i@deforming |
Specifies whether the collision shape should be rebuilt from its SOP geometry each timestep |
f@bounce |
The elasticity of the object |
i@bullet_add_impact |
Impacts that occur during the sim will be recorded in the Impacts or Feedback data |
i@bullet_ignore |
Specifies whether the object should be completely ignored by the Bullet solver |
f@bullet_angular_sleep_threshold |
The sleeping threshold for the object’s angular velocity |
f@bullet_linear_sleep_threshold |
The sleeping threshold for the object’s linear velocity |
i@bullet_want_deactivate |
Disables simulation of a non-moving object until the object moves again |
i@computecom |
Specifies whether the center of mass should be computed from the collision shape |
i@computemass |
Specifies whether the mass should be computedfrom the collision shape and density |
f@creationtime |
Stores the simulation time at which the object was created |
i@dead |
Specifies whether the object should be deleted during the next solve |
f@density |
The mass of an object is its volume times its density |
f@friction |
The coefficient of friction of the object |
f@inertialtensorstiffness |
Rotational stiffness A scale factor applied to the inertial tensor |
i@inheritvelocity |
v and w point attributes from the SOP geometry will override the initial velocity |
f@mass |
The mass of the object |
s@name |
A unique name for the object Used by Constraint Networks |
p@orient |
The orientation of the object |
v@P |
The current position of the object’s center of mass |
v@pivot |
The pivot that the orientation applies to If i@computecom is non-zero, this is auto-computed |
v@v |
Linear velocity of the object |
v@w |
Angular velocity of the object, in radians per second |
i@bullet_adjust_geometry |
Shrinks the collision geometry |
i@bullet_autofit |
Use the bounds of the object for Box, Capsule, Cylinder, Sphere, or Plane |
f@bullet_collision_margin |
Padding distance between collision shapes |
s@bullet_georep |
Can be convexhull, concave, box, capsule, cylinder, compound, sphere, or plane |
i@bullet_groupconnected |
Create convex hull per set of connected primitives |
f@bullet_length |
The length of the Capsule or Cylinder collision shape in the Y direction |
v@bullet_primR |
Orientation of the Box, Capsule, Cylinder, or Plane collision shape |
v@bullet_primS |
Size of the Box collision shape |
v@bullet_primT |
Position of the Box, Sphere, Capsule, Cylinder, or Plane collision shape |
f@bullet_radius |
Radius of the Sphere, Capsule, or Cylinder collision shape |
f@bullet_shrink_amount |
Specifies the amount of resizing done by Shrink Collision Geometry |
s@activationignore |
Won't be activated by collisions with any objects that match this pattern |
s@collisiongroup |
Specifies the name of a collision group that this object belongs to |
s@collisionignore |
The object will not collide against any objects that match this pattern |
f@min_activation_impulse |
Minimum impulse that will cause the object to switch from inactive to active |
f@speedmin |
Minumum speed, in units per second, that a particle can move |
f@speedmax |
Maximum speed, in units per second, that a particle can move |
f@spinmin |
Minumum speed in radians per second that a particle can spin |
f@spinmax |
Maximum speed in radians per second that a particle can spin |
f@accelmax |
Limits the change in the object’s speed that is caused by enforcing constraints |
f@angaccelmax |
Limits the change in the object’s angular speed that is caused by enforcing constraints |
f@airresist |
Specifies how important it is to match the target velocity (v@targetv) |
f@drag |
How much the the v@targetv and f@airresist attributes effect the object |
f@dragexp |
Ranges from 1 to 2, default is set on the solver Used for both angular and linear drag |
v@force |
Specifies a force that will be applied to the center of mass of the object |
f@spinresist |
Specifies how important it is to match the target angular velocity (v@targetw) |
v@targetv |
Target velocity for the object Used in combination with the f@airresist attribute |
v@targetw |
Target angular velocity for the object Used in combination with the f@spinresist attribute |
v@torque |
Specifies a torque that will be applied to the object |
i@bullet_autofit_valid |
Stores whether the solver has already computed collision shape attributes |
i@bullet_sleeping |
Tracks whether the object has been put to sleep by the solver |
f@deactivation_time |
Amount of time the speed has been below the Linear Threshold or Angular Threshold |
i@found_overlap |
Used by the solver to determine whether it has performed the overlap test |
i@id |
A unique identifier for the object |
i@nextid |
Stores the i@id the solver will assign to the next new object |
- | - |
DOP Constraint Network Attributes | |
f@width |
Width of each edge |
f@density |
Density of each point |
p@orient |
Initial orientation of each point This value is stored as a quaternion |
v@v |
Initial velocity of each point |
v@w |
Initial angular velocity of each point measured in radians per second |
f@friction |
Friction of each point |
f@klinear |
Defines how strongly the wire resists stretching |
f@damplinear |
Defines how strongly the wire resists oscillation due to stretching forces |
f@kangular |
Defines how strongly the wire resists bending |
f@dampangular |
Defines how strongly the wire resists oscillation due to bending forces |
f@targetstiffness |
Defines how strongly the wire resists deforming from the animated position |
f@targetdamping |
Defines how strongly the wire resists oscillation due to stretch forces |
f@normaldrag |
The component of drag in the directions normal to the wire |
f@tangentdrag |
The component of drag in the direction tangent to the wire |
i@nocollide |
Collision detection for the edge is disabled (Only used if Collision Handling is SDF) |
v@restP |
Rest position of each point |
p@restorient |
Rest orientation of each point |
i@gluetoanimation |
Causes a point’s position and orientation to be constrained to the input geometry |
i@pintoanimation |
Causes a point’s position to be constrained to the input geometry |
v@animationP |
Target position of each point |
p@animationorient |
Target orientation of each point |
v@animationv |
Target velocity of each point |
v@animationw |
Target angular velocity of each point |
i@independentcollisionallowed |
Toggle external collisions (Only non-SDF Geometric Collision) |
i@independentcollisionresolved |
Unresolved external collisions (Only non-SDF Geometric Collision) |
i@codependentcollisionallowed |
Toggle soft body collisions (Only non-SDF Geometric Collision) |
i@codependentcollisionresolved |
Unresolved toggle soft body collisions (Only non-SDF Geometric Collision) |
i@selfcollisionallowed |
Toggle self collisions (Only non-SDF Geometric Collision) |
i@selfcollisionresolved |
Unresolved toggle self collisions (Only non-SDF Geometric Collision) |
- | - |
DOP FLIP Attributes | |
f@pscale |
Particle scale |
v@v |
Particle velocity |
f@viscosity |
The "thickness" of a fluid |
f@density |
The mass per unit volume |
f@temperature |
The temperature of the fluid |
f@vorticity |
Measures the amount of circulation in the fluid |
f@divergence |
Positive values cause particles to spread out, negative cause them to clump together |
v@rest |
Used to track the position of the fluid over time |
v@rest2 |
Used for blending dual rest attributes, avoids stretching |
f@droplet |
Identifies particles that separate from the main body of fluid |
f@underresolved |
Particles that haven't fully resolved on the grid |
i@ballistic |
Specifies particles which will be ignored by the fluid solve |
v@Lx |
Angular momentum X axis |
v@Ly |
Angular momentum Y axis |
v@Lz |
Angular momentum Z axis |