Overview
Physics Constraint Components operate just like Physics Constraints Actors, except they are used in Blueprints or can be created in C++. Given the flexibility of Blueprints and the power of C++, you can constrain just about any Physics Body in your project using Physics Constraint Components.
This document will cover Physics Constraint Component basic creation in a Blueprint.
This document assumes that the user has some knowledge of Blueprints and the Blueprint Editor. See: %ProgrammingAndScripting/Blueprints:title% for more information.
Usage
-
Create the Components that will be used to constrain. For this demonstration, two StaticMesh Components referencing the StaticMesh
Shape_Cube
will be used.You will need to position your Components that you want constrained. For this guide, these two cubes are used.
-
Enable Simulate Physics for the lower of the two StaticMesh Components.
-
Add Component => Physics Constraint.
-
Position the Physics Constraint Component where you wish the joint of the constraint to be.
-
You must manually type in the names of the StaticMesh Components you wish to constrain in the Details panel of the Physics Constraint Component. Type in the component name you wish to constrain in the Component Name 1 => Component Name property.
-
Type in the component name you wish to constrain in the Component Name 2 => Component Name property.
- Set the Angular Limit Properties:
- Set Swing 1 Motion and Swing 2 Motion to Limited.
- Set Swing 1Limit Angle and Swing 2Limit Angle to 45 degrees.
- Expand the Advanced properties using the down-arrow icon, then under Swing Limts, disable Soft Constraint.
Want to know what all the properties on a Physics Constraint Component affect? See the %InteractiveExperiences/Physics\Constraints\ConstraintsReference:title% for specific details.
-
Rotate the Physics Constraint Component as necessary to account for Linear and Angular Limits.
-
Place the Blueprint Actor in a level and position it where you need it.
-
Test by using Simulate in Editor or Play in Editor.