Kinematic mechanism

SkyReal can't import Kinematics from CATIA, however you can recreate your kinematics in Unreal Engine.

Here is an example of a robotic arm on which we will simulate kinematics.

kinematic arm

Add PhysicsConstraint component

Select the part on which you want to create the joint and click on Add Component in the Details tab. Then search PhysicsConstraint.

add joint

Now, be sure the PhysicsConstraint is selected and scroll to the Constraint tab.

select joint constraint

You must select the parts involved in the joint using the pipette.

Define the constraint

Still in the PhysicsConstraint:

First of all, you must check Disable Collision in the Constraint Behavior tab.

Then, you must define the degrees of freedom of your joint. The coordinate system associated to the joint is the local coordinate system of the part. You must define the Linear Limits and Angular Limits to set the degrees of freedom of the joint.

dof

You can choose between Free, Locked and Limited. Limited lets you choose a distance from the origin of the joint after which the part will be blocked. You can choose only one distance limit for all axis (on both directions).

For the rotation, here is a table that links the angular motion names to the axis.

Angular Motion Axis
Swing 1 Motion Z
Swing 2 Motion Y
Twist Motion X

Set actor properties

Now select the actor instance. We will set the Physics and Collision parameters.

select actor

Set physics settings

You must check Simulate Physics for every part concerned by kinematics.

physics settings

You can also set Constraints locks that come on the top of the kinematic simulation. It is useful to force the part to keep an orientation in order to get a smoother simulation. For instance, we authorize the arm to rotate only on Z axis to prevent from calculation mistakes.

Set collision settings

You must choose a collision preset which sets the Object type to Dynamic. It is mandatory to get the simulation running.

You have the choice between:

  • BlockAllDynamic: The part is selectable.
  • Custom -> Physics Only -> WorldDynamic: The part is not selectable. It is useful to avoid the user to move parts of the mechanism.
collision settings

Example