반응형
# 마우스 위치(FVector)를 알 수 있는 방법
1. APlayerController
플레이어 컨트롤러를 통해서 마우스 위치를 알 수 있다.
Pawn은 GetController()를 통해 AController*로 가져올 수 있는데, Cast를 APlayerController*로 변환해준다.

플레이어 컨트롤러를 가져왔다면,
2. APlayerController*->GetHitResultUnderCursor()를 이용해 FHitResult 구조체의 ImpactPoint로 마우스 위치를 가져올 수 있다.

매개변수
1. 트레이스 채널
2. true : 복합 콜리전, false : 단순 콜리전
3. 결과를 담을 구조체
HitResult.ImpactPoint로 마우스 위치를 알 수 있다.
# 회전
1. 회전할 방향 = 목적지 - 출발지
2. 방향벡터를 FRotator로 변환한다.
3. 부드럽게 이동시키기 위해 FMath::RInterpTo() 함수로 보간한다.

보간을 할 때는 Add가 아닌 Set 함수를 사용해야 한다.
회전할 메시의 월드 좌표를 변환시킨다.
로컬이 아닌 월드로 변환시키는 이유는, ToTarget 값이 월드좌표이기 때문에.
FRotator는 Pitch, Yaw, Roll 순인데,
Pitch는 상하
Yaw는 좌우
Roll은 기울기이다.
대개 좌우 회전을 많이 사용하므로 Yaw만 Set하기 위해서 생성자를 통해 Yaw 값만 변화를 준다.
FVector에서 FRotator로 변환하는 Rotation() 함수를 지원하고 있다.
반응형
'Unreal Engine > 기능 구현' 카테고리의 다른 글
| [Unreal Engine 5] Timer (0) | 2025.06.30 |
|---|---|
| [Unreal Engine 5] 월드 내 다른 액터가 Pawn 찾는 법 (0) | 2025.06.30 |
| [Unreal Engine 5] 이동 중 충돌 확인 (0) | 2025.06.28 |
| [Unreal Engine 5] Enhanced Input System C++로 사용하기 (0) | 2025.06.27 |
| [Unreal Engine 5] 5 이전 버전에서 Enhanced Input System 빌드 오류 해결 (0) | 2025.06.27 |
