기본적으로 Level Blueprint는 ALevelScriptActor, 즉 Actor 형식이다. 이를 상속받아 새로운 Level Actor를 생성한다.
자신의 LevelScriptActor에서 추가한 함수가, Level Blueprint에서도 보일 수 있게 수정할 수 있다. 다음은 Actor들의 Reference를 받아 Destroy 시키는 DestroyActors 함수이다.
자신의 LevelScriptActor에서 작성한 함수가 Level Blueprint에서 보이려면 UFUNCTION과 Specifier 작성 필수이다.
눈에 띄는건 DestroyActors의 UPARAM(ref) 이라는 매크로인데, 이는 함수가 받는 인자가 Blueprint 상에서는 왼쪽
에서 와야 한다는 뜻이다.
( -> 즉 UPARAM(ref)를 사용하지 않으면, Actors 라는 인자는 Blueprint 노드의 오른쪽에 위치하게 된다. )
만약 UPARAM(ref) 을 사용하지 않으면, 블루프린트는 인자를 Out 형식으로 쓸 수도 있기 때문에 아래와같이 배치된다.
(즉 한 함수를 통하여 2 개 이상의 값이 반환되어야 한다면, Return 타입만으로는 관리할 수 없다,
이를 위해 인자로도 정보를 받아낼 수 있게 하는데, Blueprint는 함수의 인자가 실제로 정보를 받는 인자인지, 정보를 밖으로 배출하는 인자인지 알 수 없기 때문에 UPARAM(ref) 매크로로 관리해준다.)
블루프린트에서 왼쪽은 받는 인자이고, 오른쪽은 배출하는 인자 이다. ( In & Out )
나만의 연습장 :: [Unreal Engine 4] Level Blueprint 를 C++로 접근하기 (tistory.com)
'게임엔진 > Unreal' 카테고리의 다른 글
[Unreal] 미니맵 및 캐릭터 위치 표시 (0) | 2023.11.15 |
---|---|
[Unreal] Programming Subsystem (프로그래밍 서브시스템) (0) | 2023.11.14 |
[Unreal] 언리얼 비동기 애셋 로딩 (Asynchronous Loading) (0) | 2023.11.06 |
[Unreal] Reflection (리플렉션) (0) | 2023.10.26 |
[Unreal] GetClass 와 StaticClass 의 차이 (0) | 2023.10.26 |