unreal.PoseSearchFeatureChannel_Position

class unreal.PoseSearchFeatureChannel_Position(outer: Object | None = None, name: Name | str = 'None')

Bases: PoseSearchFeatureChannel

Position Channel

C++ Source:

  • Plugin: PoseSearch

  • Module: PoseSearch

  • File: PoseSearchFeatureChannel_Position.h

Editor Properties: (see get_editor_property/set_editor_property)

  • bone (BoneReference): [Read-Write]

  • component_stripping (ComponentStrippingVector): [Read-Write]

  • debug_color (LinearColor): [Read-Write]

  • default_with_root_bone (bool): [Read-Write] Experimental, this feature might be removed without warning, not for production use if bDefaultWithRootBone is true Bone.BoneName and OriginBone.BoneName get initialized to the associated skeleton root bone if equals to NAME_None, otherwise transforms from the trajectory will be used

  • filters (Array[InstancedStruct]): [Read-Write]

  • input_query_pose (InputQueryPose): [Read-Write]

  • normalization_group (Name): [Read-Write] if set, all the channels of the same class with the same cardinality, and the same NormalizationGroup, will be normalized together. for example in a locomotion database of a character holding a weapon, containing non mirrorable animations, you’d still want to normalize together left foot and right foot position and velocity

  • normalize_displacement (bool): [Read-Write] Experimental, this feature might be removed without warning, not for production use UPoseSearchFeatureChannel_Position represents / calculates the position (displacement) of Bone relative to OriginBone if bNormalizeDisplacement is true, the displacement will be normalized. if zero it’ll stay zero, so it’ll be like matching the direction towards the position is pointing at. useful to match “trajectory points” when the velocity is not consistent between query and database poses. Look at the debug lines to have an idea what it’d match

  • origin_bone (BoneReference): [Read-Write]

  • origin_role (Name): [Read-Write]

  • origin_time_offset (float): [Read-Write] the data relative to the sampling time associated to this channel origin (root / trajectory bone) will be offsetted by OriginTimeOffset seconds. For example, if Bone is the head bone, SampleTimeOffset is 0.5, and OriginTimeOffset is 0.5, this channel will try to match the future position of the character head bone 0.5 seconds ahead, relative to the future root bone 0.5 seconds ahead

  • permutation_time_type (PermutationTimeType): [Read-Write]

  • sample_role (Name): [Read-Write]

  • sample_time_offset (float): [Read-Write] the data relative to the sampling time associated to this channel will be offsetted by SampleTimeOffset seconds. For example, if Bone is the head bone, and SampleTimeOffset is 0.5, this channel will try to match the future position of the character head bone 0.5 seconds ahead

  • sampling_attribute_id (int32): [Read-Write] if SamplingAttributeId >= 0, ALL the animations contained in the pose search database referencing the schema containing this channel are expected to have UAnimNotifyState_PoseSearchSamplingAttribute notify state with a matching SamplingAttributeId, and the UAnimNotifyState_PoseSearchSamplingAttribute properties will be used as source of data instead of this channel “Bone”. UAnimNotifyState_PoseSearchSamplingAttribute properties will be then converted into OriginBone space

  • weight (float): [Read-Write]

bp_get_world_position(anim_instance) Vector

Get World Position

Parameters:

anim_instance (AnimInstance)

Return type:

Vector

bp_get_world_position_from_context(context) -> (Vector, context=ChooserEvaluationContext)

Get World Position From Context

Parameters:

context (ChooserEvaluationContext)

Returns:

context (ChooserEvaluationContext):

Return type:

ChooserEvaluationContext