unreal.PhysicsConstraintComponent
¶
- class unreal.PhysicsConstraintComponent(outer=None, name='None')¶
Bases:
unreal.SceneComponent
This is effectively a joint that allows you to connect 2 rigid bodies together. You can create different types of joints using the various parameters of this component.
C++ Source:
Module: Engine
File: PhysicsConstraintComponent.h
Editor Properties: (see get_editor_property/set_editor_property)
absolute_location
(bool): [Read-Write] If RelativeLocation should be considered relative to the world, rather than the parentabsolute_rotation
(bool): [Read-Write] If RelativeRotation should be considered relative to the world, rather than the parentabsolute_scale
(bool): [Read-Write] If RelativeScale3D should be considered relative to the world, rather than the parentasset_user_data
(Array(AssetUserData)): [Read-Write] Array of user data stored with the componentauto_activate
(bool): [Read-Write] Whether the component is activated at creation or must be explicitly activated.can_ever_affect_navigation
(bool): [Read-Write] Whether this component can potentially influence navigationcomponent_name1
(ConstrainComponentPropName): [Read-Write] Name of first component property to constrain. If Actor1 is NULL, will look within Owner. If this is NULL, will use RootComponent of Actor1component_name2
(ConstrainComponentPropName): [Read-Write] Name of second component property to constrain. If Actor2 is NULL, will look within Owner. If this is NULL, will use RootComponent of Actor2component_tags
(Array(Name)): [Read-Write] Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.constraint_actor1
(Actor): [Read-Write] Pointer to first Actor to constrain.constraint_actor2
(Actor): [Read-Write] Pointer to second Actor to constrain.constraint_instance
(ConstraintInstance): [Read-Write] All constraint settingsdetail_mode
(DetailMode): [Read-Write] If detail mode is >= system detail mode, primitive won’t be rendered.editable_when_inherited
(bool): [Read-Write] True if this component can be modified when it was inherited from a parent actor classhidden_in_game
(bool): [Read-Write] Whether to hide the primitive in game, if the primitive is Visible.is_editor_only
(bool): [Read-Write] If true, the component will be excluded from non-editor buildsmobility
(ComponentMobility): [Read-Write] How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.on_component_activated
(ActorComponentActivatedSignature): [Read-Write] Called when the component has been activated, with parameter indicating if it was from a reseton_component_deactivated
(ActorComponentDeactivateSignature): [Read-Write] Called when the component has been deactivatedon_constraint_broken
(ConstraintBrokenSignature): [Read-Write] Notification when constraint is broken.physics_volume_changed_delegate
(PhysicsVolumeChanged): [Read-Write] Delegate that will be called when PhysicsVolume has been changed *primary_component_tick
(ActorComponentTickFunction): [Read-Write] Main tick function for the Componentrelative_location
(Vector): [Read-Write] Location of the component relative to its parentrelative_rotation
(Rotator): [Read-Write] Rotation of the component relative to its parentrelative_scale3d
(Vector): [Read-Write] Non-uniform scaling of the component relative to its parent. Note that scaling is always applied in local space (no shearing etc)replicates
(bool): [Read-Write] Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!should_update_physics_volume
(bool): [Read-Write] Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. see: GetPhysicsVolume()use_attach_parent_bound
(bool): [Read-Write] If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together.visible
(bool): [Read-Write] Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.
- get_constraint_force() -> (out_linear_force=Vector, out_angular_force=Vector)¶
Retrieve the constraint force most recently applied to maintain this constraint. Returns 0 forces if the constraint is not initialized or broken.
- Returns
out_linear_force (Vector):
out_angular_force (Vector):
- Return type
tuple
- property on_constraint_broken¶
[Read-Write] Notification when constraint is broken.
- Type
- set_angular_breakable(angular_breakable, angular_break_threshold) → None¶
Sets the Angular Breakable properties
- set_angular_drive_mode(drive_mode) → None¶
Switches the angular drive mode between SLERP and Twist And Swing
- Parameters
drive_mode (AngularDriveMode) – The angular drive mode to use. SLERP uses shortest spherical path, but will not work if any angular constraints are locked. Twist and Swing decomposes the path into the different angular degrees of freedom but may experience gimbal lock
- set_angular_drive_params(position_strength, velocity_strength, force_limit) → None¶
Sets the drive params for the angular drive.
- set_angular_orientation_drive(enable_swing_drive, enable_twist_drive) → None¶
Enables/Disables angular orientation drive. Only relevant if the AngularDriveMode is set to Twist and Swing deprecated: Use SetOrientationDriveTwistAndSwing instead.
- Parameters
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
- set_angular_orientation_target(pos_target) → None¶
Sets the target orientation for the angular drive.
- Parameters
pos_target (Rotator) – Target orientation
- set_angular_plasticity(angular_plasticity, angular_plasticity_threshold) → None¶
Sets the Angular Plasticity properties
- set_angular_swing1_limit(motion_type, swing1_limit_angle) → None¶
Sets the Angular Swing1 Motion Type
- Parameters
motion_type (AngularConstraintMotion) –
swing1_limit_angle (float) – Size of limit in degrees
- set_angular_swing2_limit(motion_type, swing2_limit_angle) → None¶
Sets the Angular Swing2 Motion Type
- Parameters
motion_type (AngularConstraintMotion) –
swing2_limit_angle (float) – Size of limit in degrees
- set_angular_twist_limit(constraint_type, twist_limit_angle) → None¶
Sets the Angular Twist Motion Type
- Parameters
constraint_type (AngularConstraintMotion) – New Constraint Type
twist_limit_angle (float) – Size of limit in degrees
- set_angular_velocity_drive(enable_swing_drive, enable_twist_drive) → None¶
Set Angular Velocity Drive deprecated: Use SetAngularVelocityDriveTwistAndSwing instead.
- set_angular_velocity_drive_slerp(enable_slerp) → None¶
Enables/Disables the angular velocity slerp drive. Only relevant if the AngularDriveMode is set to SLERP
- Parameters
enable_slerp (bool) – Indicates whether the SLERP drive should be enabled. Only relevant if the AngularDriveMode is set to SLERP
- set_angular_velocity_drive_twist_and_swing(enable_twist_drive, enable_swing_drive) → None¶
Enables/Disables angular velocity twist and swing drive. Only relevant if the AngularDriveMode is set to Twist and Swing
- Parameters
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
- set_angular_velocity_target(vel_target) → None¶
Sets the target velocity for the angular drive.
- Parameters
vel_target (Vector) – Target velocity
- set_constrained_components(component1, bone_name1, component2, bone_name2) → None¶
Directly specify component to connect. Will update frames based on current position.
- Parameters
component1 (PrimitiveComponent) –
bone_name1 (Name) –
component2 (PrimitiveComponent) –
bone_name2 (Name) –
- set_constraint_reference_frame(frame, ref_frame) → None¶
Pass in reference frame in. If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
ref_frame (Transform) –
- set_constraint_reference_orientation(frame, pri_axis, sec_axis) → None¶
Pass in reference orientation in (maintains reference position). If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
pri_axis (Vector) –
sec_axis (Vector) –
- set_constraint_reference_position(frame, ref_position) → None¶
Pass in reference position in (maintains reference orientation). If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
ref_position (Vector) –
- set_disable_collision(disable_collision) → None¶
If true, the collision between the two rigid bodies of the constraint will be disabled.
- Parameters
disable_collision (bool) –
- set_linear_breakable(linear_breakable, linear_break_threshold) → None¶
Sets the Linear Breakable properties
- set_linear_drive_params(position_strength, velocity_strength, force_limit) → None¶
Sets the drive params for the linear drive.
- set_linear_plasticity(linear_plasticity, linear_plasticity_threshold) → None¶
Sets the Linear Plasticity properties
- set_linear_position_drive(enable_drive_x, enable_drive_y, enable_drive_z) → None¶
Enables/Disables linear position drive
- set_linear_position_target(pos_target) → None¶
Sets the target position for the linear drive.
- Parameters
pos_target (Vector) – Target position
- set_linear_velocity_drive(enable_drive_x, enable_drive_y, enable_drive_z) → None¶
Enables/Disables linear position drive
- set_linear_velocity_target(vel_target) → None¶
Sets the target velocity for the linear drive.
- Parameters
vel_target (Vector) – Target velocity
- set_linear_x_limit(constraint_type, limit_size) → None¶
Sets the LinearX Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_linear_y_limit(constraint_type, limit_size) → None¶
Sets the LinearY Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_linear_z_limit(constraint_type, limit_size) → None¶
Sets the LinearZ Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_orientation_drive_slerp(enable_slerp) → None¶
Enables/Disables the angular orientation slerp drive. Only relevant if the AngularDriveMode is set to SLERP
- Parameters
enable_slerp (bool) – Indicates whether the SLERP drive should be enabled. Only relevant if the AngularDriveMode is set to SLERP
- set_orientation_drive_twist_and_swing(enable_twist_drive, enable_swing_drive) → None¶
Enables/Disables angular orientation drive. Only relevant if the AngularDriveMode is set to Twist and Swing
- Parameters
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing