phys_hinge
phys_hinge
is a point entity available in all Source 2 games. A hinge constraint which restricts rotation of its attached entities to a given axis. The axis is a line between the hinge's origin and the location of its Hammer helper.
Note:Helper must be used to make hinge work or you will get an error. (ERROR: phys_hinge bad data)
The hinge can be given a friction component, which causes it to come to rest more quickly like an old rusty hinge might.
Contents
Keyvalues
- Name
(targetname)
<string> - The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
- Friction
(hingefriction)
<float> - Resistance/friction in the hinge. A value of 1 will hold the child object still under gravity.
- Min Rotation Limit
(min_rotation)
<float> - Minimum rotation limit around hinge axis between -180 and 0
- Max Rotation Limit
(max_rotation)
<float> - Maximum rotation limit around hinge axis between 0 and 180
- Initial rotation
(initial_rotation)
<float> - Initial rotation of the hinge (values -1 to 1 where -1 mean open at minimum limit and 1 means open at maximum limit)
- Hinge Axis
(hingeaxis)
<vector> - Define the axis of the hinge by dragging the entity helper in Hammer's 2D views.
- Motor frequency
(motorfrequency)
<float> - Range 0 - 30 (only used when driving the relative angle through the angle input)
- Motor damping ratio
(motordampingratio)
<float> - Range 0 - 1 (only used when driving the relative angle through the angle input)
- Load Scale
(SystemLoadScale)
<float> - Scale of the load connected to this hinge (1=just the objects directly connected.)
- Threshold for move events
(AngleSpeedThreshold)
<float> - Minimum Sound Velocity
(minSoundThreshold)
<float> - When travelling below this many units/sec, will not play any sound.
- Full Sound Velocity
(maxSoundThreshold)
<float> - When travelling at this speed or above, will play sound at full volume.
- Travel sound (forward)
(slidesoundfwd)
<sound> - Play this sound when travelling forward on helper axis
- Travel sound (backward)
(slidesoundback)
<sound> - Play this sound when travelling backward on helper axis
- Reversal sound threshold (small)
(reversalsoundthresholdSmall)
<float> - When accelerating by more than this many units/sec^2 opposite to direction of travel, play the small reversal sound.
- Reversal sound threshold (medium)
(reversalsoundthresholdMedium)
<float> - When accelerating by more than this many units/sec^2 opposite to direction of travel, play the medium reversal sound.
- Reversal sound threshold (large)
(reversalsoundthresholdLarge)
<float> - When accelerating by more than this many units/sec^2 opposite to direction of travel, play the large reversal sound.
- Reversal sound (small)
(reversalsoundSmall)
<sound> - Play this sound when making a hard reverse over the small threshold but less than medium
- Reversal sound (medium)
(reversalsoundMedium)
<sound> - Play this sound when making a hard reverse over the medium threshold but less than large
- Reversal sound (large)
(reversalsoundLarge)
<sound> - Play this sound when making a hard reverse over the large threshold
TwoObjectPhysics:
- Entity 1
(attach1)
<targetname> - Entity 2
(attach2)
<targetname> - The entities to constrain. Leave one or the other field blank to constrain to the world. Note:Only one entity will be constrained, even if several share the given targetname.
- Constraint System Manager
(constraintsystem)
<targetname> - A
phys_constraintsystem
that this constraint should be a part of. This avoids the "jiggling" caused by constraints applied to the same set of entities fighting with each other. - Force Limit to Break
(forcelimit)
<float> - Impact force required to break the constraint, in pounds. 0 means infinite. A way of calculating this is to set it to the weight of an object that would break the constraint if it were resting on its objects.
- Torque Limit to Break
(torquelimit)
<float> - Torque required to break the constraint, in pounds*inches. 0 means infinite. A way of calculating this is to multiply any reference mass by the resting distance (from the center of mass of the object) needed to break the constraint.
- Play Sound on Break
(breaksound)
<string> - A sound played when the constraint is broken.
- Follow teleport distance
(teleportfollowdistance)
<float> - If one constrained object teleports more than this many units away, the other will teleport with it.
- Name
(targetname)
<string> - The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
Flags
No Collision until break : [1]
Start inactive : [4]
Change mass to keep stable attachment to world : [8]
Do not connect entities until turned on : [16]
Inputs
SetAngularVelocity
<float>- Set angular velocity around the hinge (motor) in deg/sec
SetHingeFriction
<float>- Set Motor Friction, 0 = no friction, 1 = friction that is about enough to counter gravity
SetMinLimit
<float>- Set the minimum hinge angle (degrees)
SetMaxLimit
<float>- Set the maximum hinge angle (degrees)
SetMotorTargetVelocity
<float>- Set Motor target velocity in deg/sec, use 0 to just turn friction on
SetMotorTargetAngle
<float>- Set Motor target angle, degrees. Exact number depends on constrained bodies reference frames and initial configuration. See constraint limits for reference to sensible range of values.
TwoObjectPhysics:
Break
- Force the constraint to break.
TurnOn
- Enable the constraint; do this if the constrained objects don't exist when it spawns. Note that broken constraints cannot be turned back on as they have been deleted.
TurnOff
- Disable the constraint.
Outputs
NotifyMinLimitReached
- The min limit has been reached.
NotifyMaxLimitReached
- The max limit has been reached.
OnStartMoving
- Fires if the attached objects start rotating around the hinge axis relatively to each other.
OnStopMoving
- Fires if the attached objects stip rotating around the hinge axis relatively to each other.
TwoObjectPhysics:
OnBreak
- Fired when the constraint breaks.