11.29.2016

Mali Graphics Debugger 가 지원되는 언리얼 엔진 어플리케이션 빌드하기

By Thomas Poulet ARM Mali Graphics

ARM Mali Graphics Debugger (MGD)는 어플리케이션의 Vulkan, OpenGL ES, EGL, OpenCL API 호출을 추적하여, 개발자가 프레임 단위로 이해하고 코드에서 병목 현상이 생길 수 있는 부분을 찾아내는 데 도움을 줍니다. 이 글에서는 언리얼 엔진 어플리케이션이 루팅되지 않은 디바이스에서도 MGD 가 지원 되도록 하는 방법을 설명해 드리겠습니다.

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2F770_Epic_Citadel_with_MGD-770x458-3e605439d65d30668f907945b9bf8cebf1fb64c9

설정하는 방법은 아주 간단합니다:

  • 빌드 시스템에 인터셉터 라이브러리 추가
  • 인터셉터 라이브러리를 로드하도록 액티비티 편집
  • 타겟 디바이스에 MGD daemon 어플리케이션 설치

 

첫번째 단계로, 깃허브에서 언리얼 엔진 소스 코드 버전 하나를 다운로드해야 합니다. 자세한 정보는 에픽의 안내서를 참고하세요.

사용할 엔진을 받아서 설정을 완료했다면, MGD 작업에 집중할 차례입니다. 먼저 MGD가 설치된 디렉토리에서 android-non-root 폴더와 언리얼 엔진이 설치된 폴더를 띄웁니다. android-non-root 폴더를 Engine\Build\Android\Java\ 에 복사합니다.

다음은, 인터셉터가 엔진 빌드 내에 포함되어 패키징되도록 안드로이드 메이크파일을 변경해야 합니다. Engine/Build/Android/Java/jni/ 에 있는 Android.mk 파일을 열어서 맨 끝에 다음 줄을 추가합니다: include $(LOCAL_PATH)/../android-non-root/MGD.mk. 이와 같아 보일 것입니다:

 


blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2FARM_Mali_Text_1-770x150-a2c6cc3438321dfcd31c52c69ec7273da9bb546b
 
이제 메인 게임 액티비티가 MGD 라이브러리를 로드하도록 지정해줄 것입니다. Engine\Build\Android\Java\src\com\epicgames\ue4\ 안에서 GameActivity.java 를 찾아 onCreate 함수를 다음과 같이 수정합니다:

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2FARM_Mali_Text_2-770x248-ca951201784e122b7b7420b4acde4247a305eef6
 
엔진측 준비는 완료되었으니, 이제 디바이스 준비를 하겠습니다. 타겟 폰을 PC에 연결하고, android-non-root 폴더에서 다음 명령을 실행해 타겟 폰에 MGD daemon을 설치합니다:

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2FARM_Mali_Text_3-770x23-1e353d47e3c9672b132dea3ac9e6a2e11c4e3b0c
 
앱을 실행하기 전, PC 에서 다음 명령을 실행시켜 줘야 합니다 (adb devices 를 먼저 실행하여 디바이스가 보이는지 확인해 주세요):

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2FARM_Mali_Text_4-770x22-cce33de0cd6aee4c96edacbde4d48d5e42f9e2db
 
타겟 폰에서 MGD daemon 어플리케이션을 실행시키고 daemon 자체를 활성화시킵니다:

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2FARM_Mali_Text_5-770x248-c7923709ea768477e70cc401e0cd36278b4d2d4b

이 시점에서 PC 에서 MGD를 실행하여 타겟 폰에 연결하고, 어플리케이션을 시작한 뒤, 디버깅을 시작할 수 있습니다. 사용법 관련 상세 정보는 MGD 매뉴얼을 참고해 주세요.

이렇게 하면 어떤 Mali 기반 플랫폼에서도 언리얼 어플리케이션을 MGD 와 함께 사용할 수 있을 것입니다. 자세한 정보 또는 질문은 ARM Mali graphics Connected Community 를 참고하시기 바랍니다.

blogAssets%2F2016%2FNovember+2016%2FNOV29_ARMMaliGraphicsDebugger%2Fcitadel-frame-analysis3-scaled1-0613777c5147b6b1d93338d7e77e85bdaa8c942d

Recent Posts

언리얼 스튜디오 4.20 베타 출시!

언리얼 스튜디오보다 나은 것이 있을까요?  물론이죠, 언리얼 스튜디오 4.20 입니다!  메타데이터 임포트, 원활한 익스포트 프로세스,...

PixARK Dev Kit으로 만드는 나만의 복셀 월드

에픽게임즈 런처에서 Snail Games가 제공한 모드 제작 툴로 재밌는 PixARK 월드를 만들어보세요.

Drive Studio, 언리얼 엔진으로 Fox Sports의 2018 FIFA 월드컵 방송 제작

Drive Studio는 언리얼 엔진의 강력함을 활용해 FOX Sports 채널의 2018 FIFA 월드컵 중계에서 사용할 배경, 중간...