이 페이지에서는 iOS 기기 배포에만 해당되는 최적화에 대해 자세하게 설명합니다.
UnityEngine 네임스페이스의 함수는 대부분 C/C++로 구현됩니다. Mono 스크립트에서 C/C++ 함수를 호출하면 성능이 저하되므로, iOS 스크립트 호출 최적화를 사용하면 프레임당 약 1–4 밀리초를 절약할 수 있습니다.
iOS 스크립트 호출 최적화에 액세스하려면 플레이어 설정 창으로 이동(메뉴: 편집(Edit) > 프로젝트 설정(Project Settings) > 플레이어(Player))하여 iOS 아이콘(아래 참조)을 선택합니다.
기타 설정(Other Settings) 섹션에서 스크립트 호출 최적화(Script Call Optimization) 설정을 찾습니다.
설정의 옵션은 다음과 같습니다.
참고: IL2CPP 스크립팅 백엔드를 사용할 경우 성능면에서 혜택은 없지만, 정의되지 않은 동작을 방지하지 위해 릴리스 빌드에 Fast but no exceptions 옵션을 사용하는 것이 좋습니다.
Unity iOS를 사용하면 애플리케이션이 렌더링 루프 실행을 시도하는 빈도를 변경할 수 있습니다. 기본 설정은 초당 30프레임입니다. 이 숫자를 낮춰서 배터리 소모를 줄일 수 있지만, 그러면 당연히 프레임 업데이트가 감소하는 대가를 치러야 합니다. 반대로 프레임 속도를 높여서 터치 입력이나 가속 센서 등 다른 작업보다 렌더링에 더 높은 우선 순위를 부여할 수도 있습니다. 프레임 속도를 다양하게 선택하고 실험해 보면서 게임플레이에 미치는 영향을 파악해야 합니다.
애플리케이션이 많은 연산이나 렌더링을 수반하고 예를 들어 초당 15프레임만 유지할 수 있는 경우 원하는 프레임 속도를 15보다 높게 설정해도 성능이 향상되지 않습니다. 더 높은 프레임 속도를 얻을 수 있으려면 애플리케이션을 충분히 최적화해야 합니다.
원하는 프레임 속도를 설정하려면 Application.targetFrameRate를 변경합니다.
가속 센서 입력이 너무 자주 처리되는 경우, 게임의 전반적인 성능이 저하되는 원인이 될 수 있습니다. Unity iOS 애플리케이션은 기본적으로 가속 센서를 초당 60번 샘플링합니다. 가속 센서 샘플링 빈도를 낮추면 성능이 다소 향상될 수 있고, 가속 센서 입력을 사용하지 않는 게임의 경우 0으로 설정할 수도 있습니다. 가속 센서 빈도는 iOS 플레이어 설정의 Other Settings 패널에서 변경할 수 있습니다.