RealtimeStyleTransferRuntime/Source/LyraGame/Camera/LyraUICameraManagerComponent.h

47 lines
1.3 KiB
C
Raw Normal View History

2022-05-23 18:41:30 +00:00
// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Camera/PlayerCameraManager.h"
2022-09-13 07:18:28 +00:00
#include "Components/ActorComponent.h"
#include "Misc/AssertionMacros.h"
#include "UObject/UObjectGlobals.h"
2022-05-23 18:41:30 +00:00
#include "LyraUICameraManagerComponent.generated.h"
2022-09-13 07:18:28 +00:00
class AActor;
2022-05-23 18:41:30 +00:00
class AHUD;
2022-09-13 07:18:28 +00:00
class APlayerController;
class FDebugDisplayInfo;
2022-05-23 18:41:30 +00:00
class UCanvas;
2022-09-13 07:18:28 +00:00
class UObject;
2022-05-23 18:41:30 +00:00
UCLASS( Transient, Within=LyraPlayerCameraManager )
class ULyraUICameraManagerComponent : public UActorComponent
{
GENERATED_BODY()
public:
static ULyraUICameraManagerComponent* GetComponent(APlayerController* PC);
public:
ULyraUICameraManagerComponent();
virtual void InitializeComponent() override;
bool IsSettingViewTarget() const { return bUpdatingViewTarget; }
AActor* GetViewTarget() const { return ViewTarget; }
void SetViewTarget(AActor* InViewTarget, FViewTargetTransitionParams TransitionParams = FViewTargetTransitionParams());
bool NeedsToUpdateViewTarget() const;
void UpdateViewTarget(struct FTViewTarget& OutVT, float DeltaTime);
void OnShowDebugInfo(AHUD* HUD, UCanvas* Canvas, const FDebugDisplayInfo& DisplayInfo, float& YL, float& YPos);
private:
UPROPERTY(Transient)
2022-09-13 07:18:28 +00:00
TObjectPtr<AActor> ViewTarget;
2022-05-23 18:41:30 +00:00
UPROPERTY(Transient)
bool bUpdatingViewTarget;
};