[언리얼][Unreal Engine 5] C++ 클래스가 사라질 때

늦잠·2024년 2월 2일
0

블루프린트가 유효하지 않은 클래스에서 파생되어 로드할 수 없습니다. 이 블루프린트의 부모 클래스가 제거되지는 않았는지 확인해보세요! 계속할까요? 에디터에서 크래시가 발생할 수 있습니다.
c++ 클래스를 만들고 거기서 파생된 블루클래스를 만든 후 언리얼 엔진을 껐다 다시 키니 이런 경고문이 나옸다.








c++ 폴더를 가보니 해당 c++ 클래스가 사라져 있었다. 다시 cmd 창에서 LiveCoding.Compile을 통해 컴파일을 진행하면 다시 컴파일이 진행되면서 다시 클래스가 생기는 하지만









그 c++ 클래스에서 파생된 블루프린트는 맛탱이가 가버렸다. 부모 클래스는 none이 되었고 다시 바꿔 주려해도 검색창에 해당 클래스가 검색 되지 않는다. 이하는 구글링을 통해 찾은 해결법이다.









프로젝트를 종료하고 해당 프로젝트 폴더에서 Binaries폴더와 Intermediate폴더를 삭제한다.

Binaries - 컴파일 도중 생성되는 실행 파일이나 기타 파일이 포함됩니다.
Intermediate - 엔진이나 게임 빌드 도중 생성된 임시 파일이 들어 있습니다. 게임 디렉터리에서 셰이더는 Intermediate 디렉터리에 저장됩니다.









다시 프로젝트를 열면 이런 경고문이 뜨면서 재빌드가 시작된다.









이후 c++클래스도 사라지지 않고 모든게 정상적으로 실행되는 것을 볼 수 있다.

(거기에 더해 게임모드를 하나 만들고 월드 세팅에서 기본 게임 모드를 해당 게임모드로 교체하라는데 이유는 모르겠다)







이후 편집 - 에디터 개인설정에서 시작 시 강제 컴파일에 체크해 두면 프로젝트가 실행되면서 자동으로 컴파일이 진행된다고 한다. 체크해 두자.


추가 - 그냥 아무것도 안 하고 시작 시 강제 컴파일에만 체크한 후에 껐다 켜도 될 수도.








출처 : https://forums.unrealengine.com/t/my-c-classes-disappear-after-reopening-the-project-why/535990/2

profile
피카

0개의 댓글