Advanced Development
프로파일러 창(Profiler window)

The Profiler Window

유니티 프로파일러(Unity Profiler)는 게임의 최적화에 도움이 됩니다. 게임의 다양한 부분들에 대해 얼마나 많은 시간을 소요하고 있는 지를 리포트해줍니다. 예를 들면, 게임 로직 내에서 렌더링이 차지하는 시간의 비율 그리고 애니메이션에 소요된 시간의 비율 등을 알려줍니다.

프로파일링을 켜놓은 상태로 에디터에서 게임을 플레이함으로써 성능데이터가 기록될 것입니다. Profiler 창을 통해서 타임라인 내에 해당 데이터들이 표시되기 때문에, 다른 것들에 비해 더 많은 시간소모가 되는 영역 또는 프레임들을 확인할 수 있습나다. 타임라인 위에 임의의 위치를 클릭하면, Profiler 창 아래쪽에 선택된 프레임에 대한 자세한 정보가 표시됩니다.

프로파일링은 코드를 측정한다 는 것을 기억해두세요. 측정은 게임성능에 최소한의 영향을 줍니다. 일반적으로 이 오버헤드는 게임의 프레임 속도에 영향을 미치지 않을 정도로 충분히 작습니다. 프로파일링을 사용할 때 특정 지역에서 소요된 시간의 비율(또는 퍼센트)만을 고려하는 것이 일반적입니다. 또한 성능을 개선하기 위해서 시간을 소비하는 게임의 부분들에 대해서 초점을 두세요. 코드변경 전후의 프로파일링 결과를 비교하고 측정개선을 결정합니다. 경우에 따라서는 성능개선을 위해 변경한 내용이 프레임 속도에 부정적인 영향을 미칠 수 있으며, 코드 최적화 부분에 있어 예상치 못한 영향을 줄 수도 있습니다.

Profile창에 대한 상세 내용은 다음 페이지에 설명되어 있습니다.

더 자세한 내용

Webplayer

Webplayer 프로파일링은 다음의 순서로 실행할 수 있습니다 :

  1. Unity의 Build Settings 대화 상자에서 “Development Build”를 체크하고 빌드를 하기 전에 Profiler 창을 엽니다.
  2. 게임 Webplayer에서 실행되는 경우, WebPlayer에서 Alt+오른쪽 클릭하여 컨텍스트 메뉴를 열고 Release ChannelDevelopment 로 설정되어 있는지 확인합니다.
  3. Profiler 창의 Active Profiler 드롭 다운 메뉴에서 OSXWebPlayer(YOURCOMPUTERNAME) 또는 WindowsWebPlayer(YOURCOMPUTERNAME) 를 필요에 따라 선택하십시오.

iOS

원격 프로파일링은 다음 단계를 거쳐서 iOS 디바이스에서 활성화 할 수 있습니다:

  1. iOS 기기를 WiFi 네트워크에 연결합니다 (장치에서 Unity 에디터 프로파일링 데이터를 전송하기 위해 프로파일 러는 로컬 / 임시 WiFi 네트워크를 사용합니다).
  2. Unity의 Build Settings 대화 상자에서 “Autoconnect Profiler”를 확인합니다.
  3. 케이블을 통해서 Mac과 디바이스를 연결한 후, Unity의 Build Settings 대화 상자에서 “Development Build”를 체크하고 “Build & Run”을 클릭합니다.
  4. 디바이스에서 응용 프로그램을 시작한 후, Unity 에디터에서 Profiler 창을 엽니다 (Window->Profiler).

방화벽을 사용하는 경우, 방화벽 outbound rule에서 포트 번호 54998 to 55511가 개방되어 있는지 확인합니다 -이 포트는 Unity에 의해 원격 프로파일링로 사용됩니다.

참고: Unity 에디터는 장치에 자동으로 연결되지 않을 수 있습니다. 그런 경우는 프로파일러 접속은 Profiler 창의 Active Profiler 드롭 다운 메뉴에서 적절한 장치를 선택하여 시작할 수 있습니다.

Android

원격 프로파일링은 다른 경로에 의해 Android 장치에서 활성화할 수 있습니다 : WiFi 또는 ADB.

WiFi 프로파일링에서는, 다음의 단계를 따르십시오 :

  1. Android 장치에서 모바일 데이터 통신을 비활성화합니다.
  2. Android 장치를 WiFi 네트워크에 연결합니다.
  3. 케이블로 Mac/PC에 디바이스를 연결한 후, Unity의 Build Settings 대화 상자에서 “Development Build”를 체크하고 “Build & Run”을 클릭합니다.
  4. 장치에서 응용 프로그램을 시작한 후 Unity 에디터에서 Profiler 창을 엽니다. (Window-> Profiler)
  5. 만약 Unity 에디터가 장치에 자동으로 연결하지 않으면 Profiler 창 Active Profiler 드롭 다운 메뉴에서 적절한 장치를 선택합니다. __ 참고 : 작업할 장치를 감지하기 위해서는 __ Android 장치 및 (Unity 에디터를 실행하는) 호스트 컴퓨터는 둘 다 동일한 서브넷 (http://en.wikipedia.org/wiki/Subnetwork) 상에 있어야 합니다.

ADB 프로파일링을 하려면 다음 단계를 수행합니다 :

  • 케이블을 통해 Mac/PC에 장치를 연결하고 ADB가 장치를 인식하는지 확인합니다(즉, adb devices 목록에 나타납니다).
  • Unity의 Build Settings 대화 상자에서 “Development Build”를 체크하고 “Build & Run”을 클릭합니다.
  • 장치에서 응용 프로그램을 시작한 후, Unity 에디터에서 Profiler 창을 엽니다. (Window->Profiler)
  • Profiler 창의 Active Profiler 드롭 다운 메뉴에서 AndroidProfiler(ADB@127.0.0.1:54999) 을 선택합니다. 참고: Unity 에디터는 “Build & Run”을 누르면 응용 프로그램에 자동으로 adb 터널을 만듭니다. 만약 다른 응용 프로그램을 프로파일하거나 adb 서버를 수동으로 다시 시작하길 원한다면, 수동으로 이 터널을 설정해야 합니다. 이렇게 하기 위해서는, Terminal 창/ CMD 프롬프트 을 열고 들어갑니다:
adb forward tcp:54999 localabstract:Unity-{insert bundle identifier here}

참고: 드롭 다운 메뉴 항목은 선택된 대상이 Android인 경우에만 표시됩니다.

방화벽을 사용하는 경우, 방화벽 outbound rule에서 포트 번호 54998 to 55511가 개방되어 있는지 확인합니다 -이 포트는 Unity에 의해 원격 프로파일링로 사용됩니다.

Advanced Development
프로파일러 창(Profiler window)