Version: 2018.2
Android용 싱글 패스 스테레오 렌더링
Android 2D 텍스처 오버라이드

안드로이드 플레이어 설정

이 페이지에서는 Android에만 해당되는 Player Settings 에 대해 자세하게 설명합니다. 플레이어 설정 문서를 참조하십시오.

아이콘

Android 플레이어 설정 창의 Icon 섹션
Android 플레이어 설정 창의 Icon 섹션
프로퍼티: 기능:
Adaptive 앱의 Android Adaptive 아이콘에 대한 텍스처를 설정합니다.
Round 앱의 Android Round 아이콘에 대한 텍스처를 설정합니다.
Legacy 앱의 Android Legacy 아이콘에 대한 텍스처를 설정합니다.
Enable Android Banner Android TV 빌드용 커스텀 배너를 활성화합니다.

해상도 및 프레젠테이션

Android 플레이어 설정 창의 Resolution and Presentation 섹션
Android 플레이어 설정 창의 Resolution and Presentation 섹션
프로퍼티: 기능:
해상도 및 프레젠테이션
Preserve framebuffer alpha Unity가 네이티브 Android UI 상단에 렌더링하도록 만듭니다. 이렇게 하려면 카메라의 빈 플래그를 알파가 1 미만인 단색으로 설정해야 합니다(OpenGL ES에만 해당).
해상도 스케일링
Resolution Scaling Mode 이 옵션은 화면 해상도보다 낮은 해상도로 타겟 기기의 씬을 렌더링할 때 사용됩니다.
    Disabled 전체 화면 해상도로 렌더링합니다.
    Fixed DPI 화면 해상도보다 잠재적으로 낮은 해상도로 렌더링합니다.
Target DPI Resolution Scaling Mode를 Fixed DPI로 설정하면 이 설정값이 타겟 렌더링 해상도를 얼마나 낮출지 결정합니다. 스케일은 최소로 계산됩니다(Target DPI * 팩터/Screen DPI, 1). 팩터는 품질 설정에서 제어됩니다.
Blit Type blit를 사용해 최종 이미지를 화면에 표시할지 여부를 제어합니다.
    Always (Always blit) Unity가 오프스크린 버퍼로 렌더링한 다음 시스템 프레임버퍼에 복사하도록 만듭니다. 이 옵션은 대부분의 기기와 호환되지만, 대개 Never 블리팅보다는 느립니다.
    Never (Never blit) Unity가 OS에서 제공된 프레임버퍼에 렌더링하도록 만듭니다. 애플리케이션 런타임 시점에 실패를 유발하는 조건이 발생하면 애플리케이션은 1회성 경고를 기기 로그에 출력합니다. Never 블리팅은 대개 Always 블리팅보다 빠르지만, 일부 기기와 호환되지 않습니다.
    Auto 가능한 경우 Unity가 OS에서 제공된 프레임버퍼에 렌더링하도록 만듭니다. 애플리케이션이 시스템 프레임버퍼에 렌더링하지 못하게 만드는 조건이 충족되면 애플리케이션은 오프스크린 렌더링으로 전환하고 기기 콘솔에 경고를 발행합니다.
종횡비 지원
Aspect Ratio Mode 기기에 대한 종횡비입니다. Legacy Wide Screen (1.86), Super Wide Screen (2.1), Custom 중에서 선택할 수 있습니다. Custom 을 선택하면 Up To 필드가 나타납니다. 이 필드를 사용하면 최대 화면 너비를 설정할 수 있습니다.
방향
Default Orientation 애플리케이션의 화면 방향을 설정합니다.
    Portrait 기기의 홈 버튼이 아래쪽에 오도록 화면 방향을 지정합니다.
    Portrait Upside Down 기기의 홈 버튼이 위쪽에 오도록 화면 방향을 지정합니다.
    Landscape Left 기기의 홈 버튼이 오른쪽에 오도록 화면 방향을 지정합니다.
    Landscape right 기기의 홈 버튼이 왼쪽에 오도록 화면 방향을 지정합니다.
Allowed Orientations for Auto Rotation
(Default OrientationAuto Rotation 으로 설정되었을 때에만 표시됨)
Portrait 포트레이트 방향을 사용할 수 있습니다.
Portrait Upside Down 상하 반전된 세로 방향을 사용합니다.
Landscape Right 가로 오른쪽 방향(홈 버튼이 왼쪽에 위치)을 사용할 수 있습니다.
Landscape Left 가로 왼쪽 방향(홈 버튼이 오른쪽에 위치)을 사용할 수 있습니다.
기타
Use 32-bit Display Buffer 32비트 컬러 값(기본값은 16비트)을 유지하는 디스플레이 버퍼를 생성할지 설정합니다. 줄무늬가 보이거나 포스트 프로세스 효과에 알파가 필요한 경우 사용합니다. 디스플레이 버퍼와 포맷이 동일한 렌더 텍스처를 생성하기 때문입니다.
Disable Depth and Stencil 뎁스 및 스텐실 버퍼를 비활성화하려면 체크박스를 선택합니다.
Show Loading Indicator 표시할 로딩 진행 표시줄 타입입니다. Don’t Show, Large, Inversed Large, Small, Inversed Small 옵션이 있습니다.

스플래시 이미지

프로퍼티: 기능:
Virtual Reality Splash Screen 가상현실(VR) 애플리케이션에서 Android 스플래시 화면에 사용할 텍스처를 지정합니다.
Android Splash Screen Android 스플래시 화면에 사용할 텍스처를 지정합니다. 스플래시 화면 이미지의 기본 크기는 320x480입니다.
Splash Scaling 스플래시 화면을 기기 화면에 맞게 스케일하는 방법을 지정합니다. Center(스케일 축소만), Scale to Fit(레터박스)Scale to Fill(잘림) 옵션이 있습니다.

Unity 스플래시 화면 설정도 참조하십시오.

기타 설정

렌더링

Android 플레이어 설정 창의 Rendering 섹션
Android 플레이어 설정 창의 Rendering 섹션
프로퍼티: 기능:
Color Space 애플리케이션에 사용되는 색 공간입니다. 자세한 내용은 선형 조명을 참조하십시오.
Auto Graphics API Unity 에디터가 그래픽스 API를 Open Graphics Library(OpenGL)에서 자동으로 선택하도록 하려면 선택합니다. 선택하면 Unity 에디터가 GLES3.1을 사용하여 보고, 기기에서 GLES3.1을 지원하지 않는 경우 GLES3 또는 GLES2을 대신 사용합니다. 선택하지 않으면 그래픽스 API를 수동으로 선택하고 순서를 변경할 수 있습니다. 목록에 GLES3만 있으면 Require ES3.1Require ES3.1+AEP 체크박스 2개가 추가로 표시되어 이를 통해 해당 그래픽스 API를 적용할 수 있습니다.

중요: GLES3/GLES3.1/AEP 요구 사항은 GLES2가 목록에 없고, Minimum API Level이 JellyBean(API 레벨 18) 이상으로 설정되어 있을 때에만 Android 매니페스트에 추가됩니다. 이 경우에만 애플리케이션이 Google Play 스토어에서 지원되지 않은 기기에 표시되지 않습니다.
Multithreaded Rendering 그래픽스 API 호출을 Unity의 메인 스레드에서 별도의 작업 스레드(worker thread)로 이동하려면 체크박스를 선택합니다. 이렇게 하면 메인 스레드의 CPU 사용률이 높은 애플리케이션의 성능을 높일 수 있습니다.
Static Batching 빌드에 정적 배칭을 사용하려면 체크박스를 선택합니다. (기본적으로 활성화됨)
Dynamic Batching 빌드에 동적 배칭을 사용하려면 체크박스를 선택합니다. (기본적으로 활성화됨)
GPU Skinning OpenGL ES 3 GPU 스키닝을 활성화하려면 체크박스를 선택합니다. 스키닝에 대해 자세하게 알아보려면 위키피디아에서 스켈레톤 애니메이션 페이지를 참조하십시오.

이 프로퍼티는 VR 앱만 지원하고 Virtual Reality Supported 체크박스가 선택된 경우에만 작동합니다.
Graphics Jobs (Experimental) Unity 에디터가 다른 CPU 코어에서 실행 중인 작업 스레드(worker thread)에 그래픽스 작업(렌더 루프)을 오프로드하도록 Unity 에디터를 설정하려면 체크박스를 선택합니다. 이 설정의 목적은 메인 스레드에서 camera.render에 소요되는 시간을 단축하는 것입니다. 이 기능은 실험적이며, 프로젝트 성능을 개선하지 않을 수 있고 불안정을 초래할 수 있습니다.

그래픽스 작업은 현재 Vulkan을 사용할 때에만 지원되고 OpenGL ES를 사용하는 경우 체크박스는 아무런 효과가 없습니다.
Virtual Reality Supported 애플리케이션이 가상현실 애플리케이션이라면 체크박스를 선택합니다. 그런 다음 필수 VR SDK를 목록에 추가합니다.
Protect Graphics Memory 그래픽스 버퍼가 하드웨어 보호 경로를 통해서만 표시되도록 강제로 설정하려면 체크박스를 선택합니다. 지원되는 기기에서만 사용할 수 있습니다.

Vulkan 설정

Android 플레이어 설정 창의 Vulkan 설정 섹션
Android 플레이어 설정 창의 Vulkan 설정 섹션
프로퍼티: 기능:
Enable SetSRGBWrite() 프레임 동안 SRGB 쓰기 모드를 사용합니다. 타일화된 GPU에서 성능이 저하될 수 있습니다.
Use SW Commandbuffers API 호출 렌더링을 위한 보조 커맨드 버퍼를 빌드하는 대신 작업 실행 스레드에서 커맨드 버퍼를 빌드합니다.

식별

Android 플레이어 설정 창의 Identification 섹션
Android 플레이어 설정 창의 Identification 섹션
프로퍼티: 기능:
Package Name 기기와 Google Play 스토어에서 앱을 고유하게 식별하는 데 사용되는 고유 애플리케이션 ID입니다. (iOS와 Android에서 동일)
Version 번들의 (릴리스되거나 릴리스되지 않은) 반복 횟수를 식별하는 번들의 빌드 버전 번호를 지정합니다. 버전은 점으로 구분된 숫자를 포함하는 문자열의 일반적인 포맷(예: 4.3.2)으로 지정됩니다. (iOS와 Android에서 동일)
Bundle Version Code 내부 버전 번호입니다. 이 숫자는 한 버전이 다른 버전보다 더 최근 버전인지 확인하는 데 사용되며, 숫자가 높을수록 최신 버전에 가깝습니다. 이 버전 번호는 사용자에게 표시되지 않으며, 해당 숫자는 versionName 속성에 의해 설정됩니다. 이 값은 ‘100’ 등과 같은 정수로 설정해야 합니다. 연속되는 각 버전의 숫자가 이전 버전보다 더 높은 경우에 한해 원하는 대로 정의할 수 있습니다.

예를 들어, 빌드 번호일 수도 있습니다. 아니면 하위 및 상위 16비트에서 ‘x’ 및 ’y’를 별도로 인코딩하여 ‘x.y’ 포맷의 버전 번호를 정수로 변환할 수도 있습니다. 또는 새 버전을 릴리스할 때마다 숫자를 1씩 증가시킬 수도 있습니다.

Split APKs by target architecture를 활성화한 경우 이 숫자를 100000 미만으로 유지하십시오. 각 APK에는 고유 버전 코드가 있어야 합니다. 그래야 Unity가 ARMv7의 경우 100000, ARM64의 경우 200000, x86의 경우 300000을 숫자에 추가할 수 있습니다.
Minimum API Level 애플리케이션을 실행하는 데 필요한 최소 Android 버전(API 레벨)입니다.
Target API Level 애플리케이션을 컴파일하는 데 사용할 타겟 Android 버전(API 레벨)입니다.

설정

Android 플레이어 설정 창의 Configuration 섹션
Android 플레이어 설정 창의 Configuration 섹션
프로퍼티: 기능:
Scripting Runtime Version 프로젝트에 사용할 .NET 런타임을 선택합니다. 자세한 내용은 Microsoft의 .NET 문서를 참조하십시오.
     .NET 3.5 Equivalent .NET 3.5 API를 구현하는 .NET 런타임입니다. 이 옵션이 기본 스크립팅 런타임입니다.
     .NET 4.x Equivalent .NET 4 API를 구현하는 .NET 런타임입니다. 이 API는 .NET 3.5보다 최신 버전이기 때문에 더 많은 API에 액세스할 수 있고, 더 많은 외부 라이브러리와 호환되며, C# 6를 지원합니다.
Scripting Backend 스크립팅 백엔드를 선택합니다. 두 가지 옵션인 IL2CPP 또는 Mono2x 중에서 선택할 수 있습니다. 기본값은 Mono2x입니다.
    IL2CPP ILC2PP를 스크립팅 백엔드로 설정하려면 선택합니다. 자세한 내용은 IL2CPP 문서를 참조하십시오.
    Mono2x Mono2x를 스크립팅 백엔드로 설정하려면 선택합니다. 기본값입니다. 자세한 내용은 Mono 문서를 참조하십시오.
API Compatibility Level 액티브 .NET API 프로파일을 지정합니다. 아래를 참조하십시오.

.Net 2.0:NET 2.0 라이브러리. 최고 .NET 호환성, 가장 큰 파일 크기

.Net 2.0 서브셋: 전체 .NET 호환성의 일부, 작은 파일 크기
Mute Other Audio Sources Unity 애플리케이션 실행 중에 다른 애플리케이션의 오디오 재생을 중지하거나 허용합니다. 활성화하면 Unity 애플리케이션이 배경 애플리케이션의 오디오를 중지하고, 비활성화하면 배경 애플리케이션의 오디오가 Unity 애플리케이션과 함께 재생됩니다.
Disable HW Statistics Unity Android 애플리케이션에서는 기본적으로 익명 HW 통계를 Unity로 보냅니다. 이를 통해 개발자는 결정을 내리는 데 도움이 되는 종합 정보를 얻을 수 있습니다. 통계는 http://stats.unity3d.com/에서 확인할 수 있습니다. 이 옵션을 선택하면 Unity에 통계를 전송하는 것을 중지합니다.
Target Architectures 애플리케이션이 특정 CPU에서 실행되도록 허용합니다. 참고: 64비트 환경에 Android 앱을 실행하면 성능상 이점이 있으며, 64비트 앱은 4GB 이상의 메모리 공간을 처리할 수 있습니다.
Split APKs by target architecture Target Architectures 에서 선택된 각 CPU 아키텍처에 대해 별도의 APK를 생성합니다. 이렇게 하면 Google Play 스토어 사용자의 다운로드 크기가 줄어듭니다. 이 기능은 Google Play 이외의 스토어에서는 지원되지 않을 수 있습니다. 자세한 내용은 다수의 APK 지원을 참조하십시오.
Install Location 애플리케이션이 기기에 설치되는 위치를 지정합니다. 자세한 내용은 Android 개발자의 설치 위치 문서를 참조하십시오.
    Automatic 운영체제가 결정하게 합니다. 사용자가 앱 설치 위치를 이동할 수 있습니다.
    Prefer External 가능한 경우 애플리케이션을 외부 저장소(SD 카드)에 설치합니다. 운영체제에 따라 불가능할 수 있습니다. 불가능한 경우 앱이 내장 메모리에 설치됩니다.
    Force Internal 애플리케이션을 강제로 내장 메모리에 설치합니다. 사용자가 앱을 외부 저장소로 이동할 수 없습니다.
Internet Access Require 로 설정하면 네트워킹 API를 사용하지 않는 경우에도 네트워킹 (INTERNET) 권한이 Android 매니페스트에 추가됩니다. 개발 빌드에서는 기본적으로 활성화됩니다.
Write Access External(SDCard) 로 설정하면 SD 카드와 같은 외부 저장소에 데이터를 쓸 수 있고, 해당 권한이 Android 매니페스트에 추가됩니다. 개발 빌드에서는 기본적으로 활성화됩니다.
Sustained Performance Mode 과열에 따른 성능 저하(thermal throttling) 없이 기기 성능을 장기간에 걸쳐 예측하기 쉽고 일관된 수준으로 설정합니다. 이 설정을 활성화하면 전체적인 성능은 더 낮아질 수 있습니다. Android Sustained Performance API를 기반으로 합니다.
Android TV Compatibility 애플리케이션이 Android TV와 호환된다고 표시하려면 체크박스를 선택합니다.
Android Game Android TV - 패키지(APK)를 일반 애플리케이션이 아닌 게임으로 표시하려면 체크박스를 선택합니다.
Android Gamepad Support Level Android TV - 이 옵션을 통해 애플리케이션에서 제공하는 게임패드 지원 수준을 정의할 수 있습니다. Works with D-Pad, Supports Gamepad, Requires Gamepad 옵션이 있습니다.
Scripting Define Symbols 커스텀 컴파일 플래그입니다. 자세한 내용은 플랫폼별 컴파일 페이지를 참조하십시오.

최적화

Android 플레이어 설정 창의 Optimization 섹션
Android 플레이어 설정 창의 Optimization 섹션
Property: Function:
Prebake Collision Meshes Check this box to add collision data to meshes at build time.
Keep Loaded Shaders Alive Check this box to prevent shaders from being unloaded.
Preloaded Assets An array of assets to be loaded when the application starts up.
Stripping Level Options to strip out scripting features to reduce the output package (APK) size (This setting is shared between iOS and Android platforms, and is available with the Mono scripting backend only.)
Disabled No reduction is done.
Strip Assemblies Level 1 size reduction.
Strip ByteCode (iOS only) Level 2 size reduction (includes reductions from Level 1).
Use micro mscorlib Level 3 size reduction (includes reductions from Levels 1 and 2).
Strip Engine Code Enable code stripping. (This setting is only available with the IL2CPP scripting backend.)
Enable Internal profiler Check this box if you want to get the profiler data from your device in the Android SDK’s adblogcat output while testing your projects (only available in development builds).
Vertex Compression Select which vertex channels should be compressed. Compression can save memory and bandwidth but precision will be lower.
Optimize Mesh Data Remove any data from meshes that is not required by the material applied to them (tangents, normals, colors, UV).
Logging Enable different logging types (see the StackTraceLogType page for details).

API 호환성 수준

Mono API 호환성 수준을 모든 타겟에 대해 선택할 수 있습니다. 때로는 사용할 .NET 호환성 수준에 포함되지 않은 API가 서드파티 NET DLL에 사용됩니다. 이런 경우를 조사하려면 Windows의 ILSpy 같은 반사 도구를 사용하여 DLL 종속성을 확인하십시오.

퍼블리시 설정

프로퍼티: 기능:
Keystore
Use Existing Keystore / Create New Keystore 새 키스토어를 만들 것인지 기존 키스토어를 사용할 것인지 설정합니다. Browse Keystore 버튼을 클릭하여 파일시스템에서 키스토어를 선택할 수 있습니다.
Keystore password 키스토어의 비밀번호를 생성합니다.
Confirm password Keystore password 에 입력한 것과 동일한 비밀번호를 한 번 더 입력합니다. Create New Keystore 옵션을 선택했을 때에만 활성화됩니다.
Key
Alias 키의 별칭입니다.
Password 키 별칭의 비밀번호입니다.
Split Application Binary 패키지를 메인 패키지(APK)와 확장 패키지(OBB)로 분할하려면 체크박스를 선택합니다. 100MB보다 큰 애플리케이션을 Goolge Play 스토어에 퍼블리시하려면 선택해야 합니다.

Unity 에디터는 보안상의 이유로 Keystore 비밀번호나 Key 비밀번호를 저장하지 않습니다. 또한 서명은 Unity 에디터의 플레이어 설정에서 해야 하고 jarsigner를 사용할 수 없습니다. Windows에서 서명되지 않은 디버그 키스토어의 기본 위치는 ~/.android/debug.keystore on MacOS 및 %USERPROFILE%\.android\debug.keystore입니다.

XR 설정

프로퍼티: 기능:
XR 설정
Virtual Reality Supported Unity 에디터와 게임 빌드에 대한 네이티브 VR 지원을 활성화합니다.
ARCore Google의 ARCore 플랫폼을 사용할 수 있습니다.
XR 지원 설치 관리자
Vuforia Augmented Reality Supported Vuforia 소프트웨어 개발 키트 사용을 활성화합니다. Vuforia 소프트웨어 라이선스를 보유하고 있고 해당 라이선스의 약관에 동의해야 프로퍼티를 활성화할 수 있습니다.

세부 정보

번들 식별자

Bundle Identifier 문자열은 애플리케이션을 Google Play 스토어에 퍼블리시하고 기기에 설치할 때 사용하는 고유 이름입니다. 식별자의 기본 구조는 com.CompanyName.GameName 이고 임의로 선택할 수 있습니다. Unity 에디터에서 이 필드는 편의를 위해 iOS 플레이어 설정과 공유됩니다.

스트리핑 레벨

대부분의 게임에서는 기본적으로 포함된 DLL 기능 중 일부만 사용됩니다. 이 옵션을 사용하면 사용되지 않는 기능을 제거하여 패키지(APK)의 크기를 줄일 수 있습니다.


  • 2018–06–06 일부 편집 리뷰를 거쳐 페이지 수정됨

  • Unity 5.5에서 업데이트된 기능

  • Unity 2017.3에서 Sustained Performance Mode 추가됨

  • 2018.1에서 .NET 4.x 런타임 추가됨

  • Unity 2018.2에서 Android Multiple APK 기능 추가됨

Android용 싱글 패스 스테레오 렌더링
Android 2D 텍스처 오버라이드