diff --git a/02-Note/ASoul/动画相关/动捕逻辑.md b/02-Note/ASoul/动画相关/动捕逻辑.md index 8827fd1..f7bec83 100644 --- a/02-Note/ASoul/动画相关/动捕逻辑.md +++ b/02-Note/ASoul/动画相关/动捕逻辑.md @@ -498,11 +498,6 @@ bGetMotionData = Recv->SampleFullBodyData_AnimationThread(ValidIdentity, UMotionUtils::BackSampleTime * 2, SampledFullBodyData); ``` -- AChingmuMocapReceiverActor::Tick()仔细考虑。 - - DoSample() - - CalculatePackageAverageInterval() - - ## - AChingmuMocapReceiverActor(创建线程)=> - FChingmuThread(负责接收数据并且塞入AChingmuMocapReceiverActor的FrameQueue)=> @@ -510,6 +505,9 @@ bGetMotionData = Recv->SampleFullBodyData_AnimationThread(ValidIdentity, - AChingmuMocapReceiverActor(Tick)=> - 从FrameQueue提取动捕帧数据并且塞入`TArray AllHumanFrames`(PutMocapDataIntoFrameList())。 - DoSample() - 1. SampleByTimeStamp(),对所有帧进行采样。 - 2. SendFrameToCharacter(),逻辑在Puerts中,发送给MotionProcess动捕数据。 - - CalculatePackageAverageInterval():相关逻辑感觉没用。 \ No newline at end of file + 1. SampleByTimeStamp():对所有帧进行采样。 + 2. SendFrameToCharacter():逻辑在Puerts中,发送给MotionProcess动捕数据。 + - CalculatePackageAverageInterval():相关逻辑感觉没用。 +- FAnimNode_FullBody => + - Update_AnyThread():bGetMotionData = Recv->SampleFullBodyData_AnimationThread():取得对应HumanID的动捕数据。 + - Evaluate_AnyThread():取得SampledFullBodyData => ApplyDataToPose()。 \ No newline at end of file