Unreal Engine
[Unreal Engine] 간단한 상호작용 구현
programmer-faust
2025. 5. 16. 22:54
- 개념 요약
- Line Trace
- 눈앞에 있는 오브젝트를 탐지하는 "레이저 광선"같은 기능
- 마우스나 키보드로 상호작용 탐지 시 사용됨
- 인터랙션 키 바인딩
- 키보드 입력을 통해 특정 이벤트 실행
- 일반적으로 E 키나 마우스 클릭에 매핑
- Line Trace
- 구현 과정 요약
- Interact 입력 Mapping 추가
- Edit > Project Settings > Input
- Action Mappings에 Interact(키: E) 추가
- E 키 이벤트를 블루프린트에서 찾기 위함
- Edit > Project Settings > Input
- 문 또는 아이템 블루프린트 생성
- 새 Actor 블루프린트 생성하기(BP_InteractableDoor 또는 BP_PickUpItem)
- Static Mesh추가(문/아이템 등으로 보이게 설정)
- 생성한 BP_InteractableDoor/BP_PickupItem 에디터에서
- Components 탭의 Static Mesh 선택
- Collision Presets > BlockAll 설정
- Line Trace가 오브젝트를 정확히 감지함
- 상호작용 범위 구현(Line Trace)
- MyCharacter 블루프린트에 Line Trace by Channel 노드 추가
- E 키 입력 > Line Trace > Hit된 오브젝트 태그 확인 > 이벤트 실행
- 문열기 or 아이템 줍기 로직 추가
- 문이면: SetRelativeRotation으로 회전값 변경
- 아이템이면: Destroy Actor로 사라지게 처리
- 태그 설정 & 테스트
- 상호작용 대상 블루프린트에 Tag: Interactable 설정
- 게임에서 캐릭터가 E 키를 눌러 상호작용 되는지 테스트
- Interact 입력 Mapping 추가
- 느낀 점 & 개선하고 싶은 점