# Bullet Constraint Properties

These attributes determine how the constraint is applied. For example, you can specify how freely the rigid bodies swing or slide by setting Linear Damping or Angular Damping. Linear attributes control the distance between the constraint point and the rigid bodies. Angular attributes control the rotation of the rigid bodies around the constraint point.

Linear Damping
is a value between 0.0 and 1.0 with a default of 0.1. A value of 1.0 fully dampens the forces applied to the translation.
Linear Softness
is a value between 0.0 and 1.0 with a default of 0.01 .
Linear Restitution
is a value between 0.0 and 1.0 with a default of 0.99.
Angular Damping
is a value between 0.0 and 1.0 with a default of 0.01. A value of 1.0 fully dampens the forces applied to the rotation.
Angular Softness
is a value between 0.0 and 1.0 with a default of 0.0.
Angular Restitution
is a value between 0.0 and 1.0 with a default of 0.99.

## Limits

Using these attributes, you can set limits on the constraint's range of motion. The various constraint types support different combinations of limits. In general, linear constraints control the distance of the rigid bodies from the constraint point affecting sliding motions. Angular constraints control the freedom for rigid bodies to rotate around the constraint point affecting twisting and swinging motions.

Linear Constraint
defines whether a linear translation can be locked, free, or limited.
Linear Constraint Min
defines the minimum X, Y, and Z translations.
Linear Constraint Max
defines the maximum X, Y, and Z translations.
Angular Constraint
defines whether the axis rotation can be locked, free, or limited.
Angular Constraint Min
defines the minimum angle, for the X, Y, and Z angles, in degrees (-360 and 360).
Angular Constraint Max
defines the maximum angle, for the X, Y, and Z angles, in degrees (-360 and 360).

## Limit Properties

These attributes determine how the rigid bodies move when they reach a limit, such as whether they stop abruptly or gently at that limit.

Linear Limit Bias
is a value between 0.0 and 1.0 with a default of 0.3.
Linear Limit Softness
is a value between 0.0 and 1.0 with a default of 1.0.
Linear Limit Relaxation
is a value between 0.0 and 1.0 with a default of 1.0.
Angular Limit Softness
specifies the percentage of limit where the movement is free. Beyond this softness percentage, the limit is gradually enforced until the "hard" (1.0) limit is reached. The value is between 0.0 and 1.0 with a default of 1.0. The recommended value is 0.8.
Angular Limit Bias
specifies the strength with which the constraint resists angular limit violation. The value is between 0.0 and 1.0 with a default of 0.3.
Angular Limit Relaxation
specifies how much a constraint resists velocities which violate the angular limits. The lower the value, the less the constraint resists the violation. The value is between 0.0 and 1.0 with a default of 1.0. The recommended value is near 1.0.

## Motors

These attributes let you setup motors which can actively drive the constraint. Typically, rigid bodies attached to a constraint move freely until they come to rest. With motors, the constraints actively move the rigid bodies. The hinge and Six Degrees-Of-Freedom (SixDOF) constraints support angular motors, which rotate the rigid body around the constraint. The slider constraint supports linear motors, which push or pull the rigid body.

Angular Motor Enabled
turns the motor on the X, Y, and Z axis on and off.
Angular Motor Target Speed
specifies the target velocity for the motor's X, Y, and Z axis.
Angular Motor Max Force
specifies the maximum motor impulse, for each X, Y, and Z axis, that can be applied at a single simulation step. It has a value greater than or equal to 0.0.

## Springs

These attributes set the stiffness and dampening effect of the spring on the translation and rotation of the constrained body. Normally, rigid bodies attached to a constraint move freely until they come to rest. The spring hinge and spring Six-DOF constraints support linear and angular springs.

See Create a Bullet Rigid Body Constraint for information on how to make a Rigid Body constraint.