Version: 2022.2
언어: 한국어
iOS 계정 설정
iOS용 개발

iOS 플레이어 설정

이 페이지는 iOS 플레이어 설정에 대해 자세히 설명합니다. 모든 플랫폼에 적용되는 일반 플레이어 설정에 대한 설명은 플레이어 - 일반 설정을 참조하십시오.

스탠드얼론 iOS 플레이어 설정
스탠드얼론 iOS 플레이어 설정

프로퍼티 관련 문서는 다음 섹션에서 확인하십시오.

아이콘(Icon)

Apple 스토어의 앱 브랜딩을 커스터마이즈하려면 Icon 설정을 사용합니다.

iOS 플레이어 설정의 아이콘 설정
iOS 플레이어 설정의 아이콘 설정

각 iOS 기기(iPhone, iPad)에 대해 다음 타입의 커스텀 아이콘을 업로드하고 할당할 수 있습니다.

아이콘 타입 표시되는 위치
Application icons 앱의 기본 아이콘
Spotlight icons 앱에 대한 스포트라이트 검색 결과
Settings icons 기기의 기본 설정 페이지
Notification icons 앱에서 보내는 알림
Marketing icons 앱 스토어

업로드되는 모든 아이콘은 Texture 2D 타입의 에셋입니다. 아이콘 텍스처가 누락되면 Unity는 가장 가까운 크기의 아이콘 텍스처를 스케일링하며, 더 큰 텍스처를 사용하는 것을 더 선호합니다.

해상도 및 프레젠테이션

Resolution and Presentation 섹션에서 화면이 표시되는 모양에 대해 다음을 커스터마이즈할 수 있습니다.

이 설정들은 다음 카테고리로 이루어집니다.

iOS 플랫폼을 위한 해상도 스케일링 플레이어 설정
iOS 플랫폼을 위한 해상도 스케일링 플레이어 설정

해상도 스케일링

Resolution Scaling Mode 설정을 사용하면 스케일링을 네이티브 화면 해상도 이하가 되도록 설정할 수 있습니다.

Setting Function
Disabled 스케일링이 적용되지 않고 애플리케이션이 기본 화면 해상도로 렌더링됩니다.
FixedDPI 이 값을 선택하면 Target DPI 프로퍼티가 나타납니다.

Target DPI 프로퍼티를 사용하여 게임 화면의 타겟 DPI를 설정합니다.기기의 기본 화면 DPI가 이 값보다 높으면 Unity는 이 설정에 맞게 게임 화면을 다운스케일링합니다.이렇게 하면 성능과 배터리 수명이 최적화될 수 있습니다.또한 특정 DPI 설정을 타겟팅하는 데 사용할 수도 있습니다.

Unity는 스케일을 min(Target DPI * Factor / Screen DPI, 1)으로 계산합니다.’Factor’는 Quality 설정에서 입력한 Resolution Scaling Fixed DPI Factor 값을 사용합니다.
Reset resolution on window resize 기본 창 크기가 변경될 때 화면 해상도를 새 기본 창 크기로 설정할지 여부를 나타냅니다.Resolution Scaling ModeFixed DPI로 설정하면 Unity는 Fixed DPI 프로퍼티를 기반으로 해상도를 다시 계산합니다.

방향

Default Orientation 드롭다운 메뉴에서 게임 화면의 방향을 선택할 수 있습니다. 기본 설정은 Auto Rotation입니다. 이 설정을 선택하면 기기 방향에 따라 화면 방향이 회전합니다.

화면에 홈 버튼이 나타나는 고정 위치를 지정하려면 다른 설정을 선택하십시오.

설정 홈 버튼 위치
Portrait 하단
Portrait Upside Down 상단
Landscape Left 오른쪽
Landscape Right 왼쪽
Auto Rotation 기기 방향에 따라 화면 방향이 변화합니다. 기본 옵션입니다.

참고: Default Orientation 설정은 iOS 및 Android 기기 모두에 적용됩니다.

Auto RotationDefault Orientation으로 선택하면 다음 설정이 나타납니다.

설정 기능
Use Animated Autorotation 이 체크박스를 활성화하면 사용자가 기기를 회전할 때 화면 회전이 애니메이션화된 전환을 사용합니다. 비활성화하면 화면 회전이 즉시 변경됩니다.
Allowed Orientations for Auto Rotation Auto Rotation 은 화면 방향이 기기에 맞게 변경됩니다. 허용되는 화면 방향을 제한해야 할 수도 있습니다(예: 기기 화면을 가로 방향으로 고정). 이 섹션에서 해당 상자를 선택하여 원하는 방향을 각각 활성화합니다.

멀티태스킹 지원

애플리케이션을 전체 화면 모드에서 실행해야 하는 경우 Requires Fullscreen 옵션을 활성화합니다.

상태 표시줄

Status Bar 섹션을 사용하여 iOS 상태 표시줄과 관련된 파라미터를 지정할 수 있습니다.

설정 기능
Status Bar Hidden 이 옵션을 활성화하면 애플리케이션이 실행될 때 상태 표시줄이 보이지 않습니다.
Status Bar Style 애플리케이션이 시작될 때 상태 표시줄의 스타일을 정의합니다.옵션은 DefaultLight 입니다.
Disable Depth and Stencil 뎁스 및 스텐실 버퍼를 비활성화하려면 이 옵션을 활성화합니다.
Render Over Native UI 이 옵션을 활성화하면 앱이 네이티브 iOS UI 위에 강제로 렌더링됩니다.
Show Loading Indicator 로딩 표시기를 어떻게 표시할지 선택합니다.옵션은 White Large, White, Gray 입니다.

스플래시 이미지

Splash Image 섹션을 사용하여 다양한 iOS 지원 기기에 대한 앱의 스플래시 이미지를 커스터마이즈하십시오.

iOS 플랫폼을 위한 스플래시 설정
iOS 플랫폼을 위한 스플래시 설정

일반 스플래시 화면 설정 위에 있는 Virtual Reality Splash Image 설정을 사용하면 가상 현실 디스플레이에 대한 커스텀 스플래시 이미지를 선택할 수 있습니다.

커스텀 스토리보드

스토리보드를 iOS용 실행 화면으로 사용
스토리보드를 iOS용 실행 화면으로 사용

iPhone 또는 iPad에 대한 Launch screen type 드롭다운 메뉴에서 Custom Storyboard 옵션을 선택하면 Custom Storyboard 버튼이 나타납니다.

Custom Storyboard 버튼을 클릭하면 기기에서 게임을 시작할 때 표시할 스토리보드를 선택할 수 있습니다.여기에 스토리보드를 표시하려면 먼저 Xcode에서 스토리보드를 생성하고 프로젝트에 복사해야 합니다.자세한 내용은 스토리보드, 씬, 연결에 대한 Apple 개발자 문서를 참조하십시오.

Use Storyboard for Launch Screen 체크박스를 비활성화하면 다음 방식 중 하나로 스플래시 이미지를 구현할 수 있습니다.

커스텀 스토리보드를 사용하지 않는 경우 Unity의 빌트인 실행 화면을 사용하여 스플래시 이미지를 구현할 수 있습니다.

실행 화면

실행 화면은 iOS가 기기에서 스플래시 화면을 만드는 데 사용하는 스토리보드 파일입니다. 다음과 같은 제한이 있습니다.

  • iPad의 기기 방향을 기반으로 다른 콘텐츠를 표시할 수 없습니다.
  • 모든 iPhone은 랜드스케이프 실행 화면을 지원하지만, 특정 iOS 버전에서는 버그로 인해 Landscape Right 실행 화면 대신 Landscape Left 실행 화면이 표시될 수 있습니다.
  • iOS 13 이전에는 스토리보드의 루트 뷰 컨트롤러를 오버라이드할 수 없었기 때문에 실행 화면은 모든 방향을 지원하고 상태 표시줄 동작과 같은 일부 UI 설정을 무시했습니다. iOS 13부터 실행 화면은 방향 및 상태 표시줄 모양에 대한 앱 설정을 완전히 준수합니다.

이러한 제한은 커스텀 스토리보드에도 적용됩니다.

iPhone Launch ScreeniPad Launch Screen 섹션에서 iPhone 및 iPad에 대한 Launch screen type을 선택합니다.

기능
Default 이 옵션을 선택하면 Unity의 기본 스플래시 화면 배경과 동일한 컬러인 파란색-검정색 단색 이미지가 추가됩니다.이미지는 세로 및 가로 방향 모두에 사용되며, 종횡비 채우기 모드를 사용하여 표시됩니다.
None Apple은 더 이상 실행 이미지를 지원하지 않습니다.이 옵션은 이전 버전과의 호환성을 위해 존재합니다.이 옵션을 선택하면 프로젝트에 Unity의 기본 스플래시 화면이 대신 사용됩니다.
Image and background (relative size) 화면 중앙에 이미지를 표시하고 나머지 영역을 단색으로 채웁니다.
Portrait Image 세로 방향에 대한 이미지를 선택합니다.
Landscape Image 가로 방향에 대한 이미지를 선택합니다.
Background Color 이미지가 덮지 않는 스크린 공간을 채울 배경색을 선택합니다.
Fill percentage 이미지 크기를 화면 크기의 백분율로 지정합니다.Unity는 화면의 길이 또는 너비 중 더 작은 것을 기준으로 이미지 크기를 계산합니다(가로 디스플레이의 경우 수직, 세로 디스플레이의 경우 수평).
Image and background (constant size) 화면 중앙에 이미지를 표시하고 해당 영역을 단색으로 채웁니다.이 항목은 Image and background (relative size) 와 동일한 옵션이 있습니다. 단, 이미지 크기를 백분율이 아닌 포인트로 지정한다는 점은 제외입니다.

팁:포인트와 픽셀은 같지 않습니다.픽셀(px)은 이미지에서 하나의 점을 의미합니다.포인트(pt)는 1/72인치의 길이를 측정하는 길이 단위입니다.픽셀 크기는 화면 크기와 해상도에 따라 달라지며, 포인트 크기는 모든 화면상의 크기입니다.크기 단위에 대한 자세한 내용은 W3C guidance를 참조하십시오.
Custom XIB 이 옵션을 선택하면 Custom XIB 버튼이 나타납니다.이 버튼을 클릭하면 로딩 화면으로 사용할 커스텀 XIB 파일을 선택할 수 있습니다.
Custom Storyboard 이 옵션을 선택하면 Custom Storyboard 버튼이 나타납니다.이 버튼을 클릭하면 로딩 화면으로 사용할 커스텀 스토리보드 파일을 선택할 수 있습니다.

참고: Unity Personal 구독에서 Unity 스플래시 화면은 선택한 스플래시 화면과 더불어 엔진을 초기화할 때 표시됩니다.

디버깅 및 크래시 보고

Debugging and crash reporting 설정을 사용하여 앱의 성능에 대한 데이터를 수집하고 크래시 문제를 해결하십시오.

iOS 플랫폼의 디버깅 및 크래시 보고
iOS 플랫폼의 디버깅 및 크래시 보고
Setting Function
Enable Internal Profiler (Deprecated) 이 기능은 더 이상 사용되지 않으며 향후 Unity 버전에서 지원되지 않을 예정입니다.그 대신 프로파일러 창을 사용하십시오(메뉴:Window > Analytics > Profiler).

프로파일러는 애플리케이션 성능 데이터를 수집하여 콘솔로 보고서를 인쇄합니다.이 보고서에는 각 Unity 보조 시스템이 각 프레임에서 실행되는 데 걸리는 시간(밀리초)이 30프레임에 걸쳐 평균적으로 포함되어 있습니다.
On .Net UnhandledException .NET 처리되지 않은 예외가 발생했을 때 Unity가 취할 조치를 선택합니다.옵션은 Crash(앱이 크래시하고 크래시 보고서를 생성하여 사용자가 iTunes에 제출하고 개발자가 크래시 문제를 해결하는 데 사용할 수 있음) 또는 Silent Exit(애플리케이션이 오류 없이 종료되고 크래시 보고서를 생성하지 않음) 중 하나입니다.
Log Obj-C Uncaught Exceptions 이 작업을 활성화하면 Unity가 콘솔에 Objective-C 확인할 수 없는 예외 정보를 출력합니다.
Enable Crash Report API 커스텀 크래시 리포터가 크래시를 캡처하도록 합니다.스크립트를 사용하여 CrashReport API를 통해 크래시 로그에 액세스할 수 있습니다.

기타 설정

Other Settings 섹션에서 다양한 플레이어 설정을 구성할 수 있습니다. 제공되는 옵션들은 다음의 그룹으로 나뉩니다.

렌더링(Rendering)

다음 설정을 사용하여 Unity가 iOS 플랫폼용으로 애플리케이션을 렌더링하는 방법을 커스터마이즈합니다.

iOS 플랫폼용 렌더링 플레이어 설정
iOS 플랫폼용 렌더링 플레이어 설정
Setting Function
Color Space Unity에서 렌더링에 사용할 색 공간을Gamma 또는 Linear 중에서 선택합니다.자세한 내용은 리니어 렌더링 개요를 참조하십시오.

Gamma:감마 색 공간은 일반적으로 프레임 버퍼 포맷의 채널당 8비트로 제한된 구형 하드웨어에서 조명을 계산하는 데 사용됩니다.이제 모니터는 디지털 방식이지만 여전히 감마로 인코딩된 신호를 입력으로 사용합니다.

Linear:리니어 색 공간 렌더링은 더 정밀한 결과를 제공합니다.리니어 색 공간에서 작업하려고 선택하면 에디터는 sRGB 샘플링을 기본으로 사용합니다.텍스처가 리니어 색 공간에 있는 경우, 리니어 색 공간에서 작업하고 각 텍스처에 대해 sRGB 샘플링을 비활성화해야 합니다.
Color Gamut 렌더링에 사용할 iOS 플랫폼의 색 영역을 추가하거나 제거할 수 있습니다.더하기(+) 아이콘을 클릭하면 사용 가능한 영역의 리스트를 확인할 수 있습니다.색 영역은 모니터나 화면과 같은 기기에서 사용 가능한 색상 범위를 정의합니다.sRGB 영역은 기본(필수) 색 영역입니다.
넓은 색 영역의 디스플레이를 갖춘 최신 tvOS 기기를 대상으로 하는 경우 DisplayP3 를 사용하여 전체 디스플레이 기능을 사용하십시오.구형 기기의 경우 Metal Editor Support 를 대비책으로 사용하십시오.
Multithreaded Rendering 이 옵션을 활성화하면 그래픽스 API 호출을 Unity의 메인 스레드에서 별도의 워커 스레드로 이동합니다.이렇게 하면 메인 스레드에서 CPU 사용이 많은 애플리케이션의 성능을 개선하는 데 도움이 될 수 있습니다.
Static Batching 정적 배칭을 사용합니다.자세한 내용은 드로우 콜 배칭을 참조하십시오.
Dynamic Batching 동적 배칭을 사용합니다(기본적으로 활성화됨).자세한 내용은 드로우 콜 배칭을 참조하십시오.

참고:Scriptable Render Pipeline이 활성화되어 있으면 동적 배칭이 적용되지 않으므로 이 설정은 Scriptable Render Pipeline Asset Graphics 설정이 비어 있는 경우에만 표시됩니다.
Sprite Batching Threshold 배칭 시 사용되는 최대 버텍스 임계값을 제어합니다.
Compute Skinning 이 옵션을 활성화하면 CPU 리소스를 확보할 수 있는 Metal GPU 컴퓨팅 스키닝을 사용할 수 있습니다.GPU 컴퓨팅 스키닝에 대해 자세히 알아보려면 Wikipedia의 골격 애니메이션 페이지를 참조하십시오.
Graphics Jobs (Experimental) 이 옵션을 활성화하면 Unity가 그래픽스 작업(렌더 루프)을 다른 CPU 코어에서 실행 중인 워커 스레드로 오프로드하도록 지시합니다.이것은 병목 현상이 자주 발생하는 메인 스레드의 Camera.Render에서 소요되는 시간을 줄여줍니다.

참고:이 기능은 실험 단계에 있습니다.프로젝트의 성능이 향상되지 않을 수도 있으며 불안정성을 초래할 수 있습니다.
Texture compression format iOS의 기본 텍스처 압축 포맷으로 ASTC와 PVRTC 중에서 선택합니다.자세한 내용은 텍스처 압축 포맷 개요를 참조하십시오.
Normal Map Encoding XYZ 또는 DXT5nm 스타일을 선택하여 노멀 맵 인코딩을 설정합니다. 이는 노멀 맵에 사용되는 인코딩 방식과 압축 포맷에 영향을 줍니다. DXT5nm 스타일 노멀 맵은 고품질이지만 셰이더에서 디코딩하기에 소모량이 더 많습니다.
Lightmap Encoding 라이트맵의 인코딩 체계와 압축 포맷을 정의합니다.
Low Quality, Normal Quality, High Quality 중에서 선택할 수 있습니다.
HDR Cubemap Encoding HDR 큐브맵의 인코딩 방식과 압축 포맷을 정의합니다.
Low Quality, Normal Quality, High Quality 중에서 선택할 수 있습니다.
Lightmap Streaming 라이트맵에 밉맵 스트리밍을 사용하십시오.Unity는 라이트맵을 생성할 때 이 설정을 모든 라이트맵에 적용합니다.

참고:이 설정을 사용하려면 Texture Streaming Quality 설정을 활성화해야 합니다.
Streaming Priority 밉맵 스트리밍 시스템에서 모든 라이트맵에 대한 우선순위를 설정합니다.Unity는 모든 라이트맵을 생성할 때 이 설정을 적용합니다.
양수일수록 우선순위가 높습니다.유효값 범위는 –128 - 127입니다.
Frame Timing Stats Unity에서 CPU/GPU 프레임 타이밍 통계를 수집할 수 있습니다.이 옵션을 다이내믹 해상도 카메라 설정과 함께 사용하면 애플리케이션이 CPU 또는 GPU에 바인딩되는지 확인할 수 있습니다.
Virtual Texturing 현재 iOS에서는 지원되지 않습니다.
Shader precision model 셰이더에 사용되는 샘플러의 기본 정밀도를 제어합니다.자세한 내용은 셰이더 데이터 타입 및 정밀도를 참조하십시오.
360 Stereo Capture 현재 iOS에서는 지원되지 않습니다.
Load/Store Action Debug Mode 빌드된 애플리케이션에서 렌더링 문제를 일으킬 수 있는 정의되지 않은 픽셀을 하이라이트합니다.강조 표시는 게임 뷰와 빌드 설정에서 Development Build를 선택한 경우 빌드된 애플리케이션에서만 표시됩니다.LoadStoreActionDebugModeSettings를 참조하십시오.
Editor Only 게임 뷰에서는 정의되지 않은 픽셀을 하이라이트하지만 빌드된 애플리케이션에서는 그렇지 않습니다.

식별

앱의 식별 정보를 입력합니다.

iOS 플랫폼을 위한 식별 설정
iOS 플랫폼을 위한 식별 설정
설정 기능
Override Default Bundle Identifier 번들 식별자를 수동으로 설정할 수 있는지를 나타냅니다.
참고:이 설정은 macOS, iOS, tvOS, Android에 영향을 미칩니다.
Bundle Identifier 빌드 중인 애플리케이션의 프로비저닝 프로파일을 입력합니다.식별자의 기본 구조는 com.CompanyName.ProductName입니다.이 구조는 거주 국가에 따라 달라질 수 있으므로 항상 자신의 개발자 계정에 대해 Apple이 제공하는 문자열을 기본값으로 사용하십시오.프로비저닝 인증서에 해당 제품 이름이 설정되어 있습니다.
번들 식별자는 com.YourCompanyName.YourProductName 규칙을 따라야 하며 영숫자와 하이픈 문자만 포함해야 합니다.자세한 내용은 CFBundleIdentifier를 참조하십시오.
중요:Unity는 사용자가 입력한 유효하지 않은 문자를 하이픈으로 자동 대체합니다.

이 프로퍼티를 설정하려면 Override Default Bundle Identifier를 활성화하십시오.
Version 번들의 릴리스 버전 번호 문자열(예: 4.3.6)을 입력합니다.

이 값은 연결된 info.plist 파일에서 CFBundleShortVersionString으로 표시됩니다. 자세한 내용은 CFBundleShortVersionString에 대한 Apple 개발자 문서를 참조하십시오.
Build 앱 버전의 빌드 번호를 입력합니다.

이 값은 연결된 info.plist 파일에서 CFBundleVersion으로 표시됩니다. 자세한 내용은 CFBundleVersion에 대한 Apple 개발자 문서를 참조하십시오.
팀 ID 서명 Apple 개발자 팀 ID를 입력합니다. Apple 개발자 팀 ID는 Apple 개발자 웹사이트의 Xcode 도움말에서 찾을 수 있습니다. 이를 통해 생성된 Xcode 프로젝트의 팀 ID를 설정하고, 개발자는 빌드 및 실행 기능을 사용할 수 있습니다. 앱이 자동으로 서명되도록 Apple 개발자 팀 ID를 입력해야 합니다.

자세한 내용은 팀 프로비저닝 프로파일 생성에 대한 Apple 개발자 문서를 참조하십시오.
자동 서명(Automatically Sign) 이 옵션을 활성화하면 Xcode가 빌드를 자동으로 서명하도록 명령합니다.

설정

iOS 플랫폼을 위한 구성 설정
iOS 플랫폼을 위한 구성 설정

API 구성 설정

Setting Function
Scripting Backend 스크립팅 백엔드는 Unity가 프로젝트의 C# 코드를 컴파일하고 실행하는 방식을 결정합니다.이 설정은 기본적으로 iOS용 IL2CPP로 설정되어 있으며 변경할 수 없습니다.

IL2CPP는 C# 코드를 CIL로 컴파일하고, CIL을 C++로 전환한 다음, 해당 C++을 네이티브 기계어 코드로 컴파일하여 런타임에 바로 실행합니다.자세한 내용은 IL2CPP 문서를 참조하십시오.

IL2CPP 스크립팅 백엔드에서 생성된 C++ 코드는 점진적으로 업데이트할 수 있으므로 점진적 C++ 빌드 시스템에서 변경된 소스 파일만 컴파일할 수 있습니다.이렇게 하면 반복 시간을 크게 줄일 수 있습니다.
API Compatibility Level 프로젝트에서 사용할 수 있는 .NET API를 선택합니다.이 설정은 타사 라이브러리와의 호환성에 영향을 줄 수 있습니다.그러나 에디터 전용 코드(에디터 디렉토리 또는 에디터 전용 어셈블리 정의 내 코드)에는 영향을 미치지 않습니다.
.Net Standard 2.0 .NET Standard 2.0과 호환됩니다. 크기가 더 작은 빌드를 생성하며 크로스 플랫폼이 100% 지원됩니다.
.Net 4.x .NET Standard 2.0 프로파일과 추가 API의 모든 사항을 포함하는 .NET Framework 4와 호환됩니다. .NET Standard 2.0에 포함되지 않은 API에 액세스하는 라이브러리를 이용하는 경우 이 옵션을 선택하십시오. 크기가 큰 빌드를 생성하며, 일부 플랫폼의 경우 추가 API를 사용하지 못할 수 있습니다. 자세한 내용은 추가 클래스 라이브러리 어셈블리 레퍼런스를 참조하십시오.
C++ Compiler Configuration IL2CPP 생성 코드를 컴파일할 때 사용되는 C++ 컴파일러 설정입니다.이 설정은 기본적으로 Release for iOS로 설정되어 있으며 변경할 수 없습니다.
Use incremental GC 가비지 컬렉션을 여러 프레임에 걸쳐 분산하는 점진적 가비지 컬렉션을 사용하여 가비지 컬렉션과 관련된 프레임 기간의 스파이크를 줄입니다.자세한 내용은 자동 메모리 관리를 참조하십시오.

API 호환성 레벨

모든 타겟에 Mono API 호환성 수준을 선택할 수 있습니다. 간혹 타사 .NET 라이브러리에는 .NET 호환성 수준을 벗어난 기능이 사용되기도 합니다. Windows를 사용하는 경우 타사 소프트웨어 ILSpy를 사용하여 발생하는 상황과 해결 방법을 알아볼 수 있습니다. 다음의 단계를 따르십시오.

  1. Windows용 ILSpy를 설치합니다.
  2. 문제가 있는 API 호환성 수준의 .NET 어셈블리를 ILSpy로 드래그합니다. Frameworks/Mono/lib/mono/YOURSUBSET/ 에서 찾을 수 있습니다.
  3. 서드파티 어셈블리를 드래그합니다.
  4. 서드파티 어셈블리를 마우스 오른쪽 버튼으로 클릭하고 Analyze를 선택합니다.
  5. 분석 보고서에서 Depends on 섹션을 살펴봅니다.타사 어셈블리가 의존하고 있지만 선택한 .NET 호환성 레벨에서 사용할 수 없는 항목은 빨간색으로 하이라이트됩니다.

Apple 전용 정보

Setting Function
Allow downloads over HTTP HTTP를 통한 콘텐츠 다운로드를 허용할지 여부를 나타냅니다.옵션은 Not allowed, Allowed in Development builds only, Always allowed입니다.기본 옵션은 Not allowed로 설정되어 있는데, 이는 권장 프로토콜이 더 안전한 HTTPS이기 때문입니다.
Camera Usage Description 기기에서 카메라에 액세스하는 이유를 입력합니다.
Microphone Usage Description 기기에서 마이크에 액세스하는 이유를 입력합니다.
Location Usage Description 기기 위치에 액세스하는 이유를 입력합니다.
Use On-Demand Resources 온디맨드 리소스를 사용하려면 이 옵션을 활성화합니다.

이 옵션이 활성화되면 앱 슬라이싱을 위한 배리언트 맵 섹션이 표시됩니다.
Accelerometer Frequency 가속 센서를 샘플링할 빈도를 정의합니다.주파수를 15Hz, 30Hz, 60Hz 또는 100Hz 로 설정할 수 있습니다.더 나은 성능을 위해 더 낮은 주파수를 사용하십시오.앱에서 가속 센서를 사용하지 않는 경우 Disabled 를 선택하십시오.
Mute Other Audio Sources Unity 애플리케이션이 배경에서 실행 중인 애플리케이션의 오디오를 중지하게 하려면 이 옵션을 활성화합니다.그렇지 않으면 배경 애플리케이션의 오디오가 Unity 애플리케이션과 함께 계속 재생됩니다.
Prepare iOS for Recording 이 옵션을 활성화하면 마이크 녹음 API가 초기화됩니다.이렇게 하면 녹음 지연이 줄어들 뿐만 아니라 이어폰을 통해 iPhone 오디오 출력이 다시 라우팅됩니다.
Force iOS Speakers when Recording 이 옵션을 활성화하면 헤드폰을 연결하고 녹음하는 중에도 휴대폰의 오디오 출력을 내부 스피커를 통해 전송할 수 있습니다.
Requires Persistent WiFi Wi-Fi 연결을 요구하려면 이 옵션을 활성화합니다.이렇게 하면 앱이 실행되는 동안 활성 Wi-Fi 연결이 유지됩니다.
Supported URL schemes 지원되는 URL 체계 목록입니다.

새 체계를 추가하려면 Size 프로퍼티 값을 늘린 다음 표시되는 새 Element 상자에서 로드할 에셋에 대한 레퍼런스를 설정하십시오.

기기 정보

설정 기능
Target Device 앱의 대상 기기를 선택합니다. 선택 가능한 옵션은 iPhone Only, iPad OnlyiPhone + iPad 입니다.
Target SDK 앱의 타겟 SDK를 선택합니다. 선택 가능한 옵션은 Device SDKSimulator SDK 입니다.

참고: 올바른 SDK를 선택하십시오. 예를 들어 Unity에서 Device SDK를 선택하고 Xcode에서 시뮬레이터를 타게팅하면 빌드가 작동하지 않습니다.
Target minimum iOS Version 앱이 작동하는 iOS 최소 버전을 선택합니다.
ProMotion 지원 활성화(Enable ProMotion Support) ProMotion 디스플레이에서 고주파수 새로고침 속도(120Hz)를 허용하려면 이 옵션을 활성화합니다. 이 설정은 앱의 배터리 소모량을 증가시킬 수 있습니다.
ARKit 지원 필요(Requires ARKit support) 앱 스토어에 퍼블리시할 때 앱을 iPhone 6s/iOS 11 이상 기기로 제한하려면 이 옵션을 활성화합니다.
Automatically add capabilities 이 옵션을 활성화하면 Unity가 entitlements.plist 파일을 생성하고, 앱이 구현하는 iOS API용 기능(예: Game Center, 알림)을 추가합니다. 자세한 내용은 권리 부여에 대한 Apple 개발자 문서를 참조하십시오.
모서리에서 시스템 제스처 지연(Defer system gestures on edges) 사용자가 시스템 제스처를 실행하기 위해 두 번 스와이프해야 하는 하나 이상의 모서리를 선택합니다. 선택 가능한 옵션은 Top Edge, Left Edge, Bottom Edge, Right Edge 입니다.
iPhone X에서 홈 버튼 숨김(Hide home button on iPhone X) 앱이 실행 중일 때 iPhone X 기기에서 홈 버튼을 숨기려면 이 옵션을 활성화합니다.
일시 정지 시 추가 프레임 렌더링(Render Extra Frame on Pause) 이 옵션을 활성화하면 앱이 일시 정지될 때 프레임 다음에 추가 프레임을 발행할 수 있습니다.이렇게 하면 앱이 배경으로 전환될 때 앱이 일시 정지된 상태를 나타내는 그래픽스를 표시할 수 있습니다.
Enable Custom Background Behaviors 사용자가 홈 버튼을 누를 때 앱이 수행할 수 있는 작업을 선택하여 앱을 배경으로 전송합니다.예를 들어 BackgroundFetch GitHub 프로젝트를 참조하십시오.옵션은 다음과 같습니다.

- Audio, AirPlay, PiP
- Location updates
- Voice over IP
- Newsstand downloads
- External accessory communication
- Uses Bluetooth LE accessories
- Act as a Bluetooth LE accessory
- Background fetch
- Remote notifications

앱 슬라이싱을 위한 배리언트 맵

스크립팅에 설정된 배리언트 이름의 리스트를 확인하려면 Variant map for app slicing 섹션을 펼치십시오. 배리언트에 대한 자세한 내용은 앱 슬라이싱을 참조하십시오.

참고: 이 섹션이 표시되지 않으면 Use on Demand Resource 프로퍼티가 활성화되었는지 확인하십시오.

더하기(+) 및 빼기(-) 아이콘을 이용하여 새로운 배리언트를 추가하거나 제거할 수 있습니다. 배리언트 설정에서 리스트의 배리언트를 선택한 후 해당 설정을 확인하거나 수정할 수도 있습니다. Variant name 이외의 설정의 경우 Custom value 값을 선택하면 사용할 값을 입력할 수 있는 위치 아래에 추가 프로퍼티가 나타납니다.

설정 기능
Variant name 로딩 스크립트에서 배리언트 이름을 표시합니다.
기기 이 배리언트가 타게팅하는 기기를 선택합니다. 선택 가능한 옵션은 Any (기본값), iPhone, iPad, iWatchCustom value 입니다.
Memory 이 배리언트에 필요한 최소 메모리를 선택합니다. 선택 가능한 옵션은 Any (기본값), 1GB, 2GB, 3GB, 4GBCustom value 입니다.
Graphics 사용할 Metal 프레임워크를 선택합니다. 사용 가능한 옵션은 Any (기본값), Metal1v2, Metal2v2, Metal2v3, Metal3v1, Metal3v2, Metal4v1, Custom value 입니다.

자세한 내용은 Metal에 대한 Apple 개발자 문서를 참조하십시오.
Display color space 사용할 색 영역을 선택합니다. 사용 가능한 옵션은 Any (기본값), sRGB, DisplayP3Custom value 입니다.

자체 설정을 추가할 수도 있습니다. Add custom entry 버튼을 클릭하면 다음과 같은 새로운 텍스트 상자 페어가 나타납니다.

  • <key>: 이 설정의 이름을 입력합니다.
  • <value>: 이 설정의 값을 입력합니다.

기타 구성 설정

Setting Function
Architecture 타겟으로 할 아키텍처를 선택합니다.이 설정은 iOS의 경우 기본적으로 ARM64로 설정되어 있으며 변경할 수 없습니다.
Active Input Handling 사용자의 입력을 처리하는 방법을 선택합니다.
Input Manager (old) 기본 Input 창을 사용합니다.
Input System Package (New) 최신 입력 시스템을 사용하십시오.새 입력 시스템을 시도하려면 InputSystem 패키지를 설치하십시오.
Both 두 시스템 모두를 나란히 사용합니다.

셰이더 배리언트 로딩

이 설정을 사용하여 런타임에 셰이더가 사용하는 메모리 양을 제어할 수 있습니다.

설정 설명
Default chunk size (MB) Sets the maximum size of compressed shader variant data chunks Unity stores in your built application for all platforms. The default is 16. Refer to Shader loading for more information.
Default chunk count 모든 플랫폼에서 Unity가 메모리에 보관하는 압축 해제된 청크 수에 대한 기본 제한을 설정합니다.기본값은 0으로 제한이 없습니다.
Override 이 빌드 타겟에 대해 Default chunk sizeDefault chunk count 를 오버라이드할 수 있습니다.
Chunk size (MB) 이 빌드 타겟에서 Default chunk size (MB) 값을 오버라이드합니다.
Chunk count 이 빌드 타겟에서 Default chunk count 값을 오버라이드합니다.

스크립트 컴파일

iOS 플랫폼용 스크립트 컴파일 설정
iOS 플랫폼용 스크립트 컴파일 설정
프로퍼티 설명
Scripting Define Symbols 커스텀 컴파일 플래그를 설정합니다.

자세한 내용은 플랫폼 종속 컴파일을 참조하십시오.
Additional Compiler Arguments 이 리스트에 항목을 추가하여 Roslyn 컴파일러에 추가 인자를 전달합니다.각 추가 인자에 대해 새 항목을 하나씩 사용합니다.
새 항목을 생성하려면 Add(+)를 클릭합니다.항목을 제거하려면 Remove(-)를 클립합니다.

원하는 인자를 모두 추가하면 Apply를 클릭하여 향후 컴파일에 추가 인자를 포함합니다.Revert를 클릭하면 이 리스트를 가장 최근 적용된 상태로 재설정할 수 있습니다.
Suppress Common Warnings C# 경고 CS0169CS0649 표시 여부를 나타냅니다.
Allow ‘unsafe’ Code 사전 정의된 어셈블리(예: Assembly-CSharp.dll)에서 ‘안전하지 않은’ C# 코드 컴파일에 대한 지원을 활성화합니다.
어셈블리 정의 파일(.asmdef)의 경우, .asmdef 파일 하나를 클릭하고 표시되는 인스펙터 창에서 해당 옵션을 활성화합니다.
Use Deterministic Compilation -deterministic C# 플래그를 사용한 컴파일 방지 여부를 나타냅니다.이 설정을 사용하면 어셈블리가 컴파일될 때마다 바이트 단위로 동일하게 컴파일됩니다.
자세한 내용은 Microsoft의 결정적 컴파일러 옵션을 참조하십시오.
Enable Roslyn Analyzers 프로젝트에 있을 수 있는 Roslyn 분석기 DLL 없이 사용자 작성 스크립트를 컴파일할지 여부를 나타냅니다.

최적화(Optimization)

iOS 플랫폼을 위한 최적화 설정
iOS 플랫폼을 위한 최적화 설정
Setting Function
Prebake Collision Meshes 빌드 시 Meshes에 충돌 데이터를 추가합니다.
Keep Loaded Shaders Alive 셰이더의 언로드를 방지할지 여부를 나타냅니다.

자세한 내용은 셰이더 로딩을 참조하십시오.
Preloaded Assets 시작 시 플레이어가 로드할 에셋 배열을 설정합니다.
새 에셋을 추가하려면 Size 프로퍼티 값을 늘린 다음, 표시되는 새 Element 상자에서 로드할 에셋에 대한 레퍼런스를 설정합니다.
AOT compilation options Ahead of Time(AOT) 컴파일을 위한 추가 옵션입니다. 빌드한 iOS 플레이어 크기 최적화에 도움이 됩니다.
Strip Engine Code Unity Linker 툴을 이용하여 프로젝트에서 사용되지 않는 Unity 엔진 기능의 코드를 제거하려면 이 옵션을 활성화합니다. 이 설정은 IL2CPP 스크립팅 백엔드와만 사용할 수 있습니다.

대부분의 앱이 사용할 수 있는 모든 DLL을 사용하지는 않습니다. 이 옵션은 빌드된 플레이어 크기를 줄이기 위해 앱이 사용하지 않는 DLL을 제거합니다. 앱이 현재 설정에서 일반적으로 제거되는 하나 이상의 클래스를 사용 중인 경우 Unity에서는 앱을 빌드하려고 할 때 디버그 메시지를 표시합니다.
Managed Stripping Level Unity가 사용하지 않는 관리되는 (C#) 코드를 얼마나 적극적으로 스트리핑할지 선택합니다.옵션은 Minimal, Low, Medium, High입니다.
Unity가 앱을 빌드하면 Unity Linker 프로세스는 프로젝트가 사용하는 관리되는 DLL에서 미사용 코드를 스트리핑할 수 있습니다.스트리핑 코드는 실행 파일의 크기를 훨씬 작게 만들 수 있지만, 때때로 사용 중인 코드가 실수로 제거될 수 있습니다.

이러한 옵션과 IL2CPP를 사용한 바이트코드 스트리핑에 대한 자세한 내용은 ManagedStrippingLevel을 참조하십시오.
Script Call Optimization 런타임에 속도 향상을 위해 예외 처리를 선택적으로 비활성화하는 방법을 선택합니다.자세한 내용은 iOS 최적화를 참조하십시오.
Slow and Safe 전체 예외 처리를 사용합니다((Mono 스크립팅 백엔드를 사용하면 기기 성능에 영향을 줄 수 있음).
Fast but no Exceptions 기기에서 예외에 대한 데이터가 제공되지 않습니다(Mono 스크립팅 백엔드 사용 시 앱이 더 빠르게 실행됨).
참고:이 옵션을 IL2CPP 스크립팅 백엔드와 함께 사용하면 성능에는 영향을 미치지 않지만 릴리스 빌드에서 정의되지 않은 동작을 방지하는 데 도움이 될 수 있습니다.
Vertex Compression 채널당 버텍스 압축을 설정합니다.이는 프로젝트의 모든 메시에 영향을 미칩니다.
일반적으로 버텍스 압축은 메모리 내의 메시 데이터 크기를 줄이고 파일 크기를 줄이며 GPU 성능을 향상시키는 데 사용됩니다.

버텍스 압축을 구성하는 방법과 이 설정의 제한 사항을 자세히 보려면 메시 데이터 압축을 참조하십시오.
Optimize Mesh Data Enable this option to strip unused vertex attributes from the mesh used in a build. This option reduces the amount of data in the mesh, which can help reduce build size, loading times, and runtime memory usage.

Warning: If you have this setting enabled, you should remember to not change material or shader settings at runtime.

Refer to PlayerSettings.stripUnusedMeshComponents for more information.
Strict shader variant matching 셰이더 배리언트가 누락된 경우, 에디터는 콘솔에 오류 메시지를 표시하면서 밝은 분홍색 오류 셰이더를 사용합니다.
Texture MipMap Stripping 모든 플랫폼에 대한 밉맵 스트리핑을 활성화합니다.이것은 빌드 시 텍스처에서 사용하지 않는 밉맵을 제거합니다.Unity는 현재 플랫폼의 Quality Settings와 밉맵의 값을 비교하여 사용하지 않는 밉맵을 결정합니다.현재 플랫폼의 모든 Quality Setting에서 밉맵 값이 제외된 경우 Unity는 빌드 시점에 빌드에서 해당 밉맵을 제거합니다.QualitySettings.masterTextureLimit이 제거된 밉맵 값으로 설정된 경우, Unity는 제거되지 않은 가장 가까운 밉맵 값으로 값을 설정합니다.

로깅(Logging)

특정 컨텍스트에서 허용할 로깅 유형을 선택합니다.

iOS 플랫폼을 위한 로깅 설정
iOS 플랫폼을 위한 로깅 설정
  • 필요한 로깅 유형에 따라 각 로그 유형(Error, Assert, Warning, Log, Exception)에 해당하는 옵션을 활성화하여 선호하는 스택 추적 방법을 선택합니다.예시:
    • ScriptOnly:스크립트를 실행할 때만 로그합니다.
    • Full:항상 로그합니다.
    • None:어떤 로그도 기록하지 않습니다.

자세한 내용은 스택 추적 로깅을 참조하십시오.

레거시

SkinnedMeshRenderers의 블렌드 셰이프 가중치 범위를 고정하려면 Clamp BlendShapes (Deprecated) 옵션을 활성화합니다. 이 옵션은 지원이 중단되어 더 이상 사용할 수 없습니다.

PlayerSettingsiOS

iOS 계정 설정
iOS용 개발