
이 함수는 플레이어 컨트롤러에 빙의(Possess) 하면서 자동으로 호출됨.
InputComponent는 APlayerController가 기본으로 가지고 있는 입력 처리용 객체.
전달받은 InputComponent를 UEnhancedInputComponent로 캐스팅해서 사용한다.
UEnhancedInputComponent는 UInputComponent를 상속받아 강화된 입력 시스템을 제공.PlayerController는 내부적으로 EnhancedInputComponent를 생성해 InputComponent 포인터로 저장해 둠.
GetDefault<UPlatformInput>()로 CDO(Class Default Object) 를 꺼내옴.Subsystem->AddMappingContext()로 입력 컨텍스트를 등록해야 키 입력이 동작함.
InputActionValue.h 헤더 추가 필요.FInputActionValue는 입력값을 Vector2D, Bool, Float 등으로 유연하게 받을 수 있게 해줌.
MoveKey, RotationKey 변수 선언.


BindAction()을 사용해 특정 InputAction과 함수를 연결.
APlatformCharacter::APlatformCharacter() 생성자에서 Pitch, Roll 회전 제약 설정.

IAAttack, IAJump InputAction 추가.

Input.h에 Jump, Attack용 변수 선언.
Input.cpp에서 Jump, Attack 세팅.
PlatformCharacter.h에 JumpKey, AttackKey 함수 선언.

BindAction으로 점프, 공격 액션 바인딩.

ACharacter)는 이미 Jump() 함수를 지원하므로 직접 물리 구현할 필요 없음.Attack은 별도의 동작(애니메이션, 이펙트 등)을 직접 구현해야 함.BindAction() 설명 보충 → 단순 호출이 아니라 “이벤트 등록 시스템”이라는 점 강조.Jump() 호출만 하면 됨. (추가 설명 필요)