Unreal Engine

UE5 Issues : Look Action (bUsePawnControlRotation)

gbleem 2025. 2. 11. 18:00

 

 

1. bUsePawnControlRotation


캐릭터를 구현하고, 마우스 회전에 대한 로직을 작성했지만 캐릭터가 회전하지 않는 경우 해당 변수를 놓쳤을 가능성이 높다. (Pitch 회전이 안되는 경우)

  • bUsePawnControlRotation 언리얼 공식 레퍼런스
  • 이 변수는 SpringArm 혹은 Camera가 Pawn의 컨트롤러 회전을 따라갈 것인지 정해주는 변수이다.
    • 즉, true로 체크하면 캐릭터가 카메라가 보는 방향을 따라가도록 하는 것이다.
    • Default 값은 false로 체크되어있다.
  • 마우스를 통한 Look을 다음과 같이 구현할 수 있다.
    • 우리가 원하는 동작은 캐릭터가 카메라를 보는 방향에 맞게 움직이는 것이다.
    • 이때 코드에서 Controller의 Yaw와 Pitch를 바꿔주는 함수를 사용하였기 때문에 결과적으로 캐릭터도 Controller의 회전을 따르도록 해주어야 한다.
void APlayerCharacter::Look(const FInputActionValue& value)
{
	const FVector2D LookInput = value.Get<FVector2D>();

	AddControllerYawInput(LookInput.X);
	AddControllerPitchInput(LookInput.Y);
}
  • 영상 참고 (순서대로)
    • SpringArm, Camera 모두 bUsePawnControlRotation 을 false
    • SpringArm 만 bUsePawnControlRotation 을 true (제대로된 동작)
    • Camera 만bUsePawnControlRotation 을 true

 

  • 결론 : Controller 회전을 통해 Look을 구현한 경우 아래의 변수 세팅을 해주면 된다.
    • SpringArmComp->bUsePawnControlRotation = true;
    • CameraComp->bUsePawnControlRotation = false;

2. 캐릭터 옵션 (추가)


  • Character Movement(회전 세팅) 에 아래와 같은 두가지 옵션이 존재한다.
    • 컨트롤러 선호 회전 사용
      • 컨트롤러가 캐릭터의 시점 제어 (Yaw 회전 값)
      • FPS 게임의 움직임
    • 무브먼트 방향으로 회전 조정
      • 캐릭터가 이동 방향에 따라 회전한다.
      • 캐릭터가 이동하는 동안 이동 방향으로 서서히 회전한다.

  • (아직 이 부분은 어떻게 사용하는지 정확히 파악하지는 못했다.)