- Engine modules are out of date 오류
프로젝트 소스에 별다른 수정도 하지 않았는데 갑자기 프로젝트 에디터가 크래쉬가 났다.
로그에는 AddOnScreenDebugMessage가 문제가 있는 것 처럼 나오길래 해당 코드를 모두 없앤 후 빌드해 봐도 계속 크래쉬가 났다.
그래서 결국 git reset --hard 로 이전 버전으로 돌려서 실행을 해봤지만 failed to launch editor 창이 뜨며 에디터가 실행되지 않았다.
프로젝트 솔루션 파일을 다시 생성해서 빌드해봐도 / 엔진 소스를 다시 빌드해봐도 modules out of date 창만 계속해서 떴다.
- 해결
내 프로젝트 폴더의 {프로젝트이름}.Target.cs 와 {프로젝트이름}Editor.Target.cs 코드가
DefaultBuildSettings = BuildSettingsVersion.V2; 인지 확인하고 -> 내 코드는 되어있었지만 해결이 안되었다.
해결이 안된다면
언리얼엔진 소스 코드의 Engine/Source/Developer/DesktopPlatform/Private/DesktopPlatformBase.cpp 파일에서
Arguments += " -Progress -NoEngineChanges -NoHotReloadFromIDE"; 라인에서 끝의 두 옵션을 빼서
Arguments += " -Progress"; 로 수정 후 다시 빌드하면 된다
내 프로젝트는 엔진과 프로젝트 버전 역시 동일한 버전(64비트)로 컴파일 하고 있어 해당 문제가 왜 일어나는지는 모르겠지만 일단 해결했다.
- 엔진 소스 빌드가 잘못 되어 .dll에 오류 날 때 해결법
Engine modules are out of date 문제가 해결되기 전에 방법을 찾던 중 프로젝트 코드의 문제가 아닌 것 같아
언리얼엔진 소스를 '다시 빌드'했는데 GeometryCacheTracks.dll 파일에 오류가 있다고 뜨면서 빌드에 실패했고 엔진 소스 빌드로 생성된 UE4Editor.exe 도 아래 창을 띄우며 실행되지 않았다.
엔진 소스를 빌드한 경로\Engine\Plugins\Experimental\GeometryCache\Binaries\Win64 에서 GeometryCacheTracks.dll를 삭제한 뒤 빌드하니 제대로 생성 되었다. 문제를 일으키는 파일을 삭제하고 빌드를 다시 하면 해결되는 듯 하다.
'Unreal Engine > UE4 C++ 게임 개발 공부' 카테고리의 다른 글
[짤막 팁] UE4 클래스 생성 시 FObjectInitializer 사용법 (0) | 2022.06.30 |
---|---|
[짤막 팁] UE4의 벡터 정규화(Normalize) (0) | 2022.06.25 |
[UE4 C++] 애니메이션 시스템 활용(Animation Montage, 델리게이트, Animation Notify) (0) | 2022.01.13 |
[UE4 C++] 디버깅을 위한 로그 UE_LOG, 로깅 환경 설정 (0) | 2022.01.12 |
[UE4 C++] 애니메이션 시스템 (애니메이션 블루프린트) (0) | 2022.01.12 |