Sometime documents are more worthy and meaningful than videos

## More than 2k Houdini attribute explanation in simple form

**Houdini attributes list of particle system.**

**Particle Birth Attributes**

- @age float -Time particle was born.
- @life float – Time particle is allowed to live.
- @nage float – Normalized age, age divided by life.βΊ
- @dead int – To kill particles. βΌβΎ
- @id int – A unique id for the particle.

**Particle collision Attributes**

- @stopped int – Put particle in rest.
- @stuck int – Stick a particle to surface.
- @sliding int – Sliding along a surface.
- @cling float – Applied to sliding particles inwards.
- @pospath string – The path to the object the particle is colliding.
- @posprim int – Collision primitive in the path geometry position.
- @posuv vector – Parametric uv on the collision primitive.
- @hittotal int – The cumulative total of all hits for the particle.
- @has_pprevious int – 1 if @pprevious contains valid values.
- @pprevious vector – Position of the particle on the previous frame
- @hitnum int – Number of times the particle collided.
- s@hitpath string – Path to the object that was hit
- i@hitprim int – primitive hit by particles.
- @hituv vector – Parametric UV space on the primitive.
- @hitpos vector – Position hit actually occurred with colliding object .
- @hitnml vector – Normal of the surface at the time of the collision.
- @hitv vector – Velocity of the surface at the time of the collision.
- @hittime float -Time when the collision occurred.
- @hitimpulse float – Records an impulse for the collision resolution.
- @bounce float – Particles bounce energy they keep.
- @bounceforward float – Particles energy they keep in the tangential direction.
- @friction – Particles slowed down proportional over the time.
- @collisionignore string -Objects that match this pattern will not be collided.

**Particle movement Attributes**

- @force float -Forces on the particle for this frame.
- @mass float – Inertia of the particle.
- @spinshape vector – Shape of the particle for rotational inertia.
- @drag float – Particle is effected by any wind effects.
- @dragexp float – Angular and linear drag.
- @dragshape vector – Particle is dragged in each of its local axes.
- @dragcenter vector – Drag forces will also generate torques on the particle.
- @targetv vector – Goal, or target, velocity for the particle.
- @airresist float – Resist hickness of the air.
- @speedmin float – Minimum speed a particle can move.
- @speedmax float – Maximum speed a particle can move.

**Particle orientation Attributes**

- @orient quaternion – Orientation of the particle.
- @w vector – Angular speed of the particle.
- @torque vector – Equivalent of force for spins.
- @targetw vector – Goal spin direction and speed for this particle.
- @spinresist float – match the targetw.
- @spinmin float – Minimum speed in radians per second of particle.
- @spinmax float – Maximum speed in radians per second of particle.

**Houdini attributes list of POP Grain system**.

**Grain general Attributes**

- @ispbd int – Particle to behave as grains.
- @pscale float – Radius of each particle.
- @repulsionweight float – particle collision forces are weighted.
- @repulsionstiffness float – Particles are kept apart.
- @attractionweight float – Particles will naturally stick together when close.
- @attractionstiffness float – Nearby particles stick to each other.
- @targetP vector – Particles are constrained to this location.
- @targetweight float – Weight of the @targetP constraints.
- @targetstiffness float – Stiffness of particles fixed to @targetP attribute.

**Grain constraint attributes**

- @restlength float – Particles connected by polylines will be forced to maintain this distance.
- @constraintweight float – Scale, on a per-particle basis of the constraint force.
- @constraintstiffness float – Stiffness on a per-particle basis.
- @strain float – Primitive attribute records the amount of constraint stretched.
- @strength float -Strain exceeds this primitive attribute, the constraint will be removed.
- Β

**Houdini attributes list of DOP Flip Network**

**FLIP POP attributes**

- @pscale float – Particle scale
- @v vector – Particle velocity
- @viscosity float – The “thickness” of a fluid.
- @density float – The mass per unit volume.
- @temperatur float – The temperature of the fluid.
- @vorticity float – Measures the amount of circulation in the fluid.
- @divergence float – Positive values cause particles to spread out, negative cause them to clump together.
- @rest vector – Used to track the position of the fluid over time.
- @rest2 vector – Used for blending dual rest attributes, avoids stretching.
- @droplet float – Identifies particles that separate from the main body of fluid.
- @underresolved float – Particles that haven’t fully resolved on the grid.
- @ballistic int – Specifies particles which will be ignored by the fluid solve.
- @Lx vector – Angular momentum X axis
- @Ly vector – Angular momentum Y axis
- @Lz vector – Angular momentum Z axis

**Volume bind attributes**

- @P vector – Position of the current voxel.
- @density float – Density field at the current voxel location.
- @center vector – Center of the current volume.
- @dPdx, @dPdy, @dPdz vector -vectors store the change in P that occurs in the x, y, and z voxel indices.
- @ix, @iy, @iz int – Voxel indices. For dense volumes (non-VDB) these range from 0 to resolution-1.
- @resx, @resy, @resz int – Resolution of the current volume.
- @width float – Width of each edge.
- @density float- Density of each point.
- @orient quaternion – Initial orientation of each point. This value is stored as a quaternion.
- @v vector – Initial velocity of each point.
- @w vecto -r Initial angular velocity of each point measured in radians per second.
- @friction float Friction of each point.
- @klinear float – How strongly the wire resists stretching.
- @damplinear float – How strongly the wire resists oscillation due to stretching forces.
- @kangular float – How strongly the wire resists bending.
- @dampangular float – How strongly the wire resists oscillation due to bending forces.
- @targetstiffness float – How strongly the wire resists deforming from the animated position.
- @targetdamping float – How strongly the wire resists oscillation due to stretch forces.
- @normaldrag float – Component of drag in the directions normal to the wire.
- @tangentdrag float – Component of drag in the direction tangent to the wire.
- i@nocollide float – Collision detection for the edge is disabled (Only used if Collision Handling is SDF).
- @restP vector – Rest position of each point.
- @restorient quaternion – Rest orientation of each point.
- @gluetoanimation int – Causes a pointβs position and orientation to be constrained to the input geometry.
- @pintoanimation int – Causes a pointβs position to be constrained to the input geometry.
- @animationP vector – Target position of each point.
- @animationorient quaternion – Target orientation of each point.
- @animationv vector – Target velocity of each point.
- @animationw vector – Target angular velocity of each point.
- @independentcollisionallowed int – Toggle external collisions (Only non-SDF Geometric Collision).
- @independentcollisionresolved int – Unresolved external collisions (Only non-SDF Geometric Collision).
- @codependentcollisionallowed int – Toggle soft body collisions (Only non-SDF Geometric Collision).
- @codependentcollisionresolved int – Unresolved toggle soft body collisions (Only non-SDF Geometric Collision).
- @selfcollisionallowed int – Toggle self collisions (Only non-SDF Geometric Collision).
- @selfcollisionresolved int – Unresolved toggle self collisions (Only non-SDF Geometric Collision).

**Houdini attributes list of DOP Finite element FEM Network**

**Finite element points attributes**

- @stiffness float – Multiplier for all types of stiffness.
- @dampingratio float – Multiplier for all damping ratios.
- @massdensity float – Multiplier for all mass densities.

**Finite element behaviour attributes**

- @solidstiffness float -Multiplier for both the shape stiffness and the volume stiffness of a Solid Object.
- @solidshapestiffness float -Multiplier for the shape stiffness of a Solid Object.
- @solidvolumestiffness float -Multiplier for the volume stiffness of a Solid Object.
- @solidmassdensity float – Multiplier for the mass density of a Solid Object.

**Finite element collision attributes**

- @exteriorcollisionid – Int Collision identifier for the exterior side of a polygon or tet surface
- @interiorcollisionid int – Collision identifier for the interior side of a polygon or tet surface

**Finite element Repulsion and Friction attributes**

- @repulsion float – Multiplier for the Repulsion of an FEM Object
- @friction float – Multiplier for the Friction of an FEM Object

**Finite element Material Space Attributes**

- @material vector – Material position of each point, defining the material space
- @material vector – The U direction within the material space
- @material Vector – The V direction within the material space
- @material vector – The W direction within the material space
- @materialuvw vector – Local material uvw coordinates for each point or vertex of a tet.
- @materialuv vector – Local material uvw coordinates for each point or vertex of a polygon or polysoup.

**Finite element Material Property Multiplier Attributes**

- @fracturepart int – Partitions the object into unbreakable parts. Must be either -1 (no part) or a nonnegative number that indicates a part.
- @enablefracturing int – Locally enable/disable fracturing for points or vertices.
- @fracturethreshold float – Multiplier for the objectβs Fracture Threshold.

**Finite element Fracturing Control Attributes**

- @Fracturepart int – Partitions the object into unbreakable parts. Must be either -1 (no part) or a nonnegative number that indicates a part.
- @eablefracturing int – Locally enable/disable fracturing for points or vertices.
- @eracturethreshold float – Multiplier for the objectβs Fracture Threshold.

**Finite element Drag Force Control Attributes**

- @normaldrag float -Multiplier for the objectβs Normal Drag.
- @tangentdrag float – Multiplier for the objectβs Tangent Drag.

**Finite element Reference and Target Attributes**

- @initialpid int – initial point index for each point.
- @targetP vector – Target position of each point.
- @targetstrength float – Multiplier for the objectβs Target Strength. If this attribute is missing, a multiplier of 1 is used at all points.
- @targetdamping float – Multiplier for the objectβs Target Damping. If this attribute is missing, a multiplier of 1 is used at all points.
- @pintoanimation Int – When 1, the point is hard constrained to the target animation (e.g., targetP). When zero, the point is unconstrained.

**Finite element Fiber and state Attributes**

- @fiberstiffness float -Multiplier for stiffness along the fiber direction, the W direction implied by materialuvw.
- @fiberscale float -Multiplier for the rest strain along the fiber direction, the W direction implied by materialuvw.
- @P vector – Do not modify! Current position of each object point.
- @v vector – Do not modify! Current velocity of each object point.
- @accel vector – Do not modify! Current acceleration of each object point.
- @jerk vector – Do not modify! Current jerk of each object point.

**Finite element Embedded Geometry Attributes**

- @parent float – The index of a parent primitive in the simulated geometry.
- @baseP float -Base positions used for alignment with simulated mesh.
- @fracturepart float – Optional user-specified fracture part ID.
- @P float – Positions that correspond to the deformed state.
- @v float – Velocities that correspond to the deformed state.
- @N float – Normals that correspond to the deformed state.

**Finite element Optional Output Attributes**

- @quality float – A quality metric between 0 (worst) and 1 (best)
- @potentialdensity float -The local density of deformation energy
- @dissipationdensity float -The local density of the rate of energy loss
- @kineticdensity float -The local density of the kinetic energy
- @fracturecount int – The number of times a point was fractured during the simulation

**Finite element Legacy Attributes**

- @fexternal vector – External force density
- @force vector – Another name for external force density
- l

**Houdini attributes list of Bullet RBD packed system**

**RBD Packed point attribute**

- @active int – Object is able to react to other objects.
- @animated int – Transform should be updated from its SOP geometry at each timestep.
- @deforming int – Collision shape to rebuilt from its SOP geometry each timestep.

**RBD Packed point stored attribute**

- @bounce float-The elasticity of the object.
- @bullet_add_impact int – Impacts will be recorded in the Impacts or Feedback data.
- @bullet_ignore int – Object should will be ignored by the Bullet solver.
- @bullet_angular_sleep_threshold float – Sleeping threshold for the objectβs angular velocity.
- @bullet_linear_sleep_threshold float – Sleeping threshold for the objectβs linear velocity.
- @bullet_want_deactivate int – Disables simulation of a non-moving object .
- @computecom int – Center of mass computed from the collision shape.
- @computemass int – Mass computed from the collision shape and density.
- @creationtime float – Stores the simulation time at object was created.
- @dead int – Object should be deleted during the next solve.
- @density float – Mass of an object in its volume.
- @friction float – Coefficient of friction of the object.
- @inertialtensorstiffness float – Rotational stiffness.
- @inheritvelocity int – v and w point attributes from the SOP geometry velocity.
- @mass float – Mass of the object.
- @name string -Unique name for the object. Used by Constraint Networks.
- @orient quaternion – Orientation of the object.
- @pivot vector – Pivot that the orientation applies to
- @v vector – Linear velocity of the object.
- @w vector – Angular velocity of the object.

**RBD packed Collision Shape Attributes**

- @bullet_adjust_geometry int – Shrinks the collision geometry.
- @bullet_autofit int – Bounds of the object for Box, Capsule, Cylinder, Sphere, or Plane.
- @bullet_collision_margin float – Padding distance between collision shapes.
- @bullet_georep string – Can be convexhull, concave, box, capsule, cylinder, compound, sphere, or plane.
- @bullet_groupconnected int – Create convex hull per set of connected primitives.
- @bullet_length float – Length of the Capsule or Cylinder collision shape in the Y direction.
- @bullet_primR vector – Orientation of the Box, Capsule, Cylinder, or Plane collision shape.
- @bullet_primS vector – Size of the Box collision shape.
- @bullet_primT vector – Position of the Box, Sphere, Capsule, Cylinder, or Plane collision shape.
- @bullet_radius float – Radius of the Sphere, Capsule, or Cylinder collision shape.
- @bullet_shrink_amount float – Amount of resizing done by Shrink Collision Geometry.

**RBD Packed Collision Attributes**

- @activationignore string – Won’t be activated by collisions with any objects .
- @collisiongroup string – Name of a collision group that this object belongs to.
- @collisionignore string – The object will not collide against any objects.
- @min_activation_impulse float – Minimum impulse switch from inactive to active.

**RBD packed Speed Limit Attributes**

- @speedmin float – Minimum speed in second a particle can move.
- @speedmax float – Maximum speed in second a particle can move.
- @spinmin float – Minimum speed in radians per second a particle can spin.
- @spinmax float – Maximum speed in radians per second a particle can spin.
- @accelmax float – Limits the change in the objectβs speed caused by enforcing constraints.
- @angaccelmax float – Limits the change in the objectβs angular speed caused by enforcing constraints.

**RBD packed force Attributes**

- @airresist float – Resistance to match the target velocity (v@targetv).
- @drag float – @airresist attributes effect the object.
- @dragexp float – Angular and linear drag.
- @force vector – Force that will be applied to the mass of the object.
- @spinresist float – Match the target angular velocity.
- @targetv vector – Target velocity for the object.
- @targetw vector – Target angular velocity for the object.
- @torque vector – Torque that will be applied to the object.

**RBD packed Reserved Solver Attributes**

- @bullet_autofit_valid int Computed collision shape attributes by solver.
- @bullet_sleeping int -Tracks the object sleep by the solver.
- @deactivation_time float – Amount of time the speed has been below the value
- @found_overlap int Solver to determine the overlap test.
- @id int – A unique identifier for the object.
- @nextid int – Id solver will assign to the next new object.

**Houdini attributes list of DOP Constraint Network **

**behaviour and type constraint attributes**

- @constraint_name strin g- Prim attribute specifying the Data Name of the constraint to create.
- @constraint_type string – Prim attribute specifying degrees of freedom (‘position’, ‘rotation’ or ‘all’).
- @next_constraint_name string – Prim attribute specifying the next constraint_name to use after broken.
- @next_constraint_type string – Prim attribute specifying the next constraint_type to use after broken.
- @propagate_iteration int – Detail attribute specifying number of impact propagations for glue constraints.
- @group_broken int – Any constraints that are in the broken primitive group will be ignored by solvers.

**Anchor constraint Attributes**

- @anchor_id int – Anchorβs position will be bound to point .
- @anchor_type int – Anchor type attached to a point, vertex or agent transform.
- @condir vector -The normal of a plane object can move on or rotate about.
- @condof int -Identifies the number of constrained degrees of freedom for an anchor.
- @name string – Object constraint is attached to.
- @P vector -Identifies the initial world space position of the anchor.
- @orient quaternion – Initial world space orientation of the anchor.
- @r vector – Initial world space orientation of the anchor as Euler angles.
- @v vector – Velocity of the world space position to which the constraint is attached.
- @w vector – Angular velocity of the world space position to which the constraint is attached.

**Constraint** **feedback Attributes**

- @stress float – The amount of stress applied by the constraint.
- @slidingrate float – The rate at which the target location should slide along the primitives
- @target_group string – Rate at which the target location should slide along the primitives specified by target_path within target_group
- @slidingattrib string – If there is a point attribute set to scale the rate, then its name is stored in slidingattrib.
- @attribpromote string -. The method for promoting attribute values to scale the rate is stored in attribpromote.
- @breakthreshold float – If breakthreshold is less than zero, no breaking will occur
- @breaktype string – Threshold for breaking the constraint, measured against the breaktype, which can be one of the following: stretchstress, bendstress, stretchdistance, stretchratio, bendangle.
- @plasticthreshold float – negative for a stretch constraint, it is treated as a ratio of the current restlength.
- @plasticrate float – threshold for applying plasticity to the constraint, which modifies the constraintβs restlength to match the current state, at a rate specified by plasticrate
- @plastichardening float – The. If plastichardening is > 1, the constraintβs stiffness will be scaled higher at the same rate; if < 1 it will be scaled lower.
- @plasticflow float – The amount of plastic flow that occurs for a constraint is stored in plasticflow.
- @matchanimation int- If set to 1 for pin constraints, the solver will lookup the constrained pointβs target_path and target_pt
- ——-
- @up vector – Up vector of the copy (+Y axis of the copy, if no @orient).
- @rot quaternion- Additional rotation (applied after the orientation attributes above).
- @trans vector – Translation of the copy, in addition to @P.
- @pivot vector – Local pivot point for the copy.
- @transform matrix – Transform matrix overriding everything except @P, @pivot, and trans.
- @force float Prim attribute to contain the force applied to satisfy the constraint.
- @distance float Prim attribute to contain the distance between it’s anchors.
- @torque float Prim attribute to contain the torque applied to satisfy the constraint.
- @angle float Prim attribute to contain the angle (in radians) between the anchors.
- @impact float Prim attribute to contain the accumulated impulses for the glue bond.
- @shop_materialpath string – The instanced object uses this materia

**Houdini attributes list of DOP vellum Network****Vellum Setup Attributes**- @materialuv vector – Set by the Planar Patch or Planar Patch from Curve SOPs. Used to determine warp/woof directions for anistropy.
- @bendname, @stretchname float – Scale by Attribute in Vellum Constraints defaults to these sorts to adjust the scale. Should be 0..1, note exponential map.

**Vellum Pop Attributes**- @dragnormal, @dragtangent float – How much to scale wind effects when the face of the cloth is heading straight into the wind versus sliding parallel to it
- Inertia float – The resistance of a particle to rotational hair constraints. If this is zero, the particle will not rotate.
- @weld, @branchweld,@ collisionweld int – A value of 1 or a reference to itself means not welded, but something might be welded to this point
- @friction, @dynamicfriction float – Scale the static friction (friction) and dynamic friction scale (dynamicfriction) settings by.
- @pressurescale float – How much to scale the effect of a Pressure constraint on a per-point basis, from 0 to 1.

**Vellum State Attributes**- @P, @pprevious, @plast, @v, @vprevious,@vlast vector – For 2nd order we need the previous frames position and velocity (pprevious, vprevious), and the frame before that, two frames ago (plast, vlast).
- @orient, @orientprevious, @orientlast, @w, @wprevious, @wlast vector – Hair requires point orientations and the corresponding angular velocity (w). Same previous/last.
- @stopped int – This is a standard POP attribute, but it is used and respected by Vellum. Auto-sleep and awaken will manipulate the stopped attribute.

- @pscale float – Radius at each point. Triangles are fattened at their corners by spheres of the corner pscales, tapered tubes on edges, and sloped planes in center.
- @layer int – Controls soft priority of collisions. Only greater/less matters, not magnitude of difference.
- @disableself, @disableexternal int – A value of 0 means this point will use self collisions or external collisions.
- @overlap_self, @overlap_external float – Stores how much of the original pscale is overlapped. So 0 means that the pscale is fully used.
- @collisionignore string – Stores a pattern for the objects and collision groups to not collide with. This means the default empty string will enable all collisions.
- @collisiongroup string -Gives the collision group that this point belongs to. If this matches a collision ignore label, it will not engage in collision detection.

**Vellum Targeting Attributes**- @target_path int, @target_pt string,@ pintoanimation string, @gluetoanimation string, – The target path and point number for any pins when the Target parameter is set in Vellum Source.
- @targetweight float – Affect the strength of the pinned points using a 0..1 weighting value.

**Vellum Breaking Attributes**- @breakthreshold, @breaktype float, string (Point) The threshold for breaking welds and branch welds, measured against the breaktype, which can be one of the following: stretchstress, bendstress, stretchdistance, stretchratio, or bendangle.
- @pressuregradient, @volumepts, @volume vector, int (Point) When a point is part of a Pressure constraint, these attributes hold values computed during constraint evaluation.

**Vellum Internal worker Attributes**- @dP, @dPw float (Point) Constraint displacements/weights. Likely of last iteration, so out of date.
- @patchname string (Point) Identifies each generated patch in a simulation so it can be updated/replaced.
- @L vector – The amount of work done by a constraint, possibly along different stiffness or compression stiffness axes.
- @pts int – Array of points affected by this constraint

**Vellum constraints Attributes**- @dampingratio float – 0..1 damping ratio.
- @restlength float – The initial “distance” of the constraint.,
- @restlengthorig float – Distance constraints use distance, bend constraints use angle in degrees, volume and pressure constraints use volume.
- @restvector vector – Orientation constraints need a rest orientation, so store a quaternion here. This vector is also used to store target positions for pin constraints.
- @rest vector – The original point position in rest space, used by shapematch constraints.
- @stiffness float – How strongly to enforce the constraint.
- @compressionstiffness float – How strongly to enforce the constraint when it is being compressed.
- @stiffnessdropoff @stiffnessscaled @stiffnessdropoffmin float – The distance from the rest state at which the stiffness of the constraint drops off to zero, or increases from zero to full stiffness, depending on the direction of the dropoff.
- @distance string – Type of the constraint.Constraints the points to be restlength apart. distance is used for intrinsic distance constraints, like the edges of triangles or hairs.
- @stitch string -Type of the constraint. stitch is an alias for distance. It acts the same, but semantically is used for non-topological elastics added to the sim
- @branchstitch string – Type of the constraint. branchstitch is used for the automatic branch welding.
- @ptprim string – Constraint between a point and a location on a primitive, usually created with the _Use Closest Location on Primitive option on the Vellum Constraints SOP
- @bend string – four-point constraint. The points represent the 4 points of two triangles that share an edge. The constraint is applied to maintain an angle along the shared edge.
- @angle string – A three-point constraint. Maintains the dihedral angle measured at the middle points. This is used by the String constraint types.
- @tetvolume string – A four-point constraint. Maintains the volume of the tetrahedron described by the four points.
- @pressure string – A many-point constraint. All the points represent a surface of a mesh. Volume is computed on the mesh and stored on the points, and then all the points are inflated or deflated to maintain that volume.
- @pin string – Pins a point to a certain world space location.
- @attach string – attach implies updating the target location from the target attributes per-substep. pin by contrast is updated according to the matchanimation attribute.
- @attachnormal string – An additional constraint created for Attach to Geometry constraints when __Tangent Stiffness_ is enabled. This constraint keeps the constrained point aligned with the target object normal, as specified in the restdir attribute.
- @pinorient string – Pins the orientation of the point to match the rest orientation.
- @bendtwist string – Two point constraint. Constrains the orientation of points on an edge to be consistent, thereby creating torsion effects along hairs.
- @stretchshear string – Two point constraint. Combination of both a distance constraint and a bend constraint for edges. This is used by hair.
- @tetfiber string – A tetrahedral constraint that allows compressing the tetrahedron along the local space direction specified in its points’ materialW attribute.
- @triarap string – An As-Rigid-As-Possible stretch constraint on triangles that minimizes deviation from the triangleβs rest shape, stored in restvector.
- @tetarap* string – An As-Rigid-As-Possible stretch constraint on tetrahedra that minimizes deviation from the tetrahedronβs rest shape, stored in restmatrix
- @shapematch string – A constraint that attempts to keep the original shape of the constrained points, as stored in the constraint geometryβs rest point attribute.

**Vellum state Attributes**

Any redistribution or reproduction of these contents in any form is strictly prohibited