I’ve created a plugin with a single module that is meant to be a Live Link source. I’m only using the StartupModule
with the following implementation:
void FMyModule::StartupModule() {
UE_LOG(LogTemp, Warning, TEXT("My Module Is Initiating."));
LiveLinkProvider = ILiveLinkProvider::CreateLiveLinkProvider(TEXT("Animaitor"));
FLiveLinkStaticDataStruct StaticData(FLiveLinkSkeletonStaticData::StaticStruct());
FLiveLinkSkeletonStaticData& AnimationData = *StaticData.Cast<FLiveLinkSkeletonStaticData>();
AnimationData.BoneNames.Add(TEXT("Pelvis"));
AnimationData.BoneParents.Add(0);
LiveLinkProvider->UpdateSubjectStaticData(TEXT("Character"), ULiveLinkAnimationRole::StaticClass(), MoveTemp(StaticData));
}
I’ve copied the calls related to LiveLinkProvider
directly from the Maya Live Link plugin. However, I couldn’t understand how that plugin continuously runs in the background and calls UpdateSubjectFrameData
. I’d appreciate it if you could offer a solution for running a loop in the background that keeps calling this function with information that it recives on a UDP socket.