// Portage UE 5.5 (2026.9 beta) - correctif du 2026-09-28. // // SYMPTOME : pendant un evenement, l'homme s'appelle toujours Tyrone et la femme girl ou // Meihui, tous nus et au meme visage. generatePerson() sans argument doit produire un // acteur completement aleatoire ; il retombait sur un personnage par defaut. // // CAUSE : UE 5.1 a remplace // IAssetRegistry::GetAssetsByClass(FName ClassName, ...) // par GetAssetsByClass(FTopLevelAssetPath ClassPathName, ...) // FAssetData::ObjectPath (FName) // par FAssetData::GetSoftObjectPath() // La montee de version a supprime les anciennes broches des noeuds existants SANS reporter // leur contenu sur les nouvelles. Releve par LPCheckMeshAssignment : // // [GetAssetsByClass] ClassPathName [TopLevelAssetPath] VIDE // ClassName [orpheline] defaut='SkeletalMesh' // // Les trois appels de GI interrogeaient donc l'AssetRegistry avec un chemin de classe vide // et ne renvoyaient rien. Plus aucune enumeration de corps, de vetements ni de coiffures : // le tirage aleatoire n'avait plus de population ou puiser. Le chargement par chemin // explicite (GetAssetByObjectPath) fonctionnait, d'ou les seuls personnages visibles : ceux // que les scenes nomment explicitement, comme Tyrone via generatePerson(bggw_tyrone). // // Aucune erreur de compilation ne le signalait : 103 Blueprints compilaient a zero // avertissement. Seul le drapeau bOrphanedPin pose par le moteur le revelait (5 en 5.5, // 0 en 4.27). // // CORRECTIF : reaiguiller vers ULPAssetRegistryHelpers, qui re-expose les deux API avec // leur ancienne signature. Meme patron que LPFixAssetRegistryNodes et // LPFixEditableTextBoxFont. // // Usage : // UnrealEditor-Cmd.exe -run=LPFixAssetRegistryPins [-DryRun] #pragma once #include "CoreMinimal.h" #include "Commandlets/Commandlet.h" #include "LPFixAssetRegistryPinsCommandlet.generated.h" UCLASS() class ULPFixAssetRegistryPinsCommandlet : public UCommandlet { GENERATED_BODY() public: ULPFixAssetRegistryPinsCommandlet(); virtual int32 Main(const FString& Params) override; };