2026-10-02 06:26:53 +00:00
// Portage UE 5.5 - lot O9 (optimisation ; defaut deja present en 4.27).
//
// Le chargement d'une partie prend ~70 s (4.27 comme 5.5). La trace Unreal Insights montre que 60 s
// vont a la carte de la ville : MapMarkers.GenerateTrees ajoute ~160 000 instances aux composants
// HierarchicalInstancedStaticMesh "Tree" et "Car", qui gardent la collision par defaut (BlockAll) :
// chaque instance recoit un corps physique Chaos (HISMC_AddInstance 55 s, AddActorsToScene x161 000,
// et ~460 Mo de physique en memoire). Ces arbres et voitures sont decoratifs (decision utilisateur).
//
// Cette commandlet change le profil de collision des composants nommes d'un Blueprint (noeuds de la
2026-10-02 06:40:54 +00:00
// SimpleConstructionScript, ou modeles des noeuds "Add Component" comme NODE_AddHISM-0), recompile et sauvegarde. Controle : le profil et l'etat de collision
2026-10-02 06:26:53 +00:00
// sont relus apres modification ; tout ecart, ou composant introuvable : rien n'est sauvegarde.
//
// Usage :
// UnrealEditor-Cmd.exe <projet> -run=LPSetComponentCollision -BP=/Game/BPs/MapMarkers -Components=Tree,Car
// [-Profile=NoCollision] [-DryRun]
# pragma once
# include "CoreMinimal.h"
# include "Commandlets/Commandlet.h"
# include "LPSetComponentCollisionCommandlet.generated.h"
UCLASS ( )
class ULPSetComponentCollisionCommandlet : public UCommandlet
{
GENERATED_BODY ( )
public :
ULPSetComponentCollisionCommandlet ( ) ;
virtual int32 Main ( const FString & Params ) override ;
} ;