Class UManusSkeleton
This class is the bridge between the Manus Core animation data and the unreal animation it defines the nodes (bones) and chains (how bones are connected) of a skeleton and offers support functions to send them to Manus Core and retrieve them.
#include <ManusSkeleton.h>
Inherits the following classes: UObject
Public Attributes
Type | Name |
---|---|
TMap< FName, FManusChainSetup > | ChainsIndexMap all the chains of the skeleton |
FManusSkeletonTargetGloveData | GloveData the glove ID the skeleton is assigned to. |
int | ManusSkeletonId = = 0 the skeleton ID as generated by Manus Core for this skeleton. |
TMap< FName, FManusNodeSetup > | NodesSetupMap all the nodes of the skeleton (bones) |
bool | ScaleToUser = = false Option to scale the skeleton to the user, turn off to keep the original sizes. |
class USkeletalMesh * | SkeletalMesh The unreal skeletal mesh to use with Manus skeleton. |
EManusSkeletonType | SkeletonType = = EManusSkeletonType::Invalid the skeleton type. this needs to be setup or else it cannot be loaded into Manus Core |
FManusSkeletonTargetAnimationData | TargetAnimationData the animation name the skeleton is assigned to. |
FString | TargetName = = L"" skeleton name |
EManusSkeletonTargetType | TargetType = = EManusSkeletonTargetType::UserIndexData defines how this skeleton is targeted to data in Manus Core. |
FManusSkeletonTargetUserData | TargetUserData the user ID that the skeleton is assigned to. only 1 of the four targets is used. |
FManusSkeletonTargetUserIndexData | TargetUserIndexData the user index that the skeleton is assigned to. |
bool | UseEndPointApproximations = = true the skeleton pinch correction. |
Public Functions
Type | Name |
---|---|
bool | AllocateChains (uint32_t p_SkeletonSetupIndex) sends all the nodes to Core to auto allocate chains for them and receive the chains back |
void | ClearAllTemporarySkeletonIndexes () clear all previously setup skeletons. |
bool | ClearSetupSkeleton (uint32_t p_SkeletonSetupIndex) clear a specific skeleton |
const TArray< FMeshBoneInfo > & | GetRawRefBoneInfo () gets the boneinfo of the SkeletalMesh->referenceskeleton (not the same as SkeletalMesh->skeleton->referenceskeleton) |
const TArray< FTransform > & | GetRefBonePose () gets the transform of the SkeletalMesh->referenceskeleton (not the same as SkeletalMesh->skeleton->referenceskeleton) |
class USkeleton * | GetSkeleton () returns the USkeleton that is associated with this manus skeleton. |
uint32_t | GetTemporarySkeletonIndex () get current temporary skeleton index |
void | LoadChains (uint32_t p_SkeletonSetupIndex, bool p_Overridetrackers=false) load the chains into the skeleton ready for sending it to Manus Core. (but not yet sent) |
bool | LoadExistingNodes (uint32_t p_SkeletonSetupIndex) load existing nodes into SDK |
bool | LoadNewNodes () load the unreal skeleton bones and generate new nodes |
bool | LoadNewNodes (uint32_t p_SkeletonSetupIndex) load the unreal skeleton bones and generate new nodes and then immediately load them into SDK |
bool | LoadSkeleton (uint32_t p_SkeletonSetupIndex, uint32_t & p_ID) load the skeleton with all its data into Manus Core. (now it is being sent) |
bool | LoadSkeletonFromCore (uint32_t p_SkeletonSetupIndex) get the temporary skeleton from Manus Core and load the chains and nodes. |
void | OnManusSkeletonChanged () event triggered when the data has changed |
virtual void | PostLoad () override |
void | RetrieveTemporarySkeleton () retrieve temporary skeleton from Manus Core. |
void | SetTemporarySkeletonIndex (uint32_t p_Id) set the temporary skeleton index |
EManusRet | SetupSkeleton (uint32_t & p_SkeletonSetupIndex) setup a skeleton for Manus Core (not yet sending it) |
bool | ToSkeletonMeshSetup (uint32 p_SkeletonSetupIndex) Convert skeleton mesh information to skeleton setup TODO TODO this is currently not 100% ok TODO TODO. |
bool | ToSkeletonSetup (SkeletonSetupInfo & p_SkeletonSetupInfo) Convert skeleton information to skeleton setup. |
UManusSkeleton () |
Public Attributes Documentation
variable ChainsIndexMap
variable GloveData
variable ManusSkeletonId
variable NodesSetupMap
variable ScaleToUser
variable SkeletalMesh
variable SkeletonType
variable TargetAnimationData
variable TargetName
variable TargetType
variable TargetUserData
variable TargetUserIndexData
variable UseEndPointApproximations
Public Functions Documentation
function AllocateChains
function ClearAllTemporarySkeletonIndexes
function ClearSetupSkeleton
clear a specific skeleton
clear the previously setup skeleton. this may actually become obsolete. as skeletons are cleared on disconnect anyway and you can overwrite an existing skeleton for ease of use (even advisable to do so)
Parameters:
p_SkeletonSetupIndex
Returns:
true upon success.
function GetRawRefBoneInfo
gets the boneinfo of the SkeletalMesh->referenceskeleton (not the same as SkeletalMesh->skeleton->referenceskeleton)
Returns:
function GetRefBonePose
gets the transform of the SkeletalMesh->referenceskeleton (not the same as SkeletalMesh->skeleton->referenceskeleton)
Returns:
function GetSkeleton
function GetTemporarySkeletonIndex
get current temporary skeleton index
get current temporary skeleton id
function LoadChains
load the chains into the skeleton ready for sending it to Manus Core. (but not yet sent)
load the chains into the skeleton ready for sending it to manus core. (but not yet sent)
function LoadExistingNodes
function LoadNewNodes [1/2]
function LoadNewNodes [2/2]
function LoadSkeleton
load the skeleton with all its data into Manus Core. (now it is being sent)
load the skeleton with all its data into manus core. (now it is being sent)
function LoadSkeletonFromCore
function OnManusSkeletonChanged
function PostLoad
function RetrieveTemporarySkeleton
retrieve temporary skeleton from Manus Core.
retrieve temporary skeleton from manus core.
function SetTemporarySkeletonIndex
set the temporary skeleton index
set the temporary skeleton id
function SetupSkeleton
setup a skeleton for Manus Core (not yet sending it)
setup a skeleton for manus core (not yet sending it)
function ToSkeletonMeshSetup
function ToSkeletonSetup
Convert skeleton information to skeleton setup.
Parameters:
p_SkeletonSetupInfo
Returns:
true when succesfully setup.
function UManusSkeleton
The documentation for this class was generated from the following file api/Unreal/Plugins/Manus/Source/Manus/Public/ManusSkeleton.h