DirectX
OpenGL Core

Metal

Metal은 Apple 기기용 표준 그래픽스 API입니다. Unity는 iOS, tvOS 및 macOS에서 Metal을 지원합니다(스탠드얼론 및 에디터).

Metal은 OpenGL ES보다 Apple 플랫폼에서 더 많은 기능을 제공합니다. Metal 사용에 관한 장단점은 아래를 참조하십시오.

Metal 사용의 장점

  • 그래픽스 API 호출 시 적은 CPU 소모
  • API 수준 확인 레이어
  • 빌트인 GPU 시스템에서 GPU 제어 강화
  • 메모리리스(memory-less) 렌더 타겟 지원(iOS/tvOS)
  • 새로운 Apple 표준
  • 컴퓨터 셰이더
  • 테셀레이션 셰이더

Metal 사용의 단점

  • 저사양 기기 미지원
  • 지오메트리 셰이더 미지원

한계 및 요구사항

  • iOS 및 tvOS는 Apple A7 또는 최신 SoC-s에 대해 Metal을 지원합니다.

  • macOS는 HD 4000 시리즈 이상의 Intel HD 및 Iris Graphics, AMD GCN 기반 GPU, Nvidia Kepler 기반 GPU 이상에 대해 Metal을 지원합니다.

  • 최소 셰이더 컴파일 타겟은 3.5입니다.

  • Metal은 지오메트리 셰이더를 지원하지 않습니다.

Metal 활성화

Unity 에디터 및 스탠드얼론 플레이어가 Metal을 기본 그래픽스 API로 사용하도록 만들려면 다음 중 하나를 수행하십시오.

  • 에디터의 메뉴에서 Edit > Project Settings 로 이동한 다음 Player 카테고리를 선택하고 Metal Editor Support 를 활성화합니다.

  • MacOS를 사용하는 경우 Terminal을 열고 -force-gfx-metal 커맨드 라인 인자를 사용합니다.

Metal은 iOS, tvOS 및 macOS 스탠드얼론 플레이어에서 기본적으로 활성화됩니다.

Metal API 확인

Xcode에서 제공하는 Metal API 확인 기능으로 보이지 않는 문제를 추적할 수 있습니다. Xcode에서 Metal API 확인을 활성화하려면 다음 단계를 따르십시오.

  1. Unity에서 iOS용 프로젝트를 빌드합니다. 그러면 Xcode 프로젝트가 생성됩니다.

  2. Xcode에서 생성된 Xcode 프로젝트를 열고 Edit Scheme 을 선택합니다.

Edit Scheme 창 열기

  1. Run > Options > Metal API Validation 을 선택하고 Enabled 를 선택합니다.

Metal API 확인 수준 변경

확인 오류가 XCode 에디터에서 코드 실행을 손상하며 기기 로그에 나타납니다.

참고: 확인을 활성화하면 CPU 사용이 증가하므로 디버깅 시에만 활성화하십시오.

GPU 기기 선택

Metal을 사용하면 애플리케이션을 실행할 때 GPU 기기를 선택할 수 있습니다. 따라서 다양한 GPU 설정에서 프로젝트를 테스트하고, 저전력 GPU를 사용하여 전력을 절감할 수 있습니다.

Unity 에디터 타겟 GPU 기기를 변경하려면 메뉴에서 Unity > Preferences… > General 을 선택한 후 Device To Use 를 설정하십시오.

에디터에서 타겟 GPU 변경
에디터에서 타겟 GPU 변경

스탠드얼론 플레이어 타겟 GPU 기기를 변경하려면 애플리케이션을 시작하거나 메뉴에서 File > Build and run 을 선택한 후 나타나는 다이얼로그에서 Graphics device to use 를 관련 GPU로 설정하십시오.

스탠드얼론 플레이어에서 타겟 GPU 변경
스탠드얼론 플레이어에서 타겟 GPU 변경

메모리리스 렌더 타겟 사용

Metal을 사용하면 메모리리스 렌더 타겟으로 모바일 기기의 메모리를 최적화할 수 있습니다(iOS 및 tvOS 10.0에서 도입됨). 이렇게 하면 시스템 메모리에서 백업하지 않고도 RenderTexture로 렌더링할 수 있기 때문에 콘텐츠가 렌더링 동안 온타일(on-tile) 메모리에만 일시적으로 저장됩니다.

자세한 내용은 RenderTexture.memorylessMode를 참조하십시오.


  • 2018–05–22 편집 리뷰를 거쳐 페이지 게시됨

  • 2017.4에서 Metal 사용에 관한 팁 추가됨

DirectX
OpenGL Core