액션매핑
- 축 매핑(Axis Mapping)과 비슷함
- 축 매핑과 같이 함수를 바인딩
- 액션 매핑에 바인딩된 콜백함수는 인풋 매개 변수를 사용하지 않음
- 버튼을 누르면 함수가 호출 될 뿐
- 함수의 입력값은 개발자가 결정
- BindAction()함수를 사용
축 매핑의 경우 Tick()함수처럼 매 프레임 실행되지만,
액션 매핑은 일회성으로 버튼을 누르면 함수가 호출되는 방식이다.
축 매핑과 비슷하게 함수를 바인딩하기위해 BindAction()함수를 사용한다.
매개변수로써 동작의 이름인 TEXT(), 객체 자신의 포인터, 콜백함수를 입력받는 부분에서 축 매핑과 동일하지만,
추가적으로 enum상수인 IE_Pressed 또는 IE_Released를 입력받아, "버튼을 눌렀을 떄 실행할지 버튼을 놓았을 떄 실행할지"를 결정할 수있다.
코드
void ATank::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent)
{
Super::SetupPlayerInputComponent(PlayerInputComponent);
//移動・回転の入力をバインディングする
PlayerInputComponent->BindAxis(TEXT("MoveForward"), this, &ATank::Move);
PlayerInputComponent->BindAxis(TEXT("Turn"), this, &ATank::Turn);
//射撃(Fire)の入力をバインディングする
PlayerInputComponent->BindAction(TEXT("Fire"), IE_Pressed, this, &ATank::Fire);
}
추가) "향상된 입력(Enhanced Input)"기능의 추가로 기존의 "입력"이 페지되었다.. 이에 대해여 정리필요...
'UnrealEngine' 카테고리의 다른 글
UnrealEngine5 캐릭터 빙의 (0) | 2024.01.07 |
---|---|
UnrealEngine5 캐릭터(Character)와 폰(Pawn) (0) | 2024.01.07 |
Unreal Engine5 타이머(FTimerManager) (0) | 2024.01.07 |
UnrealEngine5 두 물체 사이의 거리 구하기 (0) | 2024.01.04 |
UnrealEngine5 플레이어 액터에 접근하는 법 (0) | 2024.01.04 |