Как получить позицию перед актором?

Начинающий
Статус
Оффлайн
Регистрация
8 Ноя 2022
Сообщения
28
Реакции[?]
0
Поинты[?]
0
Нужно получить позицию для камеры чтобы снять персонажа лицом вперед.
Но пока не очень понимаю, как получиться точку перед персонажем (чтобы развернуть камеру на него).

// Беру точку самого персонажа тут все ок.
C++:
FVector3d enemyLocation = unit3D->GetActorLocation();
// Дальше нужна точка впереди перед персонажем с учетом его поворота
C++:
FVector3d inFrontOfPoint =unit3D->GetActorForwardVector().Normalize() * FVector3d(200,200,200);
Но тут точка перемещается не прямо вперед от персонажа, а куда то вбок

// Дальше нужно развернуть камеру в сторону персонажа
C++:
this->SetActorRotation(FRotator::Euler(0,180,0));
 
Начинающий
Статус
Оффлайн
Регистрация
10 Окт 2020
Сообщения
9
Реакции[?]
1
Поинты[?]
0
C++:
// Будем ставить камеру спереди актера на расстоянии двух метров. Normalize делать необязательно на сколлько я помню.
FVector CameraLocation = unit3D->GetActorForwardVector() * 200;

// Получаем вектор направления камеры
FVector CameraDirection = enemyLocation - CameraLocation;

// Меняем положение камеры
Camera->SetActorLocation (CameraLocation);
Camera->SetActorRotation (MakeRotFromX (CameraDirection));
 
Сверху Снизу