에셋 통합 은 여러 에셋을 하나의 에셋으로 결합하는 액션을 말합니다. 예를 들어, 똑같은 머티리얼이 많으면 콘텐츠가 동일하더라도 프로젝트 크기가 커지게 됩니다.
언리얼 엔진에서 레퍼런스 대체(Replace References) 툴을 사용하여 다음과 같은 결과를 얻을 수 있습니다.
-
이러한 중복 에셋을 가리키는 모든 레퍼런스를 통합하여 단일 에셋을 가리키게 합니다.
-
다른 모든 중복 에셋을 삭제합니다.
레퍼런스 대체 툴을 잘못 사용하면 에셋이 잘못 삭제될 수 있습니다. 삭제된 에셋은 복구할 수 없으므로 이 툴은 항상 조심해서 사용해야 합니다.
에셋 통합 작동 방식
통합 프로세스는 3단계로 진행됩니다.
먼저, 레퍼런스 교체 툴은 모든 통합 대상 유효 오브젝트에 대해 해당 오브젝트의 모든 레퍼런스를 이미 로드되어 있는 오브젝트 또는 에셋 내의 '하나의 통합 오브젝트'에 대한 레퍼런스로 대체하려고 시도합니다. 즉, 통합 대상 오브젝트 중 하나를 참조하고 있는 맵이나 에셋이 이미 열려 있는 경우, 레퍼런스 교체 툴은 이를 즉시 업데이트하려고 시도합니다.
그런 다음, 레퍼런스 교체 툴은 통합 대상 오브젝트를 직접 삭제하려고 시도합니다. 이 시도는 실패할 수 있는데, 이에 대한 자세한 내용은 이 페이지의 경고 및 제한 섹션을 참조하세요.
마지막으로, 삭제에 성공하면 이 툴은 삭제된 오브젝트 위치에 오브젝트 리디렉터 를 남깁니다. 이 리디렉터는 삭제된 오브젝트를 참조하는 언로드된 에셋을 통합 오브젝트로 리디렉션합니다.
레퍼런스 대체 툴 사용 전
일부 레퍼런스를 지울 수 없거나 에셋을 삭제할 수 없는 경우, 레퍼런스 대체 툴이 유효한 에셋을 통합하지 못하는 경우가 있습니다. 이는 중대한 오류로, 에셋의 일부 사용은 통합되고 다른 사용은 통합되지 않는 부분 통합이라는 결과가 발생합니다. 이런 일이 발생하면 영향받은 어떠한 에셋도 저장하면 안 됩니다. 모든 서브 에디터를 닫고 언리얼 엔진을 재시작한 다음, 통합 프로세스를 다시 진행해야 합니다.
레퍼런스 대체 툴을 실행하기 전에, 블루프린트 에디터(Blueprint Editor)나 스태틱 메시 에디터(Static Mesh Editor) 등, 통합될 에셋을 사용하는 모든 서브 에디터를 닫아야 합니다.
호환되는 에셋을 선택했는지 항상 확인해야 합니다. 우발적인 데이터 손상이나 손실을 방지하기 위해 레퍼런스 대체 툴은 같은 클래스나 타입을 공유하는 에셋만 통합할 수 있습니다. 머티리얼과 텍스처만은 예외입니다. 즉, 예를 들어 머티리얼은 정확하게 같은 타입이 아니더라도 데칼 머티리얼에 통합될 수 있지만 스태틱 메시에는 통합될 수 없습니다.
레퍼런스 대체 툴은 액터를 대체하기 위한 대안으로 사용해서는 안 됩니다.
통합할 에셋이 통합할 에셋 중 하나를 참조하는 경우, 참조되는 에셋은 통합되지 않습니다.
레퍼런스 대체 툴 사용하기
이 예시에서는 여러 머티리얼이 하나의 머티리얼로 통합되는 방식을 보여줍니다. 아래 스크린샷에 보면 똑같은 콘텐츠가 있는 네 개의 MI_Solid_Blue
머티리얼 인스턴스가 있습니다.

이러한 머티리얼 에셋을 통합하면서 언리얼 엔진에 아무런 문제도 일으키지 않으려면 다음 단계를 따르세요.
-
콘텐츠 브라우저(Content Browser) 에서 통합할 에셋을 선택합니다. 이 단계를 완료하는 데 도움이 더 필요하다면 액터 선택하기 페이지를 참조하세요.
중복 에셋이 서로 다른 폴더에 있다면 동시에 모든 중복 에셋을 보고 선택할 수 있도록 콘텐츠 브라우저의 세팅(Settings) 메뉴에서 폴더 표시(Show Folders) 옵션을 비활성화합니다.
-
선택한 에셋을 우클릭합니다. 그런 다음, 콘텐츠 메뉴에서 에셋 액션(Asset Actions) > 레퍼런스 대체(Replace References) 를 선택합니다.
그러면 선택한 모든 에셋이 포함된 레퍼런스 대체 대화창이 열립니다. 이 창에 에셋을 더 추가하고 싶으면 추가할 에셋을 콘텐츠 브라우저 에서 에셋 목록으로 드래그합니다.
보통 같은 타입의 선택한 오브젝트만 통합되지만, 텍스처와 머티리얼에 대해서는 약간의 예외가 허용됩니다. 컨텍스트 메뉴에 레퍼런스 대체 옵션이 보이지 않거나 콘텐츠 브라우저에서 에셋을 드래그 앤 드롭할 수 없다면, 같은 타입의 에셋만 선택했는지 확인하세요. 실수로 에셋을 추가했다면 대화창에서 해당 에셋을 선택하고 키보드의 Delete 키를 눌러 제거할 수 있습니다.
-
목록에서 단일 통합 에셋으로 사용할 에셋을 선택합니다. 목록에서 해당 에셋을 클릭하면 됩니다.
-
(선택 사항) 더티 에셋 저장(Save dirtied assets) 옵션을 활성화합니다. 그러면 통합에 영향을 받는 모든 에셋이 저장됩니다.
이 옵션을 활성화하면 에셋 통합(Consolidate Assets) 클릭 후에 이러한 에셋을 저장할지 묻는 추가 확인 대화창이 표시됩니다. 통합에 실패하면 에셋은 저장되지 않으며 에디터에 경고가 표시됩니다.
-
에셋 통합 을 클릭합니다.
에셋 통합 버튼은 대화창에 두 개 이상의 에셋이 있고 하나 이상의 에셋이 선택될 때까지 회색으로 표시되어 사용할 수 없습니다.
-
표시된 확인 대화창에서 통합 후 삭제될 에셋 목록을 검토한 다음 삭제(Delete) 를 클릭합니다.
레퍼런스 대체 툴 사용 이후
레퍼런스 대체 툴은 오브젝트 리디렉터 를 엄청나게 사용합니다. 레퍼런스 대체 툴을 사용한 다음에는 Fixup Redirects 커맨드릿을 사용해야 합니다. 자세한 내용은 리디렉터를 참조하세요.
에셋을 통합한 다음에는 통합된 에셋을 저장한 후에 통합된 오브젝트 중 하나를 참조하는 언로드된 에셋을 메모리에 로드해야 합니다.