Unity & C#/최적화

Unity Graphics APIs 안드로이드 설정

coucou3 2022. 7. 22. 02:03
반응형

 

 

 

Graphics API가 무엇이고, 안드로이드 플랫폼에서 어떻게 설정 해야하는가에 대한 정리

 

 

 

0. Graphics API

 

그래픽스 API 지원 - Unity 매뉴얼

Unity는 특정 플랫폼의 API 유효성에 따라 DirectX, Metal, OpenGL 및 Vulkan 그래픽스 API를 지원합니다. Unity는 빌트인 그래픽스 API 세트 또는 에디터에서 선택된 그래픽스 API를 사용합니다.

docs.unity3d.com

 

 

1. Unity에서 설정하는 방법

ProjectSettings > Player > OtherSettings > Rendering > Graphics APIs

이때 Auto Graphics API가 체크되어 있다면 Graphics APIs 목록은 나타나지 않는다.

 

 

 

2. Graphics APIs 동작 방식

위와 같이 Graphics APIs 목록에 여러 개가 들어 있다면 맨 위에서부터 차례대로 사용을 시도한다.

Vulkan / OpenGLES3 / OpenGLES2 순서로 들어 있다면 그대로 Vulkan -> OpenGLES3 -> OpenGLES2 순서로 사용 시도한다.

사용 시도라고 하는 것은 디바이스에서 해당 API가 지원되지 않을 경우 목록의 다음으로 넘어간다는 것을 의미한다.

 

 

 

3. Auto Graphics API

Unity Documentation에 따르면 다음과 같다.

플랫폼에 대해 Auto Graphics API를 선택하면 플레이어는 빌트인 그래픽스 API 세트를 포함하고 런타임 시점에 그중 가장 적합한 API를 사용하여 최상의 시나리오를 만듭니다.

 

그러나 Auto Graphics API를 사용하면 Vulkan은 사용되지 않는다 !

(~Unity 2021.1까지도 Auto로 Vulkan이 안됨)

 

Vulkan API를 사용하기 위해선 Auto를 끄고 Vulkan을 최상단 목록에 넣어주어야 한다.

Vulkan을 지원하는 모든 디바이스는 OpenGLES3를 지원하기 때문에 OpenGLES3가 앞에 오면 Vulkan은 사용되지 않을 것.

안드로이드에서 Vulkan을 쓰려면 이렇게

 

 

 

 

 

 


<참고>

1. Will the "Auto Graphics API" automatically enable the Vulkan API when available?

2. Auto graphics api logic

 

반응형