Enhanced Input

2D 입력을 Yaw 기준 월드 이동으로 변환

Move 함수는 입력값을 그대로 위치에 더하지 않습니다. 컨트롤러의 Yaw만 뽑아 전후좌우 월드 축을 만든 뒤 이동 입력으로 넘깁니다.

입력 FVector2D X, Y
회전 Controller Rotation 중 Yaw만 사용
출력 Forward와 Right 방향의 AddMovementInput
01 Action Value

IA_Move가 2D 축 값을 전달합니다.

02 Yaw 추출

Pitch와 Roll을 빼고 평면 회전만 남깁니다.

03 Forward 축

YawRotation의 X축에 Move Y를 곱합니다.

04 Right 축

YawRotation의 Y축에 Move X를 곱합니다.

05 Movement

CharacterMovement가 프레임 이동으로 처리합니다.

입력 변환 점검표
구간
확인할 값
흔한 실수
완료 신호
입력
IA_Move의 Value Type이 Axis2D
X와 Y를 반대로 연결
WASD가 기대 방향으로 반응
회전
Controller가 null이 아니고 Yaw만 사용
Pitch 때문에 시선 위아래로 이동 축이 기울어짐
카메라 방향 기준 평면 이동
적용
AddMovementInput 호출과 MovementComponent
Pawn에 이동 컴포넌트가 없음
방향 전환이 끊기지 않고 누적됨
좋음 Yaw 기준 평면화

카메라가 위아래를 봐도 캐릭터는 바닥 평면 기준으로 움직입니다.

확인 Mapping Context

BeginPlay에서 로컬 플레이어 서브시스템에 컨텍스트가 추가됐는지 봅니다.

주의 축 혼동

좌우와 전후가 바뀌면 X, Y 매핑과 GetUnitAxis 선택을 먼저 확인합니다.