▣ 플랫폼 설정 (PC, Mac & Linux Standalone 선택)
먼저, 프로젝트가 PC용으로 빌드되도록 설정해야 합니다. 이 작업을 수행하려면 다음 단계를 따릅니다.
File > Build Settings 메뉴를 엽니다.
Platform 목록에서 "PC, Mac & Linux Standalone"을 선택합니다.
"Platform" 아래에서 "Target Platform"을 Windows로 설정합니다.
Switch Platform 버튼을 클릭하여 플랫폼을 전환합니다.
이제 PC 플랫폼으로 빌드할 준비가 되었습니다.
▣ Build Settings에서 Windows 플랫폼을 선택할 때 나타나는 다양한 옵션들, 특히 Architecture, Copy PDB files와 같은 옵션들은 게임 빌드 시 중요한 역할을 합니다.
이 설정들은 게임을 빌드할 때의 성능, 디버깅 및 배포 방법에 영향을 줄 수 있습니다.
각 옵션에 대해 자세히 설명하겠습니다.
▣ Architecture (아키텍처)
Architecture는 게임을 빌드할 때 사용할 CPU 아키텍처를 선택하는 옵션입니다.
일반적으로 Windows에서는 두 가지 아키텍처 옵션이 있습니다:
x86: 32비트 아키텍처입니다. 32비트 운영체제 및 32비트 CPU에서 실행할 수 있는 빌드를 생성합니다. 이 옵션은 32비트 환경을 지원해야 할 때 유용하지만, 4GB 이상의 메모리를 사용할 수 없습니다.
x86_64: 64비트 아키텍처입니다. 64비트 운영체제 및 CPU에서 실행할 수 있는 빌드를 생성합니다. 더 많은 메모리를 사용할 수 있으며, 더 나은 성능을 제공하는 경우가 많습니다. 대부분의 최신 PC에서는 64비트가 표준이므로, 이 옵션을 사용하는 것이 일반적입니다.
권장 사항: 현재 대부분의 PC는 64비트 아키텍처를 사용하므로, x86_64를 선택하는 것이 좋습니다. 32비트 지원이 필요한 경우에만 x86을 선택하세요.
▣ Copy PDB Files (PDB 파일 복사)
PDB 파일은 디버깅 심볼 파일입니다. Program Database (PDB) 파일은 게임의 빌드 과정에서 생성되며,
디버깅을 위해 사용됩니다. 이 파일은 코드와 관련된 디버깅 정보(변수 이름, 스택 트레이스 등)를 포함하고 있어,
디버깅 도구(Visual Studio 등)에서 버그를 추적하는 데 유용합니다.
Copy PDB files 옵션을 활성화하면, 빌드할 때 PDB 파일이 함께 복사됩니다. 이를 통해 빌드된 게임에서 디버깅을 할 수 있습니다.
권장 사항: 만약 게임을 개발 중이고, 디버깅이 필요하다면 이 옵션을 활성화하는 것이 좋습니다. 그러나 최종 릴리즈 빌드에서는 파일 크기를 줄이기 위해 비활성화하는 것이 일반적입니다.
▣ Development Build (개발 빌드)
Development Build는 디버깅 정보를 포함하고, 최종 릴리즈 빌드에 비해 성능이 덜 최적화된 빌드를 생성합니다.
이 옵션을 활성화하면 다음과 같은 기능이 포함됩니다:
Development Console: 빌드된 게임에서 개발용 콘솔을 사용할 수 있게 합니다. 이를 통해 게임 중에 Debug.Log() 메시지를 실시간으로 확인할 수 있습니다.
Profiling: 유니티 프로파일러를 통해 실시간으로 성능 데이터를 분석할 수 있습니다.
Script Debugging: 스크립트 디버깅을 활성화하여 게임 실행 중 코드의 상태를 확인할 수 있습니다.
권장 사항: 게임 개발 중에 디버깅과 성능 분석을 해야 하는 경우에는 활성화하지만, 최종 릴리즈 빌드에서는 비활성화하여 성능을 최적화하고 디버깅 정보를 제거하세요.
▣ Auto Connect Profiler
이 옵션은 빌드된 게임을 실행할 때 유니티의 프로파일러에 자동으로 연결되도록 설정하는 옵션입니다. 프로파일러는 CPU, 메모리, GPU 사용량 등을 분석하는 도구입니다.
이 옵션을 활성화하면, 빌드된 게임이 실행될 때 유니티 에디터의 프로파일러와 자동으로 연결되어 실시간 성능 데이터를 확인할 수 있습니다.
권장 사항: 개발 중 성능 문제를 추적하고 싶을 때 유용한 옵션입니다. 최종 빌드에서는 비활성화하는 것이 좋습니다.
▣ Compression Method (압축 방법)
빌드된 게임의 크기를 줄이기 위해 사용되는 압축 방식입니다. 선택할 수 있는 옵션은 다음과 같습니다:
LZ4: 빌드 속도는 빠르지만 압축률은 상대적으로 낮습니다. 압축 해제가 매우 빠르기 때문에 큰 프로젝트에서도 로딩 속도가 빠릅니다.
LZ4HC: LZ4보다 더 높은 압축률을 제공하지만, 빌드 시간이 더 오래 걸립니다. 압축 해제 속도는 비슷하지만, 용량을 줄이는 데 더 효과적입니다.
Default: 기본 설정은 압축을 사용하지 않는 것입니다. 빌드 속도가 매우 빠르지만, 결과 파일 크기가 클 수 있습니다.
권장 사항: 일반적으로 LZ4HC를 선택하여 압축률을 최대화하는 것이 좋습니다. 최종 빌드에서는 용량을 줄이기 위해 LZ4HC를 선택하는 경우가 많습니다.
▣ Script Debugging (스크립트 디버깅)
이 옵션을 활성화하면 빌드된 게임에서 C# 스크립트를 디버깅할 수 있습니다. 예를 들어, Visual Studio와 같은 디버깅 도구를 사용하여 게임 실행 중에 브레이크포인트를 설정하고, 변수의 값을 확인하거나 함수의 호출을 추적할 수 있습니다.
권장 사항: 개발 중에는 이 옵션을 활성화하여 디버깅을 편리하게 할 수 있습니다. 최종 빌드에서는 비활성화하여 성능을 최적화합니다.
▣ 해상도 및 그래픽 설정
PC 게임은 다양한 해상도와 그래픽 설정을 지원할 수 있습니다. 이를 설정하려면 다음 단계를 따릅니다.
Edit > Project Settings로 이동합니다.
Player 항목을 클릭합니다.
Resolution and Presentation 섹션에서 다음과 같은 설정을 할 수 있습니다:
Default Screen Width / Height: 기본 화면 크기를 설정합니다.
Fullscreen Mode: 창 모드 또는 전체 화면 모드를 설정합니다.
Resizable Window: 사용자가 창 크기를 변경할 수 있는지 여부를 설정합니다.
Run in Background: 창이 포커스를 잃었을 때에도 게임이 실행되도록 설정합니다.
▣ 빌드 설정 (Build Settings)
플랫폼을 설정한 후에는 빌드 설정을 완료해야 합니다.
File > Build Settings 메뉴로 돌아옵니다.
Scenes in Build 섹션에서 빌드에 포함할 씬들을 선택합니다. 포함할 씬이 목록에 없다면 "Add Open Scenes" 버튼을 클릭하여 현재 열린 씬을 추가할 수 있습니다.
Build 버튼을 클릭하여 빌드 위치와 파일 이름을 지정합니다.
원하는 위치에 파일을 저장하고, 빌드 과정이 완료되면 PC에서 실행할 수 있는 .exe 파일이 생성됩니다.
▣ 기타 중요 설정
게임을 배포하기 전에 고려해야 할 몇 가지 추가 설정입니다.
Quality Settings: 게임의 품질을 설정할 수 있습니다. 이는 해상도, 안티 앨리어싱, 그림자 품질 등과 관련이 있습니다.
Edit > Project Settings > Quality에서 품질을 설정할 수 있습니다.
Input Settings: 사용자가 게임을 플레이할 때 사용할 키보드 및 마우스 입력을 설정할 수 있습니다.
Edit > Project Settings > Input Manager에서 입력 설정을 수정할 수 있습니다.
▣ 빌드 및 실행
설정이 완료되면, 다시 File > Build Settings에서 Build 버튼을 눌러 빌드를 시작합니다. 빌드가 완료되면 .exe 파일을 실행하여 게임이 정상적으로 동작하는지 테스트해 보세요.
▣ 빌드 옵션
빌드할 때 몇 가지 추가 옵션을 선택할 수 있습니다.
Development Build: 개발용 빌드를 생성합니다. 개발 중에 디버깅을 돕는 콘솔 메시지를 추가로 표시해 줍니다.
Autoconnect Profiler: 개발 빌드와 함께 프로파일러를 자동으로 연결합니다.
Script Debugging: 스크립트 디버깅을 활성화합니다. 디버깅 도구를 사용하여 문제를 추적할 수 있습니다.
▣ Product Name: 게임 이름을 설정합니다. 이 이름은 빌드된 실행 파일이나 게임 창의 제목에 사용됩니다.
Company Name: 회사 이름을 설정합니다.
Version: 게임의 버전을 관리할 수 있습니다.
▣ Resolution and Presentation (해상도 및 표시)
이 섹션은 게임이 실행되는 해상도 및 화면 모드를 설정할 수 있습니다.
Default Screen Width / Height: 게임의 기본 화면 크기를 설정합니다.
Fullscreen Mode: 게임이 전체 화면으로 실행될지, 창 모드로 실행될지 설정합니다. 옵션은 다음과 같습니다:
Exclusive Fullscreen: 독점 전체 화면 모드입니다.
Fullscreen Window: 전체 화면 창 모드입니다.
Maximized Window: 최대화된 창 모드입니다.
Windowed: 창 모드입니다.
Resizable Window: 창 크기를 사용자가 조정할 수 있도록 설정할 수 있습니다.
Run In Background: 게임 창이 포커스를 잃었을 때도 계속 실행되도록 설정합니다.
Capture Single Screen: 멀티 모니터 환경에서 화면을 한 개만 사용하도록 설정합니다.
▣ Icon (아이콘)
플랫폼별로 게임의 아이콘을 설정할 수 있는 메뉴입니다. 각 해상도에 맞는 아이콘을 설정할 수 있으며, 여러 사이즈의 아이콘을 제공하여 PC나 모바일에서 잘 보이도록 합니다.
아이콘 이미지를 여러 해상도에 맞춰 넣을 수 있습니다. 유니티는 다양한 플랫폼에 맞는 해상도를 제공합니다.
▣ Splash Image (스플래시 이미지)
유니티 로고 및 게임의 스플래시 화면을 설정할 수 있습니다. 스플래시 화면은 게임이 실행될 때 처음에 보여지는 화면입니다.
Show Unity Logo: 유니티 로고를 스플래시 화면에 표시할지 여부를 설정할 수 있습니다.
Splash Screen Style: 스플래시 화면의 스타일을 설정할 수 있습니다. (예: 다크 테마, 라이트 테마 등)
Custom Splash Image: 스플래시 화면에 커스텀 이미지를 추가할 수 있습니다.
▣ Other Settings (기타 설정)
이 섹션에서는 더 세부적인 플랫폼 설정을 관리할 수 있습니다. 주요 설정 항목은 다음과 같습니다.
Rendering: 그래픽 렌더링과 관련된 설정입니다.
Color Space: 색상 공간을 설정합니다. (Linear, Gamma)
Auto Graphics API: 유니티가 자동으로 그래픽 API를 선택하도록 할지 여부를 설정합니다.
수동으로 Direct3D, OpenGL 등 특정 API를 선택할 수도 있습니다.
Active Input Handling: 입력 시스템을 선택합니다. (Legacy Input Manager 또는 새로운 Input System)
Configuration: 게임의 동작 방식을 설정할 수 있습니다.
Scripting Backend: 스크립트 백엔드 방식을 선택합니다. (Mono, IL2CPP)
API Compatibility Level: C# 스크립트가 사용하는 .NET API의 호환성 수준을 설정할 수 있습니다.
Allow 'unsafe' Code: unsafe 키워드를 사용하는 C# 코드를 허용할지 여부를 설정합니다.
Optimization: 최적화와 관련된 설정입니다.
Prebake Collision Meshes: 충돌 메쉬를 미리 베이킹할지 여부를 설정합니다.
Keep Loaded Shaders Alive: 로드된 셰이더를 메모리에 유지할지 여부를 설정합니다.
Logging: 빌드된 게임에서 디버깅 로그를 어떻게 처리할지 설정합니다.
Logcat Filter: 로그 필터를 설정하여 특정 로그 메시지만 필터링할 수 있습니다.
▣ Publishing Settings (배포 설정)
여기에서는 플랫폼별로 배포와 관련된 설정을 조정할 수 있습니다.
PC, Mac & Linux Standalone에서:
Company Name과 Product Name이 게임 파일의 설치 경로에 영향을 미칩니다.
Use Player Log: 로그 파일을 기록할지 여부를 설정합니다.
Force Single Instance: 게임이 한 번에 하나의 인스턴스만 실행되도록 설정합니다.
https://docs.unity3d.com/ScriptReference/AssetDatabase.html
https://docs.unity3d.com/ScriptReference/EditorApplication-isCompiling.html
https://docs.unity3d.com/ScriptReference/EditorApplication-isUpdating.html
'[ Unity ] > - 유니티 실습' 카테고리의 다른 글
유니티 3D Weapon Fire(RayCast, 반동, 쉐이크) (4) | 2024.10.03 |
---|---|
유니티 3D 아이템 감지(BoxCast) (3) | 2024.10.02 |
유니티 Avatar Make 활용 조준, 발사 애니 재생 (14) | 2024.10.01 |
유니티 3D Aim Animation Rigging (2) | 2024.09.30 |
유니티 2D AI 순찰, 공격, 도망, 랜덤이동 시스템 (0) | 2024.09.30 |
댓글