36 lines
1.4 KiB
C++
36 lines
1.4 KiB
C++
// Portage UE 5.5 - lot L7j (ERR-031, amelioration : defaut deja present en 4.27).
|
|
//
|
|
// Pendant un appel, l'encadre affiche l'image de la camera SceneCapture2D "SecondScreen" de CentralLondon.
|
|
// Le contact (GI.SecondScreenPerson) y est place sur son emplacement de scene, decale de -10 000 000 en Y
|
|
// (GI::Show) : sa position depend donc de la scene et de son rang. Aucun Blueprint ne deplace la camera.
|
|
//
|
|
// Ce sous-systeme, a chaque image ou un contact est affiche, place la camera devant le visage du contact
|
|
// (os "head" du premier maillage squelettique qui le porte, sinon haut de la capsule), dans l'axe du
|
|
// personnage, et resserre le champ : l'encadre montre le visage quel que soit l'emplacement.
|
|
// Aucun Blueprint ni asset n'est modifie ; sans camera "SecondScreen" ou sans contact, il ne fait rien.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Containers/Ticker.h"
|
|
#include "Subsystems/GameInstanceSubsystem.h"
|
|
#include "LPSecondScreenSubsystem.generated.h"
|
|
|
|
class ASceneCapture2D;
|
|
|
|
UCLASS()
|
|
class LIFEPLAY_API ULPSecondScreenSubsystem : public UGameInstanceSubsystem
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
virtual void Initialize(FSubsystemCollectionBase& Collection) override;
|
|
virtual void Deinitialize() override;
|
|
|
|
private:
|
|
bool Tick(float DeltaTime);
|
|
|
|
FTSTicker::FDelegateHandle TickHandle;
|
|
TWeakObjectPtr<ASceneCapture2D> Capture;
|
|
TWeakObjectPtr<UWorld> CaptureWorld;
|
|
};
|