개발/Unreal Engine / / 2022. 3. 30. 20:44

Learning Unreal 4 언리얼 공부일지 - [블루프린트] Level 이동과 시퀀서의 Fade 기능을 알아보자

반응형

위와 같은 그래프로 콜리전에 닿았을 때 level을 이동하는 기능을 블루프린트에서 구현할 수 있다. 이벤트를 보면 On Component Begin Overlap이라고 되어있는데 블루프린트에서는 Actor보다는 Component로 개념을 나눈다.

 

다른 맵으로 이동할 때 페이드 아웃 효과를 제작해보자.

시네마틱 → 레벨 시퀀스를 추가하고, 위 사진과 같이 페이드 트랙을 추가하여 구성할 수 있다.

 

블루프린트에서 시퀀스를 추가하려고 드래그하면 위 사진처럼 안된다고 뜬다. 오른쪽 사진과 같이 시퀀스는 '레벨 시퀀스'라는 타입으로 이루어져있다.

이럴 때는 변수로 추가해주어야하는데, 변수 유형을 그림과 같이 level sequence의 오브젝트 레퍼런스로 설정한다.

 

그러면 이렇게 레벨 시퀀스 에셋을 넣을 수 있는 변수가 된다!

 

level sequence player를 통해 시퀀서를 재생하도록 준비하고, play를 통해 sequence를 재생한다.

delay를 통해 1초 동안 재생한 이후 open level로 레벨을 이동시키도록 순서를 구성했다.

 

위 사진과 같이 그래프를 구성하여 이전에 만든 fade out 시퀀서를 반대로 실행하려 fade in으로 사용할 수 있다.

 참고로 위 그래프에서의 시퀀서 변수 SQ_Fade는 월드 아웃라이너에서 시퀀서를 그냥 가지고 온 것이다. 이것은 레벨 블루프린트이기 때문에 가능하다.

 

다른 레벨의 레벨 블루프린트에 똑같은 그래프를 복붙하였으나, 위 사진을 보면 BeginPlay 였던 것이 CustomEvent로 바뀌었다. 사실 BeginPlay는 LifeCycle함수이기 때문에 두 개 이상 존재할 수 없다.

 

따라서 이렇게 시퀀스를 이용해서 순서를 지정해준다. Then 0의 노드끝까지 실행 후 다음 Then 인덱스를 실행한다.

이전 사진에서 미확인으로 되어있던 노드는 다른 레벨에있던 오브젝트를 가져온 것이기 때문에 현 레벨에 있는 시퀀서 오브젝트를 가지고 온다.

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유