Version: 2021.3
단축키 관리자
Incremental build pipeline

빌드 설정

Unity는 다양한 플랫폼과 다양한 설정으로 애플리케이션을 빌드할 수 있습니다. 이 문서에서는 씬, 타겟 플랫폼, 빌드를 위한 설정 방법을 다룹니다.

플랫폼과 설정을 선택하고 빌드 프로세스를 시작하려면 Build Settings 창을 사용합니다. Build Settings 창에 액세스하려면 Unity 메인 메뉴에서 File > Build Settings로 이동하십시오.

빌드 이해

Unity는 다음과 같은 두 가지 빌드 타입을 생성합니다.

  • 릴리스 빌드는 애플리케이션을 실행하는데 필요한 사항만 포함하는 빌드입니다. 이는 기본 빌드 타입입니다.
  • 개발 빌드는 디버그 심볼과 프로파일러 스크립팅을 포함하는 빌드입니다. 개발 빌드 옵션을 선택하면 세부 프로파일링 지원과 스크립트 디버깅과 같은 추가 옵션을 활성화합니다. 일반 플랫폼 설정 섹션에 이 옵션에 대한 설명이 있습니다.

For faster iteration during development, Unity uses an incremental build pipeline that rebuilds artifacts only if they have changed since the previous build. For more information, see Incremental build pipeline.

빌드의 씬 관리

애플리케이션을 빌드할 때 Unity는 Scenes In Build 창에서 선택된 모든 씬을 빌드합니다. Unity는 리스트에 표시되는 순서대로 씬을 빌드합니다.

You can add, exclude, remove, and reorder scenes in the list:

  • 현재 열려 있는 씬을 모두 리스트에 추가하려면 다음 단계를 따르십시오. Add Open Scenes를 선택합니다. Project 창에서 리스트로 씬을 드래그할 수도 있습니다.
  • 빌드에서 리스트에 있는 씬을 제외하려면 다음 단계를 따르십시오. 해당 씬 옆의 체크박스를 해제합니다. 이렇게 하면 빌드에서 씬은 제거되지만 리스트에는 남아있습니다.
  • 리스트에서 씬을 제거하려면 다음 단계를 따르십시오. 해당 씬을 선택하고 Delete를 누릅니다.
  • 해당 씬 순서를 변경하려면 다음 단계를 따르십시오. 리스트에서 씬을 드래그 앤 드롭하여 순서를 변경합니다.
Window, Mac, Linux 빌드 설정
Window, Mac, Linux 빌드 설정

플랫폼 리스트

각 빌드는 반드시 타겟 플랫폼을 포함해야 합니다. 플랫폼 창에는 빌드할 수 있는 모든 플랫폼이 나열됩니다.

컴퓨터에 설치된 각 Unity 버전에는 자체 플랫폼 리스트가 포함되어 있습니다.

필요한 플랫폼이 리스트에 없는 경우 다음 중 한 가지를 수행합니다.

  • Build Settings 창에서 다음 단계를 따르십시오.

    1. 추가하려는 플랫폼을 선택합니다.
    2. Install이나 Download를 선택합니다.
  • Unity Hub > Installs에서:

    1. 사용 중인 Unity 버전에서 세 개의 점을 선택합니다.
    2. Add Modules를 선택합니다.
    3. 지침을 따라 플랫폼 모듈을 설치합니다.

빌드의 타겟 플랫폼을 변경하려면:

  1. 전환하려는 플랫폼을 선택합니다.
    : 리스트는 타겟 플랫폼으로 현재 선택된 플랫폼 옆에 Unity 아이콘을 표시합니다.
  2. Switch Platforms을 선택합니다.
    타겟 플랫폼과 일치하는 포맷에 에셋을 다시 임포트해야 할 경우 전환 프로세스는 시간이 오래 걸릴 수 있습니다.

빌드 설정

플랫폼을 선택하면 Unity는 빌드에 대해 조정할 수 있는 옵션 리스트를 표시합니다. 일부 설정은 모든 플랫폼에 적용되며 일부는 플랫폼에 따라 다릅니다.

일반 플랫폼 설정

다음 설정은 모든 플랫폼에 적용됩니다.

설정 기능:
Development Build Include scripting debug symbols and the Profiler in your build. You should use this setting when you want to test your application.
When you select this option, Unity sets the DEVELOPMENT_BUILD scripting define. Your build then includes preprocessor directives that set DEVELOPMENT_BUILD as a condition (see Platform-dependent compilations).
Autoconnect Profiler Unity 프로파일러를 빌드에 자동으로 연결합니다.

이 옵션은 Development Build를 선택한 경우에만 사용 가능합니다.
Deep Profiling Support 프로파일러에서 세부 프로파일링을 활성화합니다. 이렇게 하면 프로파일러 도구를 애플리케이션에서 모든 함수 호출로 만들어 더 자세한 프로파일링 데이터를 반환합니다. 이 옵션은 스크립트 실행 속도를 느리게 할 수도 있습니다.

이 옵션은 Development Build를 선택한 경우에만 사용할 수 있습니다.
Script Debugging 스크립트 코드를 디버깅할 수 있습니다.

이 옵션은 개발 빌드를 선택한 경우에만 사용할 수 있습니다.
이 옵션은 WebGL에는 사용할 수 없습니다.
Wait for Managed Debugger 스크립트 코드를 실행하기 전에 플레이어가 디버거가 연결될 때까지 기다리게 합니다.

이 옵션은 Script Debugging을 선택한 경우에만 사용할 수 있습니다.
IL2CPP Code Generation Unity가 IL2CPP 코드 생성을 관리하는 방법을 정의합니다.
이 옵션은 Mono가 아닌 스크립팅 백엔드용으로 IL2CPP를 사용하는 경우에만 사용할 수 있습니다.
스크립팅 백엔드를 변경하려면 Player Settings > Configuration > Scripting Backend로 이동하여 Mono에서 IL2CPP로 변경합니다.
Faster runtime 런타임 성능을 위해 최적화된 코드를 생성합니다. 이것은 기본값이며 Unity 이전 버전의 동작입니다.
Faster (smaller) builds 빌드 크기와 반복을 위해 최적화된 코드를 생성합니다. 코드를 더 적게 생성하며 더 작은 빌드를 만들지만 런타임 성능 특히 일반 코드에 영향을 미칠 수도 있습니다. 변경 사항을 반복할 때와 같이 더 빠른 빌드 시간이 중요한 경우 이 옵션을 사용할 수도 있습니다.
Compression Method 플레이어를 빌드할 때 프로젝트에 데이터를 압축합니다. 여기에는 에셋, , 플레이어 설정, GI 데이터가 포함됩니다.

이 옵션은 Lumin과 WebGL 플랫폼에서는 사용할 수 없습니다.
Default PC, Mac, Linux 스탠드얼론, iOS에는 기본 압축 방식이 없습니다.

Android 기본 압축 방식은 ZIP이며 LZ4HC보다 압축률이 조금 낫습니다. 하지만 ZIP 데이터는 압축 풀기가 조금 느립니다.
LZ4 개발용 빌드에 적합한 고속 압축 포맷입니다. 자세한 내용은 BuildOptions.CompressWithLz4를 참조하십시오.
LZ4HC 높은 압축률을 자랑하는 LZ4 변형 포맷입니다. LZ4HC는 빌드 속도가 비교적 느리지만 릴리스 빌드에서 더 뛰어난 결과를 제공합니다. 자세한 내용은 BuildOptions.CompressWithLz4HC를 참조하십시오.

에셋 임포트 오버라이드

임포트와 플랫폼 전환 시간을 단축하려면 로컬에서 모든 텍스처 임포트 설정을 오버라이드할 수 있습니다. 일반적으로 임포트 오버라이드와 최종 빌드를 제공하지는 않지만 개발 중에는 특히 에셋(여기의 경우 텍스처)이 가능한 한 좋게 보이는 것을 고려하지 않는 경우 반복 시간을 단축하는 데 유용할 수 있습니다.

초기 프로젝트 임포트에 대한 에셋 임포트 오버라이드를 설정하려면 Unity 에디터 커맨드 라인 인자 -overrideMaxTextureSize-overrideTextureCompression을 사용합니다.

두 오버라이드 옵션에 대한 기본값은 No Override입니다.

설정 기능:
Max Texture Size 임포트한 텍스처 최대 크기를 오버라이드합니다. Unity는 이 값 또는 텍스처 임포트 설정에 지정된 최대 크기 값 중 더 낮은 값의 텍스처를 임포트합니다.

텍스처를 임포트하는 데 걸리는 시간은 포함된 픽셀 수에 대략 비례하므로 허용되는 최대 텍스처 크기가 더 낮을 수록 임포트 시간을 단축할 수 있습니다. 하지만 결과 텍스처는 해상도가 더 낮기 때문에 이 설정은 개발 중에만 사용합니다.
Texture Compression 텍스처 임포트 설정의 텍스처 압축 옵션 설정을 오버라이드합니다.

압축 텍스처 포맷 중 하나로 임포트한 텍스처에만 영향을 미칩니다.
Force Fast Compressor 지원하는 포맷(BC7, BC6H, ASTC, ETC, ETC2)을 위해 더 빠르지만 품질은 낮은 텍스처 압축 모드를 사용합니다. 일반적으로 이렇게 하면 더 많은 압축 아티팩트가 생성되지만 더 많은 포맷을 위해 압축 자체는 2–20배 더 빠릅니다.

이 설정은 또한 Crunch 텍스처 압축 포맷을 가진 모든 텍스처에서 비활성화됩니다.

이 설정의 효과는 모든 텍스처의 Compressor Quality가 해당 플랫폼의 텍스처 가져오기 설정에서 Fast로 설정된 것과 같습니다.
Force Uncompressed 텍스처를 압축하지 마십시오. 대신 압축되지 않은 포맷을 사용합니다. 이렇게 하면 임포트를 더 빨리 할 수 있지만(텍스처 압축 프로세스를 건너뛰기 때문) 결과 텍스처가 메모리와 게임 데이터 크기를 더 많이 차지하며 렌더링 성능에 영향을 미칠 수 있습니다.

이 설정의 효과는 모든 텍스처의 Compression이 해당 플랫폼의 텍스처 임포트 설정에서 None으로 설정된 것과 같습니다.

플랫폼별 설정

각 플랫폼에는 다음과 같은 특정 빌드 설정도 있습니다.

애플리케이션 빌드

애플리케이션을 빌드하려면 다음 중 하나를 선택하십시오.

  • Build: 플레이어를 컴파일한 뒤 아무 작업도 하지 않습니다. 기본 빌드는 첫 번째 빌드를 제외하고는 증분 빌드이며 항상 완전한 비증분(클린) 빌드입니다. 증분 빌드 대신 클린 빌드를 강제로 실행하려면 드롭다운 메뉴에서 Clean Build를 선택합니다.
  • Build and run: 플레이어를 컴파일하여 타겟 플랫폼에서 엽니다(자세한 내용은 개별 플랫폼 페이지 참조). 이 옵션은 항상 증분 빌드에서 사용합니다.
단축키 관리자
Incremental build pipeline