
언리얼 기초 · 약 3분
참조를 유지하면서 Content 폴더 정리하기
에셋 이동·리다이렉터·기본 맵 설정을 함께 확인해 폴더 정리가 게임 동작을 깨뜨리지 않게 합니다.
Wolfgadeok · 업데이트
폴더 구조는 기능 경계를 보여 주기
ThirdPerson 예제의 캐릭터를 게임용 이름으로 바꾸고 애니메이션, 포즈, 리타겟 자산을 하위 폴더로 나누면 역할별로 정리할 수 있습니다. 폴더 정리는 보기 좋게 만드는 일만이 아닙니다. 어떤 자산이 외부 원본인지, 어떤 자산이 프로젝트에서 수정한 것인지, 어느 캐릭터의 결과물인지 드러내는 작업입니다. 외부 패키지와 게임용 파생 자산을 나누면 재수입이나 업데이트 때 충돌 범위를 줄일 수 있습니다.
예를 들어 캐릭터별 Meshes, Animations, Rigs를 두고 여러 캐릭터가 공유하는 입력과 UI는 별도 위치에 둘 수 있습니다. 모든 프로젝트가 같은 트리를 따라야 하는 것은 아닙니다. 중요한 것은 한 목적의 자산을 찾기 쉬우며 이름과 소유 범위가 일관된 것입니다. 폴더 색은 보조 수단일 뿐 실제 참조 관계를 보장하지 않습니다.
탐색기 이동과 에디터 이동을 구분하기
uasset을 운영체제 탐색기에서 옮기면 Unreal이 참조를 갱신할 기회를 놓칠 수 있습니다. Content Browser에서 이동하거나 이름을 바꾸고 저장합니다. 에디터는 옛 경로에 Redirector를 남겨 아직 로드되지 않은 패키지의 참조가 새 위치를 찾게 할 수 있습니다. 이 중간 자산은 단순 쓰레기 파일이 아니므로 폴더가 비어 보이지 않는다고 바로 지우지 않습니다.
이동을 마친 뒤 관련 자산을 저장하고 Redirector의 Fixup 결과를 확인합니다. 참조 패키지가 읽기 전용이거나 일부가 누락됐다면 정리가 완전히 끝나지 않을 수 있습니다. 문제 없이 열린 현재 레벨 하나만 보고 판단하지 말고 다른 맵과 게임 시작 경로도 확인합니다. 코드나 외부 데이터가 경로를 문자열로 직접 저장했다면 자동 갱신 대상인지 따로 검사해야 합니다.
예제 맵을 지우기 전 확인하기
새로운 시작 맵을 만들었다면 Editor Startup Map과 Game Default Map, 레벨의 GameMode Override를 확인합니다. BasicMap은 이런 맵에 붙일 수 있는 예제 이름입니다. 에디터가 새 맵에서 열린다는 사실과 패키지 게임이 그 맵으로 시작한다는 사실은 다릅니다. 사용하지 않는 예제 폴더도 다른 자산이 참조하고 있는지 점검한 다음에 정리합니다. 이동 작업과 기능 수정은 가능하면 커밋을 나누어 문제가 생겼을 때 복구 범위를 작게 유지합니다.
- 정리 전 정상 동작 상태를 커밋하거나 별도 보존합니다.
- Content Browser에서 작은 자산 묶음씩 이동하고 저장합니다.
- Redirector와 참조 관계를 점검합니다.
- 기본 맵·기본 Pawn·입력·애니메이션을 다시 실행하고 패키지에서도 확인합니다.