Metal은 Apple 기기용 표준 그래픽스 API입니다. Unity는 iOS, tvOS 및 macOS에서 Metal을 지원합니다(스탠드얼론 및 에디터).
Metal은 OpenGL ES보다 Apple 플랫폼에서 더 많은 기능을 제공합니다. Metal 사용에 관한 장단점은 아래를 참조하십시오.
Metal 사용의 장점
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은 지오메트리 셰이더를 지원하지 않습니다.
Unity 에디터 및 스탠드얼론 플레이어가 Metal을 기본 그래픽스 API로 사용하도록 만들려면 다음 중 하나를 수행하십시오.
에디터의 메뉴에서 Edit > Project Settings 로 이동한 다음 Player 카테고리를 선택하고 Metal Editor Support 를 활성화합니다.
MacOS를 사용하는 경우 Terminal을 열고 -force-metal
커맨드 라인 인자를 사용합니다.
Metal은 iOS, tvOS 및 macOS 스탠드얼론 플레이어에서 기본적으로 활성화됩니다.
Xcode에서 제공하는 Metal API 확인 기능으로 보이지 않는 문제를 추적할 수 있습니다. Xcode에서 Metal API 확인을 활성화하려면 다음 단계를 따르십시오.
Unity에서 iOS용 프로젝트를 빌드합니다. 그러면 Xcode 프로젝트가 생성됩니다.
Xcode에서 생성된 Xcode 프로젝트를 열고 Edit Scheme 을 선택합니다.
확인 오류가 XCode 에디터에서 코드 실행을 손상하며 기기 로그에 나타납니다.
참고: 확인을 활성화하면 CPU 사용이 증가하므로 디버깅 시에만 활성화하십시오.
Metal을 사용하면 애플리케이션을 실행할 때 GPU 기기를 선택할 수 있습니다. 따라서 다양한 GPU 설정에서 프로젝트를 테스트하고, 저전력 GPU를 사용하여 전력을 절감할 수 있습니다.
Unity 에디터 타겟 GPU 기기를 변경하려면 메뉴에서 Unity > Preferences… > General 을 선택한 후 Device To Use 를 설정하십시오.
스탠드얼론 플레이어 타겟 GPU 기기를 변경하려면 애플리케이션을 시작하거나 메뉴에서 File > Build and run 을 선택한 후 나타나는 다이얼로그에서 Graphics device to use 를 관련 GPU로 설정하십시오.
Metal을 사용하면 메모리리스 렌더 타겟으로 모바일 기기의 메모리를 최적화할 수 있습니다(iOS 및 tvOS 10.0에서 도입됨). 이렇게 하면 시스템 메모리에서 백업하지 않고도 RenderTexture로 렌더링할 수 있기 때문에 콘텐츠가 렌더링 동안 온타일(on-tile) 메모리에만 일시적으로 저장됩니다.
자세한 내용은 RenderTexture.memorylessMode를 참조하십시오.
2018–05–22 페이지 게시됨
2017.4에서 Metal 사용에 관한 팁 추가됨
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.