Unity 그래픽스 티어 설정 가이드
Unity에서 그래픽스를 다양한 하드웨어에서 최적화하는 방법에 대한 정보입니다. 그래픽스 티어 설정을 통해 각 하드웨어에 따라 다양한 성능을 발휘할 수 있습니다. 이 문서에서는 그래픽스 티어의 개념부터 설정 방법까지 상세히 설명하겠습니다.
그래픽스 티어란?
그래픽스 티어는 Unity가 처음으로 애플리케이션을 로드할 때 하드웨어와 그래픽스 API를 확인하여 결정되는 값입니다. 이 티어는 현재 환경에 따라 다르게 설정됩니다.
그래픽스 티어 목록
Value | Hardware | Corresponding Graphics Tier |
---|---|---|
0 | Android: OpenGL ES 2 지원 장치 iOS: iPhone 5S 이전 모델 및 iPod 5세대까지 |
UNITY_HARDWARE_TIER1 |
1 | Android: OpenGL ES 3 및 Vulkan 지원 장치 iOS: iPhone 5S 이후 모델 |
UNITY_HARDWARE_TIER2 |
2 | Desktop: OpenGL, Metal, Vulkan, DirectX 11 이상 | UNITY_HARDWARE_TIER3 |
그래픽스 티어 사용
Unity는 Graphics.activeTier
를 통해 현재 그래픽스 티어 값을 저장합니다. 이를 기반으로 커스텀 동작을 추가할 수 있습니다. 티어 값을 설정하려면 메인 씬을 로드하기 전에 수행해야 합니다.
C# 스크립트로 그래픽스 티어 설정
다음은 C# 스크립트를 사용하여 그래픽스 티어를 설정하는 예제입니다.
if (Graphics.activeTier == GraphicsTier.Tier1)
{
// Tier 1에 대한 동작
}
else
{
// 다른 티어에 대한 동작
}
티어 설정 변경
Unity 에디터에서 각 티어의 그래픽스 성능을 활성화하거나 비활성화할 수 있습니다. 변경 방법은 다음과 같습니다:
- 그래픽스 설정 창 사용: 티어 설정 섹션에서 조정합니다.
- 에디터 스크립트 사용: 적절한 API를 통해 설정을 변경합니다.
그래픽스 티어 및 셰이더 배리언트
빌트인 렌더 파이프라인에서는 Unity가 각 그래픽스 티어에 해당하는 셰이더 배리언트를 생성할 수 있습니다. 런타임 시에는 활성 티어에 대한 배리언트만 로드됩니다.
예제 HLSL 코드
다음은 HLSL 코드 예제입니다.
#if UNITY_HARDWARE_TIER1
// Tier 1에 대한 코드
#else
// 다른 장치에 대한 코드
#endif
결론
Unity의 그래픽스 티어 설정 기능을 통해 다양한 하드웨어에서 최적의 성능을 낼 수 있습니다. 기본 티어 설정은 대부분의 경우 적합하며, 필요할 경우에만 변경하면 됩니다.
이 문서에서 설명한 내용을 바탕으로, 다양한 하드웨어와 대상에 따른 설정을 조정하여 최적화된 애플리케이션을 개발할 수 있습니다.
자세한 정보는 Unity 공식 매뉴얼을 참조하시기 바랍니다.