본문 바로가기

볼봇의 코딩 생활/언리얼한 엔진

[UE4] 언리얼 에디터에서 외부 모듈 리로드

한동안 (지금도) 시험기간이 겹쳐서 글을 올리지 못했습니다...

 

잠깐 시간이 비어서 이번에 새로 알게된 내용에 대해 정리해보려고 한다.

 

외부 모듈 (프로젝트 내 서브 모듈이나 플러그인 등...) 을 추가 하게 되면, 주 모듈과 다르게 핫리로드가 안된다.

즉, 빌드를 해도 바로 적용되지 않고, 에디터를 재시작해야 변경 사항이 적용 된다는 것.

 

이를 해결할 방법을 찾아봤지만, 아쉽게도 별달리 없으며, Live C++ 플러그인을 사용하거나

수동으로 리로드를 해줘야 한다고 한다.

 

참고로, Live C++ 플러그인은 UE 4.22 부터 사용 할 수 있으므로, 필자가 사용하는 버전에서는 지원하지 않는다.

https://docs.unrealengine.com/ko/Support/Builds/ReleaseNotes/4_22/index.html

 

언리얼 엔진 4.22 릴리즈 노트

언리얼 엔진 4.22 릴리즈 노트입니다.

docs.unrealengine.com

엔진을 조망간 업데이트 해야겠다.

 

 

하여튼, 에디터 내에서 수동으로 리로드를 해 주는 방법밖에는 없다.

 

 

환경 구성

우선 프로젝트에 새로운 플러그인을 추가했다.

(서브 모듈을 추가해도 괜찮다.)

 

 

 

필자는, Plugins 폴더에 FileExplorer 라는 플러그인을 새로 추가해둔 상태 이다.

 

 

 

 

 

C++ 파일을 수정하고, 컴파일 또는 ctrl + shift + b (빌드) 를 하지 말고, "모듈" 탭을 새로 연다.

 

 

모듈 탭 열기

 

모듈 탭을 열면, 아래와 같은 탭이 하나 뜬다.

 

 

 

엔진에 로드된 모듈들 이다. 검색을 통해 본인이 추가한 플러그인(또는 서브 모듈) 을 찾는다.

(필자는 FileExplorer 이다)

 

 

 

 

여기서 리컴파일을 눌러주면 수정한 코드가 적용된다.

 

 

 

모듈 창을 컨텐츠 브라우저 옆에 작게 띄워두고 사용해도 편리 하다.

조금 더 나아가 단축키를 만들어서 외부 모듈만 따로 리로드 할 수 있도록 해도 될 것이다.