[Unreal Engine] BP - Branch, Sequence, Flip Flop

👻 분기문

이번 시간에는 블루프린트에서 사용할 다양한 분기문에 대해 알아보자. 분기문은 조건에 따라 실행 흐름을 제어하는 명령어 중 한 부분으로 C++로 치면 ifswitch와 의미가 동일하다.


🌱 Branch

이전에도 한 번 나왔었지만 특정 조건에 따라 참/거짓으로 길을 나눠주는 노드이다. branch 검색도 가능하고, 단축키 B + 좌클릭으로도 생성 가능하다.

Alt Text


🌱 Sequence

코드의 양이 방대해질 때 사용하기 좋은 노드이다. sequence 검색도 가능하고, 단축키 S + 좌클릭으로도 생성 가능하다.

Alt Text

위 같이 노드가 늘어나다보면 복잡해지고 무거워지게 되는데 이러한 코드를 정리해주기 좋다.

Alt Text

Add Pin plus를 사용하여 Then 개수를 늘릴 수 있게되고, Then 0에 연결되어 있는 노드들이 실행된 후에 차례로 Then 1, Then 2, … 이렇게 실행되는 방식이다.

잠깐 테스트를 해보자면 이렇게 시퀀스를 사용하여 Print Text 노드를 나눠준 뒤, 실행해보자.

Alt Text

결과가 1, 1, 2 순서로 나온 것을 확인할 수 있다. (최근 게 위에 출력되므로 가장 밑이 먼저 출력된 부분이다.)

Alt Text


🌱 Flip Flop

핑퐁 방식의 흐름에 도움이 되는 노드이다. 마찬가지로 flip flop을 검색하여 생성이 가능하다.

Alt Text

A를 실행했다가 B를 실행했다가, 다시 A를 실행하는 방식으로 진행된다.

Alt Text

해당 블루프린트의 의미는 키보드 1을 누를 때마다 A, B를 번갈아가며 출력해달라는 의미이다.

Alt Text

1을 누를 때마다 출력값이 바뀌는 것을 확인할 수 있다.

💡
Flip Flop 기능을 Flip Flop 노드 없이 만드는 연습을 해보자. 많은 도움이 된다.
Alt Text


👻 글을 마치며

이번 시간에는 분기문에 대해 알아보았다. 브랜치는 이전에 한 번 다룬 적이 있어서 쉽게 알 수 있었고, 시퀀스와 플립 플롭은 처음 들어봤었는데, 시퀀스는 거의 노드 정리에 더 가까운 기능이고 플립 플롭은 on/off 스위치 같은 개념인 것 같다. 내가 알고 있는 것들에 비유하면서 공부하니 이해가 더 잘 되는 것 같다.


소스코드 보러가기


출처
인프런 Rookies님 강의

Leave a comment