LifePlay-Revival/Source/LifePlayEditorTools/LPAnimCatalogCommandlet.h
edujiro5972 04b053554f Sandbox addon : brancher le jeu sur LifePlay-Sandbox (plugin LPSandbox).
Charge le plugin via AdditionalPluginDirectories, conserve ShowCouple et les commandlets anim côté jeu, et documente les lots S0–S8 (CHG-212 à CHG-220).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 21:10:53 +02:00

40 lines
2.3 KiB
C++

// Lot AP6 (Docs/Migration/20_Chaine_Animations.md, section 5) : champs calcules du catalogue des animations.
//
// Pour chaque cle de livraison.json (AP5), mesure le clip feminin source (copie identique de celui du mod) image
// par image, et controle que le clip masculin a la meme duree et le meme nombre d'images. Mesures (corps du clip,
// hauteurs depuis le sol du repos, en cm) :
// duree, images, cadence ;
// boucle : pose de la derniere image comparee a la premiere (mains, pieds, tete, relatives a la hanche),
// ecart maximal en % de la taille (tete au repos) ; boucle si <= SeuilBoucle (1 %) ;
// deplacement : trajet horizontal de la hanche entre premiere et derniere image (cm, cm/s) et sens par rapport a
// l'avant du corps a la premiere image (avant, arriere, cote, sur place si < SeuilSurPlace) ;
// posture : par image, allonge (tronc incline de plus de 60 deg), a genoux (genou a moins de 12 cm du sol,
// hanche sous 72 % de sa hauteur debout), assis (hanche sous 72 %, en arriere des chevilles de plus
// de 20 cm), accroupi (hanche sous 72 %, au-dessus des chevilles), debout sinon ; posture du clip =
// celle d'au moins 60 % des images, sinon "variable" ; posture de debut et de fin ;
// hauteur_assise_cm : hauteur mediane des articulations de hanche sur les images assises (le siege est plus bas
// de l'epaisseur de la cuisse) ;
// pieds : part des images ou chaque pied (cheville ou orteil) est a moins de 3 cm de sa hauteur de repos ;
// mains : par main, repos (vitesse moyenne par rapport a la hanche < 15 cm/s), mouvement, levee (au-dessus
// de la tete sur au moins 30 % des images).
// Ecrit <Out>/fiches_calculees.json. Code 1 si un clip manque, est vide, ou si F et M different en duree ou en images.
//
// Usage :
// UnrealEditor-Cmd.exe <projet> -run=LPAnimCatalog [-Livraison=<Saved/AnimPipeline/quaternius/livraison.json>]
// [-Out=<dossier de livraison.json>] [-SeuilBoucle=1] [-SeuilSurPlace=5]
#pragma once
#include "CoreMinimal.h"
#include "Commandlets/Commandlet.h"
#include "LPAnimCatalogCommandlet.generated.h"
UCLASS()
class ULPAnimCatalogCommandlet : public UCommandlet
{
GENERATED_BODY()
public:
ULPAnimCatalogCommandlet();
virtual int32 Main(const FString& Params) override;
};