언리얼 엔진에서 C++를 사용하기 시작하면서 많은 분들이
에디터를 사용하여 C++ 클래스를 만들곤 합니다.
그리고 언리얼 엔진에서는 이러한 사용자들을 배려하여 라이브 코딩이라는 기술을 지원합니다.
라이브 코딩
런타임 중에 게임의 바이너리를 리컴파일 및 패치합니다.
docs.unrealengine.com
공식문서상에서는 라이브 코딩을 위와 같이 정의하였습니다.
하지만, 언리얼 엔진을 접한 지 얼마 안된 분들께서는 이 라이브 코딩을 사용하시면서 반드시 겪는 문제가 있습니다.
위와 같이 언리얼 엔진에서 사용할 변수를 정의하고
언리얼 에디터로 돌아와 detail 패널에서 확인해보면
넣어주고자 했던 변수가 올바르게 들어간 것을 확인할 수 있습니다.
이루고자 했던 바를 이뤘으니 기쁜 마음으로 종료하여 다음에 확인해보면,
음?
넣어주었던 변수가 감쪽같이 사라져 있습니다.
혹시나 하는 마음에 에디터를 다시 확인해보면 코드도 멀쩡하고 언리얼의 문제인가 싶어
다시 라이브 코딩을 시도하니 변수가 들어가는 것이 확인되었습니다.
안도하는 마음으로 다시 종료하여 다음 날 확인해보아도 변수는 유지되지 않는 것을 볼 수 있습니다.
여기서 염두하고 계셔야 하는 가장 중요한 것은 라이브 코딩은
에디터에서만 영향을 받고, 디스크에 영구적으로 저장하지 않는다 는 것입니다.
따라서 프로젝트를 종료할 때마다 변수는 프로젝트에 남지 않고 사라져 버리는 것입니다.
이를 해결하는 방법은 2가지 입니다.
1) 에디터에서 빌드한다
2) 라이브코딩 기능을 사용하지 않는다
첫 번째 방법은 간단합니다.
1-1)
먼저 언리얼 에디터를 종료해세요
1-2)
사용하던 에디터(저는 Visual Studio Code에서 진행하였습니다)에서 빌드를 진행합니다
1-3)
언리얼 엔진으로 다시 돌아와 확인해보면 이제는 정상적으로 변수가 프로젝트에 포함되어 있는 것을 확인할 수 있습니다.
두 번째 방법 역시 간단합니다.
2-1)
상단의 Edit의 Editor Preferences로 들어갑니다
2-2)
Genereal의 Live Coding으로 들어가 Enable Live Coding을 체크해제 해주시면 됩니다.
이 경우에도 기존의 Live Coding버튼을 통해 컴파일이 가능합니다.
'언리얼 > 에러 또는 팁' 카테고리의 다른 글
언리얼 에디터에서 C++ 클래스 생성 시에 폴더별로 분류하는 방법 (0) | 2024.07.07 |
---|---|
언리얼 로그 메세지의 한글이 깨지는 현상과 해결책 / 부작용 (0) | 2024.03.29 |
오토 세이브 기능 활용하기 (0) | 2024.02.18 |
언리얼 엔진 작업 결과물을 저장할 때 생기는 오류 (0) | 2024.01.30 |
언리얼엔진 블루프린트 사용 중 화면이 멈추는 현상에 관하여 (0) | 2024.01.30 |