본문 바로가기

[언리얼 엔진 4.8] 블루프린트 입문 - 05. 클래스 블루프린트 입력 제어 본문

Tool/Unreal Engine 4

[언리얼 엔진 4.8] 블루프린트 입문 - 05. 클래스 블루프린트 입력 제어

블로그 디렉터 2019. 1. 5. 22:58

언리얼 엔진 공식 유튜브 튜토리얼 시리즈 [ https://youtu.be/EmvekeKk-0o ] 학습 후 필기 복습




Light_BP 를 선택한 상태에서 디테일 패널의 Add Blueprint - Open Blueprint Editor 버튼을 통해 클래스 블루프린트로 바로 접근할 수 있다.



Alt 를 누른상태에서 핀을 눌러주면 연결된 연결선이 모두 끊긴다.



키 인식 노드를 불러오기 위해 OnComponentBeginOverlap 연결선에 Input 을 검색하여, PlayerController ( 플레이어의 입력 ) 의 통제를 받는 입력 스택으로 푸시 ( 액터로 입력 전달 ) 한다는 설명의 Enable Input 함수를 선택해 노드를 생성해준다.



Enable Input 노드의 Target - Self 는 레벨 내의 블루프린트 자체의 입력을 유효하게 한다는 뜻이며, Play Controller 항목을 드래그해 Player 을 검색해준다.

Get Player Index 함수는 Player Index 0 ( 0부터 인원을 파악하며 싱글플레이에서의 0번은 플레이어 본인을 뜻한다. ) 의 정보를 블루프린트에 입력을 전달해 줄 것이다.



EndOverlap 노트에서도 Input 을 검색해 Disable Input ( ' 해당 액터를 플레이어 컨트롤의 통제를 받는 입력 스택에서 제거합니다. '  ) 함수를 선택해 연결해준다.



Get Player Index 노드가 겹치게 작동되지 않는 두 노드에 공유하게 연결해주었다.

이벤트 그래프에서 좌클릭하여 F를 검색해, F 키를 누르고 떼었는데에 대한 이벤트인 Keyboard Event 항목의 F 이벤트를 선택해 불러온다.



이전에 불러왔던 Toggle Visability 노드와 F 이벤트의 Pressed 핀을 연결해준다.


Player 0 이 Trigger 안으로 Overlap ( 들어오면 ) 하면, PlayerController ( 조작 ) 을 액터에 반영한다.

반영을 시작했기 때문에, F 키를 통해 Toggle 을 조작할 수 있다.

밖으로 나가면 조작을 액터에 반영하는 설정을 비활성화한다.

비활성화 되었기 때문에. 밖에서 F 키를 누르더라도 Toggle 에 반영되지 않아 점등/소등 작동이 꺼진다.


컴파일하고 테스트해보고, " Shift + F1 " 키를 눌러주면 플레이를 일시정지하고 마우스 컨트롤을 다시 획득할 수 있다.



HelpfulText 를 드래그 앤 드롭하여 Toggle Visability 와 연결해주고, 기본 비활성화 해두면 Toggle 의 작동에 따라 보이거나 안보이게 된다.

HelpfulText 와 연결된 ToggleVisability 와 Enable Input 노드를 실행 연결선 핀으로 이미지와 같이 연결해주면, Trigger 안에 들어가면 텍스트가 보이는 작동을 하게 된다.

역시 Toggle 에 Enable Input 과 Disable Input 을 동시에 연결해 줄 수 있으며, Trigger 박스에 들어갔을때 텍스트가 보이고 나오면 안보이는 설정이 된다.

Comments