반응형
이번 글에는 프로젝트 패키징(Packaging) 방법과 클라이언트에게 제공하여 코스 초반부터 구현했던 모든 기능을 직접 체험하고 변경할 수 있도록 하는 방법을 알아보겠습니다.
1. 프로젝트 패키징 사전 설정
패키징을 시작하기 전에 **프로젝트 설정(Project Settings)**에서 몇 가지 중요한 사항을 확인하고 설정해야 합니다.

A. 일반 설정 (선택 사항)
- 프로젝트 이름, 버전, 회사 이름, 홈페이지, 지원 연락처 등 프로젝트 세부 정보를 설정할 수 있습니다. (예: 프로젝트 이름 'Farmhouse')

B. 맵 및 모드 설정 (필수)
- Maps & Modes 섹션으로 이동합니다.
- **Game Default Map(게임 기본 맵)**을 메인 맵인 Main 맵으로 설정합니다. 이는 게임이 시작될 때 로드되는 기본 맵을 지정하는 것입니다.

2. 패키징 필수 구성 요소 설치 및 디버깅
프로젝트를 Windows용으로 패키징하려면 특정 Windows SDK 및 .NET 구성 요소가 필요합니다.
- 초기 패키징 시도 및 오류 확인: 처음 패키징을 시도하면 대개 Windows SDK가 설치되지 않았거나 제대로 구성되지 않았다는 오류 메시지가 나타납니다.
- Windows SDK 설치: 오류 메시지에서 안내하는 대로 Windows SDK를 다운로드하여 설치합니다. (용량이 크므로 디스크 공간을 확보해야 합니다.)


- NET Core 3.1 SDK 설치:
- .NET Core 3.1 SDK 버전을 찾아 다운로드하고 설치합니다. (언리얼 엔진의 특정 버전에서는 이 버전의 .NET이 필요합니다.)


- Visual Studio 설치 및 설정 (필수):
- Visual Studio Community Edition (무료 버전)을 다운로드하고 설치합니다.
- 설치 시, C++를 사용한 데스크톱 개발(Desktop development with C++) 및 C++를 사용한 게임 개발(Game development with C++) 워크로드를 반드시 선택하여 설치합니다.



- 파일 복사 (AutomationTool):
- 언리얼 엔진이 특정 파일(hostfxr.dll 등)을 찾지 못해 오류가 발생할 수 있습니다.
- Epic Games 폴더 내 언리얼 엔진 버전 폴더에서 필요한 DLL 파일을 찾아 Engine/Binaries/DotNET/AutomationTool 폴더에 복사하여 붙여넣습니다. (이 단계는 발생 가능한 문제를 미리 해결하기 위한 것입니다.)
3. 최종 패키징 및 오류 수정 (TV, 사운드, 기타)
필수 구성 요소를 모두 설치했다면, 다시 패키징을 시도합니다.

- 프로젝트 패키징 실행: File > Platforms > Windows > Package Project를 선택하고 저장할 폴더를 지정합니다.
- 테스트 및 디버깅 (Play Start):
- 패키징된 파일을 실행했을 때 캐릭터가 움직이지 않거나 보이지 않는 문제가 발생할 수 있습니다. 이는 씬에 Player Start(플레이어 시작) 액터가 없기 때문입니다.
- Player Start를 씬에 드래그 앤 드롭하여 플레이어가 시작할 위치를 지정합니다.


- 패키징 후 종료 명령 추가 (Escape):
- 패키징된 게임에서 Alt + F4 대신 Escape 키로 종료할 수 있도록 설정합니다.
- **레벨 블루프린트(Level Blueprint)**를 열고 Keyboard Escape 노드에 Execute Console Command 노드를 연결하고, 명령으로 quit를 입력합니다.



- 충돌(Collision) 문제 해결:
- 계단 등에서 플레이어가 움직이지 못하고 막히는 경우, 해당 스태틱 메시를 더블 클릭하여 Collision 설정을 확인합니다. Add Box Simplified Collision 또는 Complex Collision을 추가하여 충돌을 수정합니다.

TV 비디오 및 사운드 오류 수정 (핵심)
패키징 후에도 TV 비디오가 재생되지 않거나 사운드가 작동하지 않는 치명적인 오류를 해결합니다.

- 비디오 경로 문제 해결:
- 비디오 파일을 저장한 폴더 이름이 언리얼 엔진에서 인식하는 절대 경로와 일치하지 않아 발생합니다.
- Content 폴더 내에 비디오를 저장할 폴더 이름을 movies (복수형)로 정확하게 지정하고, 비디오 파일을 그 안에 복사합니다. (이전 폴더 이름이 'movie'였다면 'movies'로 변경해야 합니다.)


- 비디오 형식 문제:
- 언리얼 엔진이 M4V 파일 형식을 지원하지 않을 수 있습니다. Format Factory와 같은 변환 도구를 사용하여 비디오 파일을 MP4 형식으로 변환한 후 movies 폴더에 넣습니다.
- 사운드 블루프린트 문제 해결:
- 일부 **오디오 큐(Sound Cue)**가 패키징 환경에서 작동하지 않을 수 있습니다.
- 사운드 액터를 선택하고 블루프린트 클래스로 변환합니다.

-
- 이 새로운 사운드 블루프린트의 Event Begin Play에서 Set Sound 노드를 사용하여 원하는 사운드 큐를 지정합니다. (이렇게 클래스 블루프린트 내에서 사운드를 설정하면 위젯 블루프린트와의 상호작용이 패키징 환경에서도 안정적으로 작동합니다.)

-
- 사운드 버튼 클릭 시 Flip Flop을 사용하여 Stop 명령이 먼저 실행되고 Play 명령이 나중에 실행되도록 순서를 조정합니다 (오디오가 레벨에서 이미 재생 중일 때, 첫 클릭 시 정지부터 해야 다시 재생되지 않습니다)

4. 최종 패키징 확인
모든 오류를 수정하고 나면, 다시 한번 프로젝트를 패키징합니다.
- 이전 패키지 폴더는 Shift + Delete로 삭제하고 새롭게 패키징합니다.
- 두 번째 패키징부터는 속도가 훨씬 빨라집니다.
- 패키징된 파일을 실행하여 TV 재생/정지, 사운드 켜기/끄기, 모델 변경 등 모든 기능이 완벽하게 작동하는지 최종 확인합니다.
반응형
'Unreal Engine' 카테고리의 다른 글
Unreal Engine 모델 변경(Changing Models)하는 방법 (0) | 2025.10.08 |
---|---|
Unreal Engine 물 애니메이션(Water Animation)켜고 끄는 방법 (0) | 2025.10.08 |
Unreal Engine 미디어(Media)를 켜고 끄는 방법 (0) | 2025.10.07 |
Unreal Engine 조명과 소리를 켜고 끄는 방법 (0) | 2025.10.07 |
Unreal Engine 재질(Material)을 베리언트 매니저(Variant Manager)를 활용하여 손쉽게 변경하기 (0) | 2025.10.06 |