Skip to content

xpBulletConstraints

xpBulletConstraints links dynamic xpBullet objects together using different constraint types, such as hinges, springs and sliders.


UI 01.png

xpBulletConstraints menu settings.

Drag the dynamic objects, that you want to constrain, into this list.

Doing so will open up parameter settings, below, which can be set separately for each individual object in the list.

In this animation, a Cylinder and a Cube (as the child) are dropped into the Objects field and the Constraint Type of Slider is selected. An Angular Min of -140 degrees and an Angular Max of 140 degrees are set, setting up a pendulum, with the Cube swinging from the Cylinder between those two degree values.


Set as Fixed, by default, these are the different constraint type options.

The alternative modes are: 6 Degrees of Freedom, Cone, Hinge, Point to Point, Slider, Spring and Sticky.

Some modes have additional parameter settings (described below).

This Constraint Type lets you define Linear Limits and Angular Limits to the constraint, in six degrees: the three axes (X, Y and Z) as well as the heading, pitch and bank.

Each axis can be fixed (default setting), free or customized.

Constraint Type set to 6 Degrees of Freedom, with a Custom Limit on the (bank) B Limit and angular limits set. The cube is free to rotate on the bank until it reaches the 25 degrees upper and lower limit set.

6DOF_01.png

User Interface (UI) detailing the settings for the animation on the left.

This second scene has the same settings as the above except there are now linear limits set, with a Custom Limit on the (X-axis) X limit, of between -40 and 40cm.

6DOF_02.png

UI detailing the settings for the animation on the left.

Like the Point to Point type, below, this constraint works around a pivot point, but this constraint, allows swing and twist options, between defined points.

This setting is particularly effective with creation of the dynamic between limbs.

The Constraint Type is now set to Cone, with the settings on the right directing the swing and twist movements.

Cone_01.png

UI detailing the settings for the animation on the left.

The constraint will remain at a fixed distance between the objects in the Objects list.

In this animation, the Constraint Type is set to Fixed, with the Cube fixed on the end of the Cylinder.

Fixed_01.png

UI detailing the settings for the animation on the left.

This setting restricts the translation and two additional angles so that the objects can only rotate around one axis (the Z axis of the constraint), creating a hinge-like constraint between the objects in the Objects list.

Animation to demonstrate the Constraint Type of Hinge, with a High value of 90 degrees setting the maximum angle of the hinge.

Hinge_01.png

UI detailing the settings for the animation on the left.

This setting constrain the objects in the Objects list based on their central points, pivoting at this point.

This is a useful setting in the creation of chain link effects.

In this scene the Constraint Type is Point to Point, pivoting from the central points of the two objects.

Point to Point_01.png

UI detailing the settings for the animation on the left.

This animation also has the Constraint Type set as Point to Point, but the object is now an xpShatter generator, with the central points of each shattered piece connected between the Min Distance and Max Distance limits.

Point to Point_02.png

UI detailing the settings for the animation on the left.

Creates a constraint with a sliding axis (on the Z axis) between the objects in the Objects list, which can also be rotated around.

The Constraint Type is set to Slider here, with a Linear Max value of 25cm restricting the sliding.

Slider_01.png

UI detailing the settings for the animation on the left.

This constraint has three degrees of freedom, around the X, Y and Z axes and acts like the suspension on a wheel of a vehicle.

Constraint Type set to Spring, with the UI on the right detailing the settings, with a Type of Linear set.

Spring_01.png

UI detailing the settings for the animation on the left.

By comparison to the scene above, this time the Type is set to Linear + Angular, allowing a degree of rotation.

Spring_02.png

UI detailing the settings for the animation on the left.

This constraint sticks objects to each other.

Sticky_01.png

UI detailing the settings for the animation on the left.

With the Constraint Type set to Sticky, the particles stick to the Support object, when they land on it.

Set as Parent, by default, this sets the relationship of the object that is highlighted, in the Objects list, to any other objects present/it is connected to.

The other options are: Children and Self.

The object that the highlighted object is connected to is the parent, in the relationship.

Therefore the highlighted object is the child.

With this setting, the highlighted object is assuming a parental role and any other connected objects are children of it.

The highlighted object is only setting a constraint upon itself.

An example of this setting can be seen in the animation above, with the Constraint Type set to Point to Point and the xpShatter generator having constraints on the parts of itself.

Set as Always, by default, this defines when the constraint is taking place.

The alternative settings are: Start, Time and Collision.

Viable connections are searched for throughout the scene.

Viable connections are only searched for at the start of the animation.

Allows you to start any constraints at a time in the scene, defined by the Time parameter.

Constraints will begin on collision, as long as the Collision setting is enabled.

The time value to use (in frames), when Create is set to Time.

When enabled, constraints will be activated by a collision between objects in the Objects list.

Only available in the Constraint Types of Hinge, Point to Point and Spring.

Offset your constraints from the object in the Object field.

Clicking on the small arrow, will reveal the Object parameter, which allows you to select the object to offset from and then drag and drop it into this field.


Set as Any, by default, this uses the distance between dynamic objects to determine if constraints are made.

The other options are: Less Than Max, Greater Than Min and Between Min and Max.

Sets constraints between objects at any distance.

Only sets constraints between objects closer than the Max Distance value.

Only sets constraints between objects further away than the Min Distance value.

Only sets constraints between objects within the Min Distance and Max Distance values.

The value to use when Distance Mode is set to Less Than Max or Between Min and Max.

The value to use when Distance Mode is set to Greater Than Min or Between Min and Max.

Set as Any, by default, the size an object has to be in order for the connections to be made.

For example, if set to Greater Than Min, with a value of 50cm and the Cube child object is at 45cm, a connection will not be made.

The alternative settings are: Less Than Max, Greater Than Min and Between Min and Max.

Sets constraints between all points.

Only sets constraints between objects smaller than the Max Size value.

Only sets constraints between objects larger than the Min Size value.

Only sets constraints between objects within the Min Size and Max Size values.

The value to use when Size Mode is set to Less Than Max or Between Min and Max.

The value to use when Size Mode is set to Greater Than Min or Between Min and Max.


Enable to break constraints on impulse.

Sets the threshold of the impulse at which breaking takes place, controlling the impact of the breaking.

There are two modes available: Relative and Absolute.

Relative is when the Variation amount is added or subtracted from the Break Threshold, relative to the Break Threshold value.

If the Break Threshold is 100, and Variation, in Relative mode is 5%, the varied Breaking on Impulse occurs with thresholds anywhere between 95 and 105.

Absolute is when the Variation amount adds or subtracts a defined amount to the initial Break Threshold.

The amount is user-defined in the Variation parameter.

Gives a degree of variation to the breaking, based on the Mode value set.

Enable to set a time, in frames, when the breaking will occur.

The time value to use, when Break at Time is enabled.


These settings are only available in the 6 Degrees of Freedom mode.

Untitled

Additional settings in the Constraint Type of 6 Degrees of Freedom.

Set as Fixed Axis, by default, this defines how the linear translation is set.

The alternative settings are: Free Axis and Custom Limit.

The translation is locked.

Scene objects in the Objects list are now free to travel on the axis defined.

Allows you to define per axis distance limits on translations.

X Lower, X Upper, Y Lower, Y Upper, Z Lower, Z Upper

Section titled “X Lower, X Upper, Y Lower, Y Upper, Z Lower, Z Upper”

Only available when the Limit setting (X, Y and/or Z) is set to Custom Limit.

Allows you to define the minimum and maximum translations.

Only available when the Limit setting (X, Y and/or Z) is set to Free Axis, giving a spring effect, between the limits set.

By enabling this, the Stiffness and Damping parameters become available, to give control over the free constraints.

Sets the stiffness of the spring translation between the limits set.

Dampens the forces applied to the translation.

These settings are identical to the Linear Limits settings, except on the heading (H), pitch (P) and bank (B), instead of the X, Y and Z axes.

These parameters define how the angular translation is set.


Allows you to set a maximum angular degree of swing on the Y axis.

Allows the setting of an angular degree of swing on the Z axis.

The object will twist up to the degree value set.

Defines how easy it is for the constraint to move throughout its angle limits.

At 0 (zero) %, no angle change will occur.

Gives a control to whether objects stay towards the center or the perimeter of the cone.

At lower percentages, objects will be close to the perimeter and, at higher percentages, they will be close to the center of the cone.

Controls the degree of inertia at the beginning of animation, when any swinging begins.

The higher the setting, the smoother the transition.


Sets the minimum angle of the hinge constraint.

Sets the maximum angle of the hinge constraint.

Gives a degree of smooth movement throughout the simulation.

Gives a control to where on the hinge the object is constrained.

Controls the degree of inertia at the beginning of animation, when any swinging begins.

The higher the setting, the smoother the transition.

Enabling this will drive the constraint around the angle of the hinge at a speed set in the Speed parameter.

Once it reaches the High angle value set, it will remain there, as the motor is still working.

The speed that the motor is driving the constraint to the High degree value set.

The strength of the motor.


Sets the length that the objects are able to slide on the axis set.

Sets the maximum and minimum angles that objects are permitted to rotate.


Set as Linear, by default,

The alternative settings are: Angular and Linear + Angular.

With this setting, there will only be linear (up and down) movements in the spring.

This setting gives a rotational movement in the spring.

Allows up and down and rotational movement in the spring.

Sets the stiffness of the spring.

Dampens the forces of the spring.


Enabled, by default, this adds a control over the immediate strength of stickiness.

Disabling this parameter will give a degree of freedom at the point of impact.

The value set here will decide whether an object will stick or not to the object it is hitting, dependent on distance.

The value set here will decide if an object will stick or not to the object it is hitting, dependant on the angle of collision.

Sets the stiffness of the stickiness.

Dampens the forces of the stickiness.


Untitled

xpBulletConstraints Display tab menu settings.

These settings help you customize how the constraints are being visualized in your viewport.

Set as Object Active, by default, this sets whether and when the constraints are visible.

The other options are: Disabled and Always.

Constraints will not be visible in this mode.

Object Active displays any active constraint connections generated by the xpBullet constraints.

Constraints are then visible when the xpBulletConstraints dynamic object is selected and highlighted in the Attributes Manager.

Constraints will always be visible in this mode.

Enables the Active Constraints (enabled by default).

The color of the active constraint line.

Disabled by default, check this box to make inactive constraints visible.

The color of the inactive constraints (if enabled).

Activates the handles at either end of the constraint lines.

Sets the color of the handles.


You can increase (or decrease) the line size, with this setting.

This parameter relates to the Constraint Type mode of 6 Degrees of Freedom.

The overlapping area between the three axes and the heading, pitch and bank can be increased or decreased, giving a visualization of the limits that are set .

Increase or decrease the size of the Cone’s radius display.

Increase or decrease the radius of the hinges.

Increase of decrease the radius of the sliders.

Increase or decrease the radius of the springs.


Copyright © 2026 INSYDIUM LTD. All rights reserved.