// Lot AP2 (Docs/Migration/20_Chaine_Animations.md) : etapes 3 et 5 de la chaine des animations, sans fenetre. // // 1. Pose T : ajuste la pose T de chaque corps sur celle de la reference, ecrit retarget_pose_.txt // (lu par Tools/RetargetQuaternius.py) et controle l'ajustement : segments ajustes <= SeuilPoseT, // reglages gauche / droite symetriques a SeuilSymetrie degres pres, aucun reglage > SeuilReglage degres. // 2. Evaluation : pour chaque clip de reference qui a une copie par corps, a Instants instants, compare la // formule (phase B) et le clip converti a la reference ; ecart pire <= SeuilEval. // Rapports : /rapport_poseT_.json, /eval_.csv (colonnes de la tournee de la sandbox), // /rapport.json. Code de sortie 0 si tous les controles passent, 1 sinon. // // Usage : // UnrealEditor-Cmd.exe -run=LPAnimEval [-ClipDir=/Game/Quaternius/UAL] [-RefClip=A_TPose] // [-Bodies=Bridget:B_,Michael:M_] [-Instants=3] [-PoseDir=] [-Out=] // [-SeuilPoseT=1] [-SeuilSymetrie=0.5] [-SeuilReglage=30] [-SeuilEval=1] [-Clips=Idle_Loop,Walk_Loop] #pragma once #include "CoreMinimal.h" #include "Commandlets/Commandlet.h" #include "LPAnimEvalCommandlet.generated.h" UCLASS() class ULPAnimEvalCommandlet : public UCommandlet { GENERATED_BODY() public: ULPAnimEvalCommandlet(); virtual int32 Main(const FString& Params) override; };