본문 바로가기
언리얼엔진

유틸리티 에디터 만들기

by 송파감자 2024. 9. 25.

몇달 전 동료가 만들어준 유틸리티 에디터를 처음 써봤다.

BP 기반으로 만들어진 에디터인데, 자동화 기능 만들 때 입맛 따라 만들어 쓸 수 있다.

아래 링크는 레퍼런스한 유튭 

-> https://www.youtube.com/watch?v=9mU4XS6RFd8

 

1. 에디터 유틸리티-> 에디터 유틸리티 블루프린트-> 에셋 액션 유틸리티

 

2. 지원되는 클래스를 지정해준다. 내가 쓸 것들로만! 

지정한 클래스 자식들에서만 이 에디터를 쓰겠다는 뜻

예시에서는 MaterialInstanceConstant를 써줬다

이렇게 함수를 만들면! 어디서 보냐?

당연하겠지만 함수가 많다면 카테고리 설정하면 더 정리하기 쉽

3. 지원하기로한 MatInstance에서 우클릭-> 스크립팅된 애셋 액션에서 만든 함수를 찾을 수 있다!

물론 카테고리르

* 이건 영상에서 테스트로 만든 함수

 

* 그런데 난 분명 동료가준 위젯을 썼단 말이지? 내가 만든 에디터 유틸리티 블루프린트를 요걸 눌러서 위젯으로 만들 수 있다

 

4. 따다~ 에디터 유틸리티 위젯이 내 입맛대로 만드는 위젯BP 같은 건데 유틸리티 위젯 실행 누르면 된다. 물론 안에 내용은 만들어 넣기^^

 

* 이 영상을 보고 아.. 이런 게 있구나 정도만 익혔다. 직접 써 먹으려면 연습할 예제가 더 필요할 듯..

아직은 노가다가 더 빠르다...

 

* 에디터 유틸리티 태스크란?

 

아래 출처는 내 비서의 답변:

에디터의 자동화 및 사용자 정의 작업을 수행할 수 있게 해주는 기능

반복적인 작업을 자동화하거나, 특정 에디터 관련 작업을 스크립트화하여 더욱 효율적으로 작업 가능

 

주요 노드 및 함수

  • Get Selected Actors: 현재 에디터에서 선택한 액터들을 가져오는 함수.
  • For Each Loop: 에디터에서 여러 액터를 순회하면서 반복 작업을 수행할 때 사용.
  • Set Actor Location: 특정 액터의 위치를 변경하는 함수.
  • Editor Utility Widget: UI를 추가해서 더욱 직관적인 사용자 정의 툴을 만들 수 있는 기능.

활용 예시:

  • 레벨 내의 모든 조명을 일괄적으로 조정하거나, 특정 자산을 찾고 편집하는 작업을 에디터 유틸리티 태스크를 사용하여 자동화하면 큰 프로젝트에서 반복 작업의 부담을 줄임
비긴플레이 처럼 Event BeginExecution으로 시작함

 

후... 어렵다...