endink / Mediapipe4u-plugin

379 stars 52 forks source link

Body not moving :)! #133

Closed jossevessies closed 1 year ago

jossevessies commented 1 year ago

MediaPipe4U Version

20231011

UE Version

5.1.x

UnrealEngine Type

Install From Epic Games Launcher

Platform

Windows

What happened?

Hi there!

So I'll post a new issue.

I am in the demo file and the body is not moving.

It looks very similar to this issue: https://github.com/endink/Mediapipe4u-plugin/issues/114

First I got the error:

LogMediaPipe: Error: Bone 'thigh_l' is not a valid compact pose bone. (UJointMapperBase::GetBoneTransformFromPose) LogMediaPipe: Error: Bone 'thigh_l' is not a valid compact pose bone. (UJointMapperBase::GetBoneTransformFromPose) LogMediaPipe: Warning: The orientation of the body cannot be determined, possibly necessary bone mapping missed. (UJointMapperBase::CalibrateJoints) LogMediaPipe: Error: Preparing the joint mapping was not completed (solver: GroundIKSolver). LogMediaPipe: Display: Start prepare mediapipe joint mapping (HeadSolver).

for Headsolver, Groundiksolver, Posesolver etc.

Now I have changed the 'forced lod model' & 'min lod model' property's of the BP_Quin's_Charachter object both to 1.

It seems to fix the error, but the model is still not moving.

I am getting no real warning.

output looks as follows:

+-----------------+--------+ | MediaPipe Joint | Status | +-----------------+--------+ +-----------------+--------+ | Head | OK | +-----------------+--------+ LogMediaPipe: Display: Joints prepared (HeadSolver) . LogAssetEditorSubsystem: Opening Asset editor for Blueprint /Game/Blueprints/BP_Quins_Character.BP_Quins_Character LogChaos: FPhysicsSolverBase::AsyncDt:-1.000000 LogMediaPipe: Display: Begin initialize AnimNode_MediaPipeBase LogMediaPipe: Display: PoseSolver initialized. LogMediaPipe: Display: Begin initialize AnimNode_MediaPipeBase LogMediaPipe: Display: LeftHandSolver initialized. LogMediaPipe: Display: RightHandSolver initialized. LogMediaPipe: Display: Hands solver Initialized. LogMediaPipe: Display: Begin initialize AnimNode_MediaPipeBase LogMediaPipe: Display: LocationSolver initialized. LogMediaPipe: Display: GroundIKSolver initialized. LogMediaPipe: Display: Begin initialize AnimNode_MediaPipeBase LogMediaPipe: Display: HeadSolver initialized. LogSlate: Window 'BP_Quins_Character' being destroyed LogWorld: UWorld::CleanupWorld for World_35, bSessionEnded=true, bCleanupResources=true LogSlate: InvalidateAllWidgets triggered. All widgets were invalidated

jossevessies commented 1 year ago

ok! So, diving a bit deeper and following the issue mentioned above. I did manage to solve the issue.

So for future noobs like me:

Indeed change the forced and min lod model properties to 1.

Then go into the animation node (called: "ABP_mannequins_mediapipe") and in the blueprint select each individual node to open up their details panel and manually change the lod threshold property to 1.

Now everything is working like a charm.

Not sure why i needed to open e new issue about this. but again:

amazing tool @endink !

endink commented 1 year ago

It looks like you have a custom skeleton.

Refer this:

https://opensource-labijie-com.translate.goog/Mediapipe4u-plugin/mocap/quick_start/custom_skeleton.html?_x_tr_sl=zh-CN&_x_tr_tl=en&_x_tr_hl=zh-CN&_x_tr_pto=wapp

BTW, please read the M4U document, and run the demo project. After that , you can use M4U easily.

jossevessies commented 1 year ago

thanks for your quick response.

I haven't yet doven into the document. Probably should've done that before. You're right.

Though I am in the demo project. This issue exists within the demo project. :)