Navigation
API > API/Plugins > API/Plugins/PoseSearch
Vantage-point tree implementation https://en.wikipedia.org/wiki/Vantage-point_tree it relies on templated methods to specify the
- data point type (typename T, usually a multidimensional point like TArray
) - data source struct (typename TDataSource) that needs to implement struct FDataSource { const T& operatorint32 Index const; int32 Num() const; static float GetDistance(const T& A, const T& B); }; and can be specialized for runtime calls at FindNeighbors to laverage vectorized code with aliged and padded data
- the result set struct (typename TVPTreeResultSet), see struct FVPTreeResultSet below as example
| Name | UE::PoseSearch::EPoseCandidateFlags |
| Type | enum |
| Header File | /Engine/Plugins/Animation/PoseSearch/Source/Runtime/Public/PoseSearch/PoseSearchContext.h |
| Include Path | #include "PoseSearch/PoseSearchContext.h" |
Syntax
namespace UE
{
namespace PoseSearch
{
enum EPoseCandidateFlags
{
None = 0,
Valid_Pose = 1 << 0,
Valid_ContinuingPose = 1 << 1,
Valid_CurrentPose = 1 << 2,
AnyValidMask = Valid_Pose | Valid_ContinuingPose | Valid_CurrentPose,
DiscardedBy_PoseJumpThresholdTime = 1 << 3,
DiscardedBy_PoseReselectHistory = 1 << 4,
DiscardedBy_BlockTransition = 1 << 5,
DiscardedBy_PoseFilter = 1 << 6,
DiscardedBy_AssetIdxFilter = 1 << 7,
DiscardedBy_Search = 1 << 8,
DiscardedBy_AssetReselection = 1 << 9,
AnyDiscardedMask = DiscardedBy_PoseJumpThresholdTime | DiscardedBy_PoseReselectHistory | DiscardedBy_BlockTransition | DiscardedBy_PoseFilter | DiscardedBy_AssetIdxFilter | DiscardedBy_Search | DiscardedBy_AssetReselection,
}
}
}
Values
| Name | Remarks |
|---|---|
| None | |
| Valid_Pose | |
| Valid_ContinuingPose | |
| Valid_CurrentPose | |
| AnyValidMask | |
| DiscardedBy_PoseJumpThresholdTime | |
| DiscardedBy_PoseReselectHistory | |
| DiscardedBy_BlockTransition | |
| DiscardedBy_PoseFilter | |
| DiscardedBy_AssetIdxFilter | |
| DiscardedBy_Search | |
| DiscardedBy_AssetReselection | |
| AnyDiscardedMask |