This article's documentation is for anything that uses the Source engine. Click here for more information.

phys_spring

From Valve Developer Community
Jump to navigation Jump to search
Class hierarchy
CPhysicsSpring
CBaseEntity
physobj.cpp

phys_spring is a point entity available in all Source Source games.

It is a physically simulated spring. length is what's known as the "natural spring length". This is how long the spring would be if it was at rest (nothing hanging on it or attached). When you attach something to the spring, it will stretch longer than its natural length. The amount of stretch is determined by the spring constant constant. The larger the spring constant the less stretch in the spring.

Tip.pngTip:To break the spring and disconnect elements it holds together, fire Kill input on the spring.

Keyvalues

Name (targetname) <string>
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Entity 1 (attach1) <targetname>
First entity to attach.
Entity 2 (attach2) <targetname>
Second entity to attach.
Spring Axis (springaxis) <vector>
Use the helper. Drag it out to match the virtual spring.
Spring Length (length) <string>
How long the spring would be if it was at rest (nothing hanging on it or attached). 0 means the length of the brush.
Spring Constant (constant) <string>
Stiffness of the spring. The larger the number the less the spring will stretch.
Damping Constant (damping) <string>
How much energy the spring loses. The larger the number, the less bouncy the spring.
Relative Damping Constant (relativedamping) <string>
The amount of energy the spring loses proportional to the relative velocity of the two objects the spring is attached to.
Break on Length (breaklength) <string>
If the spring's length ever exceeds this length, the spring breaks.

Flags

Force only on stretch : [1]

Inputs

SetSpringConstant <float>
Set the Spring Constant.
SetSpringLength <float>
Set the Spring Length.
SetSpringDamping <float>
Set the Spring Damping.