Before you begin to develop an Android application in Unity, check Unity’s requirements and compatibility information for Android to make sure you’re aware of any limitations for developing a Unity application for this platform.
Unity supports Android 5.1 “Lollipop” (API level 22) and above. For more information, refer to AndroidSdkVersions.
Android devices support Vulkan and OpenGL ES. This section contains information about the graphics APIs Unity supports for Android.
그래픽스 API | 지원 |
---|---|
Vulkan | 지원 |
OpenGL ES 1.0 | 지원 안 함 |
OpenGL ES 1.1 | 지원 안 함 |
OpenGL ES 2.0 | 지원(1) |
OpenGL ES 3.0 | 지원 |
OpenGL ES 3.1 | 지원 |
OpenGL ES 3.2 | 지원 |
참고:
Unity는 기본적으로 Android용 빌트인 그래픽스 API 세트에 OpenGL ES 2.0을 포함하지 않습니다. OpenGL ES 2.0에 대한 지원을 추가하려면 다음을 따르십시오.
Auto Graphics API를 사용하는 이전 프로젝트를 OpenGL ES 2.0이 기본으로 포함되지 않은 Unity 버전으로 업그레이드하면 Unity는 Auto Graphics API를 비활성화하고 OpenGL ES 2.0을 수동으로 리스트에 추가합니다.
Not every render pipeline is compatible with Android due to hardware and graphics API limitations.
기능 | 빌트인 렌더 파이프라인 | Universal Render Pipeline | High Definition Render Pipeline | Custom Scriptable Render Pipeline |
---|---|---|---|---|
Android | 지원 | 지원 | 지원 안 함 | 지원 |
이 섹션에는 Android 앱 매니페스트 요소 속성에 대한 호환성 정보가 포함되어 있습니다.
singleTask
launchMode만 지원합니다.Unity doesn’t support Android emulators. To test your application, you can:
Android의 기본 텍스처 압축 포맷은 에릭슨 텍스처 압축(ETC)과 어댑티브 스케일러블 텍스처 압축(ASTC)입니다. 가장 광범위한 Android 기기를 대상으로 하려면 다음 텍스처 압축 포맷 중 하나를 사용하십시오. Unity의 기본 텍스처 압축 포맷은 ASTC입니다. Android 기기가 텍스처에 사용할 텍스처 압축 포맷을 지원하지 않는 경우 Unity는 런타임 시 텍스처의 압축을 해제합니다. 이로 인해 메모리 사용량이 증가하고 렌더링 속도가 감소합니다.
일부 Android 기기는 DXT와 PVRTC 텍스처 압축 포맷을 지원합니다. 이러한 포맷은 알파 채널이 있는 텍스처를 지원할 뿐만 아니라 높은 압축률 또는 높은 화질을 지원합니다. 텍스처 압축 포맷을 기반으로 콘텐츠를 필터링하는 디지털 배포 서비스의 경우 각 텍스처 압축 포맷에 대해 별도의 애플리케이션 빌드를 만드는 것이 가장 좋습니다.
애플리케이션의 기본 텍스처 압축 포맷을 변경하는 방법에는 두 가지가 있습니다.
빌드 설정에서 설정한 값은 플레이어 설정에서 설정한 값보다 우선합니다. 빌드 설정은 특정 빌드의 텍스처 압축 포맷을 변경하는 데 사용합니다.
텍스처마다 개별적으로 텍스처 압축 포맷을 커스터마이즈할 수도 있습니다. 개별 텍스처에 대해 설정한 값은 기본 텍스처 압축 포맷 값을 오버라이드합니다. 개별 텍스처의 텍스처 포맷을 변경하는 방법에 대한 자세한 내용은 텍스처 임포터를 참조하십시오.
이 섹션은 Android에서 동영상 파일을 재생하는 데 대한 추가 정보를 제공합니다.
Android에서 동영상 파일을 재생하려면 Video Player 컴포넌트를 사용하십시오. 애플리케이션이 기기에서 지원하지 않는 동영상 파일을 재생하려고 하면 Unity에서 동영상을 재생하지 않습니다.
타겟 디바이스가 지원하는 한 모든 해상도 또는 오디오 채널을 사용할 수 있습니다. 참고: 일부 기기는 640 × 360 이상의 해상도를 지원하지 않습니다.
Unity는 압축되지 않은 에셋 번들에서 재생을 지원합니다. Android Pie 이상의 버전이면, 압축된 에셋 번들에서 재생을 지원합니다.
Unity는 네이티브 WebM/VP8 투명도를 지원하지 않습니다. VP8 인코딩 WebM 클립을 투명하게 재생하려면 클립을 지원되는 포맷으로 변환합니다.
Android 6.0.1
이전 버전에서 기기가 지원하는 해상도보다 더 높은 해상도를 사용하는 투명도가 있는 동영상은 흰색처럼 지원되는 해상도 외부에서 픽셀을 렌더링합니다.
Unity는 ‘adb 로그캣’ 출력에 ’AndroidVideoMedia’를 접두사로 붙여 포맷 호환성 문제를 보고합니다. 이 파일은 Unity가 보고하는 동영상 포맷 문제와 관련된 다른 기기별 오류 메시지를 표시할 수 있습니다. 이러한 기기별 오류는 Unity에서 볼 수 없으며 호환성 문제가 무엇인지 설명하는 경우가 많습니다.