시스템 / Interaction
Interaction System
캐릭터에 컴포넌트 하나, 월드의 원하는 대상에 컴포넌트 하나를 추가하세요. 플레이어가 대상을 바라보면 키가 하는 일을 확인하고, 탭하거나 누르고 있어 사용합니다.
작동 영상
쇼케이스 장면에서 50초: 프롬프트, 잠긴 상자, 열쇠, 누르고 있어 채집하기. 소리 없음.
안뜰은 쇼케이스이며 포함되지 않습니다. 제품에는 자체 데모 맵이 들어 있습니다.
주요 기능
시선 감지
캐릭터의 눈에서 작은 구체를 초당 20회 스윕합니다. 도달 거리, 반경, 빈도는 설정값입니다. 1인칭과 3인칭, 어떤 폰에서든 작동합니다.
플레이어의 키를 읽는 프롬프트
키, 동사, 대상 이름("E · Open · Wooden Door"). 키는 입력 매핑에서 가져오므로, 키를 재지정하면 프롬프트도 바뀝니다.
탭과 홀드
홀드는 진행 링을 표시하며, 키를 놓거나 플레이어가 시선을 돌리면 취소됩니다.
잠긴 대상은 이유를 알려 줍니다
프롬프트가 회색으로 바뀌고 "Locked. You need the Iron Key." 같은 이유를 보여 줍니다. 바라보는 동안 잠금을 풀면 프롬프트가 즉시 바뀝니다.
베이스 클래스 불필요
컴포넌트를 사용하거나, 어떤 액터에든 인터페이스를 구현하세요. 상호작용, 포커스, 포커스 해제에 대한 소유자 이벤트를 제공합니다.
단독으로 작동
Demo 폴더와 Art 폴더를 삭제해도 시스템은 컴파일되고 작동합니다. 빈 프로젝트에서 테스트했습니다.
빠른 시작
캐릭터에 인터랙터 추가
캐릭터에 AC_Interactor를 추가하고, Interact 액션에서 Start Interact와 Stop Interact를 호출하세요.
상호작용 가능한 대상 만들기
액터에 AC_Interactable을 추가하고 Prompt와 Verb를 입력한 뒤, BPI_InteractableOwner를 추가하고 On Interacted를 구현하세요.
프롬프트 표시
WBP_InteractionPrompt를 생성하고, 인터랙터와 입력 에셋을 지정한 뒤 뷰포트에 추가하세요.
하지 않는 일
- 멀티플레이어: 아무것도 리플리케이트되지 않습니다.
- UE 5.4~5.7은 아직 테스트하지 않았습니다.
- 시선 감지만 지원: 근접 모드나 탑다운 모드가 없고, 겹치는 대상 간 우선순위도 없습니다.
- 키보드와 마우스 글리프만 제공합니다. 게임패드는 포함되지 않았으며 테스트하지 않았습니다.
스크린샷의 안뜰 장면은 쇼케이스이며 포함되지 않습니다. 제품에는 자체 데모 맵이 들어 있습니다.