BLOGブログ

2015.09.28UE4UE/ Mobile

[UE4] 実機でデバックしてみよう!(Android編)

普段、デバックをする場合はエディター上から[Play]しブループリント上でブレークポイントを置き処理を流れを追いかけていくと思います。

基本的にこれだけでも十分なのですがたまに実機でしか起きないバグなどが発生したりC++側で問題が起きている場合はエディターから原因を特定するのはなかなか難しいかと思います。

そこで今回は実機を使用してVisualStudio上でデバックをしてみたいと思います。また今回はAndroidですがiOSのほうも近いうちにブログに書きたいと思います。

また今回の方法ではすべての端末でできるわけではないのでご注意ください。

以下のURLからご確認をお願いします。

https://developer.nvidia.com/nvidia-nsight-tegra

無題

 

  • 手順その1  VisualStudioProfessional をダウンロードする

今回環境を構築するためにNVIDIAの開発ツールセット[Nvidia GameWorks]の[Nsight Tegra 3.1 VisualStudioEdition]を使用するのですがドキュメントに[MS Visual Studio 2010 SP1, 2012, or 2013 Professional (or higher) Editions]と記載されてるためです。

確認してないためわかりませんがVisualStudioCommunityではできないと思われます。

 

 

Titleの中からAndroidWorksをクリックし自分の環境にあったものをダウンロードします。

ダウンロードするが完了すると「AndroidWorks-1R2-win.exe」というのが取得できますのでこれをダウンロードの手順にそって進めます。

 

 

 

  • 手順その3  既存のプロジェクトをVisualStudioで起動

すでにuprojectからソリューションを生成してる場合はそのまま起動することでCommunityからProfessionalに切り替わります。

また「AndroidWorks-1R2-win.exe」を実行後の初回起動時だとここで[Nsight Tegra Project Upgrade]というダイアログが出るはずですのでそのまま[Next]->[Finish]の順に進めます。

するとツールバーに下の画像のようなものが追加されていると思います。USBに実機をつなぐとデバイス名が表示されますのでそれを確認します。この画像でいうとNexus7になります。(※1)

 

無題

 

 

そしてソリューションプラットフォームにも[Tegra-Android]というのが追加されてるはずです。

 

 

  • 手順その4  VisualStudioでapkを指定する

エディタ内で Android 用にゲームをパッケージ化をし、できたapkを指定します。

まず自分のプロジェクトを右クリックし、プロパティを選択します。[構成プロパティ]->[デバック]を選択し[Override APK Path]を選択しさきほどパッケージ化したapkを指定します

 

 

 

  • 手順その4  デバックしてみる
プロジェクトをスタートプロジェクトに設定し、ソリューションの構成を[Development]にします。
[Tegra-Android]を設定するとデバックボタンが[Nsight Tegra Debugger]に変わりますのでそのまま実行をします

すると

上記のような画面が出るのであとはひたすら待ちます(結構長いです・・・最初は7~8分くらいでしょうか)
途中でSIGILL のための例外が 1 個表示されますが、そのときは単に Continue (続行する) をクリックしてください。

これで起動しデバックできる状態になります。ここまでくれば自分の書いたコードの好きな位置にブレークポイントを置いてデバックすることができます!