콘텐츠 쿠킹

게임에서 사용되는 애셋에 대해 플랫폼 전용 콘텐츠를 생성하는 법입니다.

Windows
MacOS
Linux

언리얼 엔진에서는 콘텐츠 애셋을 내부적으로 사용되는 특정 포맷으로 저장하는데, 텍스처 데이터에는 PNG, 오디오에는 WAV 식입니다. 그러나 이러한 콘텐츠들은 다양한 플랫폼에 맞는 여러가지 포맷으로 변환해줘야 합니다. 해당 플랫폼이 독점 포맷을 사용한다든가, 언리얼의 애셋 저장 포맷을 지원하지 않는다든가, 메모리 또는 퍼포먼스 측면에서 더욱 효율적인 포맷이 존재한다든가 하는 이유때문입니다. 이렇게, 내부 포맷에서 플랫폼 전용 포맷으로 콘텐츠를 변환하는 프로세스를 일컬어 cooking, 쿠킹이라 합니다.

명령줄에서 쿠킹하기

게임 데이터 쿠킹을 위해서는, Cook 커맨드렛 을 사용해야 합니다.

기본적인 쿠킹 방법은 다음과 같습니다:

UE4Editor.exe <GameName or uproject> -run=cook -targetplatform=<Plat1>+<Plat2> [-cookonthefly] [-iterate] [-map=<Map1>+<Map2>]

또는

UE4Editor-Cmd.exe <GameName> -run=cook -targetplatform=<Plat1>+<Plat2> [-cookonthefly] [-iterate] [-map=<Map1>+<Map2>] 

커맨드렛은 -run=cook 을 붙여 실행해야 하며, 쿠킹할 플랫폼 역시 지정해 줘야 합니다. 그러면 지정된 플랫폼에 대해 쿠킹된 데이터가 생성되어 아래 위치에 저장됩니다:

<Game>/Saved/Sandboxes/Cooked-<Platform>

옵션

옵션

설명

-targetplatform=<Plat1>+<Plat2>

쿠킹할 플랫폼을 지정합니다. 사용가능한 플랫폼은 WindowsNoEditor, WindowsServer, LinuxServer, PS4, XboxOne, IOS, Android 입니다.

-iterate

쿠커가 철지난(OOD) 항목만 쿠킹하도록 설정합니다. 이 옵션이 없으면 샌드박스 디렉터리를 삭제하고 모든 것을 다시 쿠킹합니다.

-Map=<Map1>+<Map2>+...

빌드할 맵을 지정합니다.

-cookonthefly

쿠커가 서버 모드에서 시작되도록 합니다. 그러면 게임 접속을 기다리다가 쿠킹된 데이터를 요청에 따라 제공해 주는 서버가 실행됩니다. 이 옵션이 사용되면 게임은 명령줄에 -filehostip= 옵션을 붙여야 서버에 접속 가능합니다.

-MapIniSection=<ini file section>

맵 이름이 포함된 ini 파일 섹션을 지정합니다. 쿠커는 지정된 섹션에 지정된 모든 맵을 쿠킹합니다.

-UnVersioned

쿠킹된 패키지 전부를 버전 없이 저장합니다. 그러면 이들은 로드시 현재 버전인 것으로 간주됩니다.

-CookAll

모두 쿠킹합니다.

-Compressed

쿠커더러 쿠킹된 패키지를 압축하라 이릅니다.

Select Skin
Light
Dark

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼