강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

이상훈님의 프로필 이미지
이상훈

작성한 질문수

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

2강 캐릭터와 입력 시스템

Enhanced Input Mapping Context 에서 축(Axis) 관련 질문드립니다.

작성

·

145

·

수정됨

0

안녕하세요

 

Enhanced Input Mapping Context 에서 Input Action 을 바인딩하는 부분에서 W,S 키를 눌러 전진, 후진을 처리하는 IA 에서는 Vector2D Y 위치에 값을 대입하고 A,D 좌우에는 X 값에 값을 대입하는데요 (Swizzle Input Axis Value 를 이용해서)

 

언리언 엔진에서 character 를 살펴보면 좌표계는 왼손 좌표계이고 캐릭터가 앞을 바라보는 부분이 X 축에 위치하고 우측이동이 Y 축인데 왜 Y 위치에 전진 관련 값을 처리하도록 넣는 건가요?

void AABCharacterPlayer::Move(const FInputActionValue& Value) 함수에서도

 

전진은 X 축으로

const FVector ForwardDirection = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::X);

AddMovementInput(ForwardDirection, MovementVector.X);

좌우는 Y 축으로 처리하는데

const FVector RightDirection = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::Y);

AddMovementInput(RightDirection, MovementVector.Y);

 

처리 과정이 궁금합니다.

 

 

 

 

답변 1

0

이득우님의 프로필 이미지
이득우
지식공유자

네, 이전에도 비슷한 질문이 있었는데, 입력에서의 XYZ 축은 언리얼의 월드 좌표계가 아닌 키보드 레이아웃 (ASDW)을 의미합니다. 키보드의 Y축이 게임의 X축에 맵핑된다고 생각하면 되겠습니다.

이상훈님의 프로필 이미지
이상훈

작성한 질문수

질문하기