// Portage UE 5.5 - lot L7l (ERR-036, amelioration : defaut deja present en 4.27). // // Chaque lieu est construit par l'acteur Room (GI.Room) dont la racine prend l'echelle Z de la ligne 1 du // .lpworld : 0,2 a 0,4 en interieur, 0,01 pour les 7 lieux exterieurs. Le plafond WallT (Z relatif 2040, // sans collision) suit cette echelle : en exterieur il se trouve a ~20 cm au-dessus du sol et, vu de la // camera, devient un "sol blanc" qui cache les pieds et le bas des meubles (releve L7l_releve3). // // Ce sous-systeme masque WallT tant que l'echelle Z de la racine de Room est inferieure au seuil, et le // rend de nouveau visible des que la piece redevient interieure (seulement s'il l'a lui-meme masque). // Aucun Blueprint ni asset n'est modifie ; sans Room ou sans WallT, il ne fait rien. #pragma once #include "CoreMinimal.h" #include "Containers/Ticker.h" #include "Subsystems/GameInstanceSubsystem.h" #include "LPOutdoorRoomSubsystem.generated.h" class USceneComponent; UCLASS() class LIFEPLAY_API ULPOutdoorRoomSubsystem : public UGameInstanceSubsystem { GENERATED_BODY() public: virtual void Initialize(FSubsystemCollectionBase& Collection) override; virtual void Deinitialize() override; private: bool Tick(float DeltaTime); FTSTicker::FDelegateHandle TickHandle; /** Plafond masque par ce sous-systeme (a rendre visible quand la piece redevient interieure). */ TWeakObjectPtr HiddenCeiling; };