[언리얼 엔진] 블루프린트 흐름 제어
- 이런저런 공부/언리얼엔진
- 2020. 6. 9.
언리얼 엔진의 블루프린트 흐름 제어란 조건에 따라 실행 흐름을 제어할 수 있는 노드를 말한다.
스위치 노드
데이터의 입력을 읽어 들여, 그 입력된 값에 따라 일치하는 실행 출력으로 실행 흐름을 전송한다. 사용할 수 있는 스위치의 종류는 Int, String, Name, Enum이 있다.
분기(Branch)
분기(Branch) 노드는 하나의 True/False 조건에 따라 단순한 의사 결정 기반 흐름을 만들어 낸다. Branch노드가 실행되고 현재 조건 값의 상태를 검사한 후 적합한 출력 통로로 실행 신호를 보낸다.
(10초 경과되면 '10초 경과!!' 출력)
(3초가 지날 때마다 1번씩 카운트 출력)
Do N
Do N노드는 Enter로 실행 신호가 들어가면 N번의 수만큼 발동하고 Reset에 입력 신호가 들어가면 신호가 중지된다.
(1번 키를 누르면 1~3번까지 출력, 2번 키를 누르면 중지)
Do Once
실행 신호를 한 번만 발동시킨다. 그 시점부터는 Reset 입력에 신호를 별도로 주지 않는 이상 실행 신호를 내보내지 않는다. 이노 드는 Do N노드에서 N=1일 때와 같다.
(1번 키를 누르면 한 번만 Hello가 출력, 2번 키를 누르기 전까지 1번 키를 눌러도 출력이 되지 않는다.)
FlipFlop
Flipflop(플립플롭) 노드는 두 출력을 번갈아 실행시키는 출력이다.
첫 호출 시에는 A출력, 두 번째는 B출력, 그 이후로 A, B 계속 번갈아 가면서 실행한다.
(처음 1번 키를 누르면 '불이 켜짐'출력', 두 번째 1번 키를 누르면 '불이 꺼짐'
다음부터는 '불이 켜짐'출력', '불이 꺼짐' 출력이 번갈아 가며 출력된다.)
ForLoop
ForLoop 노드는 표준코드 루프처럼 시작/ 끝 인덱스 도중 실행 신호를 발동시키는 식으로 작동한다.
(1번 키를 누르면 10회를 출력한다.)
Gate
Gate노드는 실행 흐름을 열고 닫는 데 사용된다. 간단히 말해서 Enter 입력은 실행 신호를 받아들이며, Gate의 현재(열렸는지 닫혔는지) 상태에 따라 그 신호를 Exit 출력으로 통과할지 말지를 결정한다.
(1번 키를 누르면 시간이 흘러가는 게 실시간으로 출력되고, 2번 키를 누르면 출력이 끝난다.)
시퀀스(Squence)
시퀀스(Squence) 노드는 한 번의 실행 신호로 일련의 이벤트를 순서대로 발동시키는 노드이다. 이 노드에는 출력이 몇이든 있을 수 있으며, Squence노드가 입력을 받자마자 그 모두가 호출된다.
(1번 키를 누르면 5개의 Print String이 순서대로 출력된다.)