보키_기록용
Lyra에서 Input Mapping Context 살펴보기 (3) 본문
Lyra에서 Input Mapping Context 살펴보기 (1)
Lyra에서 Input Mapping Context 살펴보기 (1)
시작하기에 앞서, 기본 클래스들을 만들어야 한다. Enghanced Input 시작하기를 참조. Input Mapping Context : 사용자 입력을 입력 작업에 매핑하며 각 사용자에 대해 동적으로 추가, 제거 또는 우선 순위
bokki0117.tistory.com
Lyra에서 Input Mapping Context 살펴보기 (2)
Lyra에서 Input Mapping Context 살펴보기 (2)
내용이 너무 길어져서 나눔. Lyra에서 Input Mapping Context 살펴보기 (1) 이전 글에서 PMI 방식 중 GameFeatureData를 사용하는 방식을 설명한다. Enhanced Input System을 위한 Game Feature 추가하기 ShooterC..
bokki0117.tistory.com
2) LyraExperienceActionSet
Lyra에서 Input Mapping Context 살펴보기 (2)에서 Experience 관련 클래스들을 만들었는데,
GameFeaturesToEnable에 써있는 ShooterCore가 GameFeatureData의 이름이고, 해당 GameFeature를 활성화시켜서 PlayerMappableInputConfig(PMI)로 가서 InputMappingContext를 Add했었다.
이제 그 아래에 Action Sets부분을 보면
이런식으로 여기도 GameFeatureAction을 사용하고 있는 것을 알 수있다. ActionSet에서 Input하는 부분을 보면 항상
AddInputMapping(여기가 InputMappingContext)와 AddInputBinds(여기는 InputAction)을 같이 쓰는 것을 볼 수 있다.
- UGameFeatureAction_AddInputContextMapping
- OnGameFeatureActivating()으로 GameFeature가 활성화되면 Super::OnGameFeatureActivating()으로 AddToWorld()를 호출한다.
- Delegate로 HandleControllerExtension()을 바인딩한다
- AddInputMappingForPlayer()에서 AddMappingContext()한다.
- UGameFeatureAction_AddInputBinding도 비슷하게 작동한다.
요약
- B_SimpleHeroPawn(DefaultInputConfig) : 로비에서 Pawn이 쓰는 간단한 Input
- HeroComponent에서 InputAction 바인딩할 때 활성화시킨다.
- ShooterCore(GameFeature) : 실질적인 Input과정. Move같은 기본 Input들을 정의한다.
- GameFeatureAction으로 등록시켜 놓고 마찬가지로 HeroComponent에서 InputAction 바인딩할 때 활성화시킨다.
- LyraExperienceActionSet : Move같은 기본Input 외에 해당 Experience에만 쓰는 Input들을 정의한다.
- AddInputBinding으로 InputAction을 바인딩하고 AddInputMapping으로 InputMappingContext를 넣는다.
'언리얼 > Enhanced Input System' 카테고리의 다른 글
Enhanced Input Priority 및 Consume Input에 대해 (0) | 2023.03.23 |
---|---|
UE5 Enhanced Input으로 카메라 터치 조작하기(Pan Camera) (0) | 2023.03.21 |
Lyra에서 Input Mapping Context 살펴보기 (2) (0) | 2022.10.26 |
Enhanced Input System을 위한 Game Feature 추가하기 (0) | 2022.10.14 |
Lyra에서 Input Mapping Context 살펴보기 (1) (0) | 2022.10.11 |