На сцене есть игрок и камера (не камера игрока), к которой я переключаюсь, чтобы воспроизвести анимацию того, как игрок встает с постели. Когда анимация заканчивается, я хочу вернуть камеру игрока, но по какой-то причине она находится в середине капсулы игрока, а не на уровне глаз, где находится сама камера.
Мне не ясно, что Начальный объект игрока Теоретически, вам нужно передать UCameraComponent, а не APlayerController, в SetViewTarget, но затем он генерирует ошибку "нет подходящей функции преобразования из" UCameraComponent "в" AActor * ", существует"
И у меня есть виджет который отображает описания объектов, если вы наводите курсор на них. По какой-то причине он отключается после использования кода ниже
.h
UPROPERTY() APlayerController* player;
UPROPERTY(EditAnywhere) AActor* cameraPlayerWakeUp;
// What else I've tried:
UPROPERTY(EditAnywhere) UCameraComponent* playerCameraComponent;
UPROPERTY(EditAnywhere) ACharacter* character;
FORCEINLINE ACharacter* GetCharacter() const { return character; }
UPROPERTY(EditAnywhere) APawn* playerPawn;
. cpp
void AAct_31::BeginPlay()
{
Super::BeginPlay();
player = UGameplayStatics::GetPlayerController(this, 0);
}
void AAct_31::GameCicle()
{
player->SetViewTarget(cameraPlayerWakeUp);
//.. animation of awakening
// What I've tried to set up camera:
player->SetViewTarget(player);
player->SetViewTarget(playerCameraComponent);
player->SetViewTarget(character);
player->SetViewTarget(playerPawn);
}