UnityVS の使用

デバッグ

Visual Studio で F5 キーを押して Unity にデバッガーをアタッチ

F5 キーを押すだけで、Visual Studio デバッガーを Unity にアタッチして、エディターのスクリプトのデバッグをすることも、Unity でゲームをプレイしてゲームのスクリプトをデバッグすることもできます。

図: デバッグ画面

次のトピックもお読みください。

DLL のデバッグ

多くの開発者は、再利用可能なコード コンポーネントを外部 DLL ファイルに記述して、Unity プロジェクトに展開します。UnityVS を使用して、こうした外部 DLL もデバッグできます。

現在 UnityVS でサポートされているのはマネージ DLL のデバッグのみです。ネイティブ C++ DLL はまだサポートされていません。

プロジェクトを UnityVS ソリューションに追加する

Visual Studio では、既存のプロジェクトを UnityVS で生成したソリューションに追加できます。UnityVS 1.2 以降では、UnityVS でプロジェクト ファイルの再生成が必要な場合でも、外部プロジェクト参照が維持されます。

図: 既存のプロジェクトを追加

適切な Unity フレームワーク プロファイルを参照する

Visual Studio では、クラス ライブラリのプロパティを変更して Unity プロファイルをターゲットに指定できます。そのため、既存の .NET 3.5 に存在していても、Unity が使用する Mono バージョンには存在しないメソッドを呼び出すリスクはありません。プロジェクトがターゲットにする API 互換性レベルに対応するメソッドが使用されます。

図: ターゲットのフレームワークを選択

DLL を Unity の Assets フォルダーにコピーする

次の 2 つのいずれかの方法でコピーできます。

  • プロジェクトの出力フォルダーを直接、Unity プロジェクトの Assets フォルダー内のフォルダーに設定する。
  • クラス ライブラリ プロジェクトを修正して MSBuild ビルド後タスクを追加し、出力 DLL を Unity プロジェクトの Assets フォルダーにコピーする。

DLL のデバッグを可能にするには、デバッガーは、コードの場所をソース ファイルに対応付けるデバッグ シンボルも必要とします。Visual Studio で DLL を作成する際、デバッグ シンボルは PDB ファイルに出力されます。UnityVS で DLL のデバッグを可能にする場合、この PDB ファイルを一緒にコピーする必要があります。UnityVS パッケージは、DLL と PDB の情報を使用して、.DLL.MDB ファイルを作成します。これは、Unity のスクリプト エンジンが使用するデバッグ シンボル形式です。

コードをデバッグする

これで、UnityVS ソリューションの DLL にブレークポイントを設定して、デバッガーを開始できるようになります。

リモート デバッグ

UnityVS 1.0 のリモート デバッグは、常に適切に機能するとは限らないため、プレビュー段階の機能とお考えください。

VM のフォルダー共有の構成

必要なのは、Unity プロジェクト フォルダーの共有だけです。

図: 共有ダイアログ

図: 共有された Unity プロジェクト フォルダー

UnityVS パッケージのインポート

パッケージは、Program Files\UnityVS または Program Files (x86)\UnityVS (64 ビット PC の場合) にあります。このパッケージを OS X にコピーして、その場所の Unity にインポートします。

プロジェクトを開く

VM で、UnityVS によって生成された Visual Studio ソリューションを開きます。ソリューションは UnityVS.>プロジェクト名< という名前で始まります。UnityVS はリモート Unity には接続されません。ステータス バーの Unity アイコンをクリックしてセレクターを開き、プロジェクトを選択します。

図: ソリューション ファイル一覧

図: セレクター

プレーヤーのデバッグ

UnityVS 1.2 以降では、Unity プレーヤーがスクリプト デバッグ フラグを設定してビルドされるため、UnityVS インスタンスと同じネットワーク上で実行されていれば、Visual Studio デバッガーを Unity プレーヤーにアタッチできるようになります。

デバッグ フラグを設定してプレーヤーをビルドする

Unity プロジェクトのビルド設定で、[Development Build] (開発ビルド) チェック ボックスと [Script Debugging] (スクリプト デバッグ) チェック ボックスを両方オンにします。

図: Unity プロジェクトのビルド設定

Web プレーヤー チャネルを構成する

Web プレーヤーをデバッグする場合は、プレーヤーを右クリックして、リリース チャネルを [Development] (開発) に設定します。

Unity 4.2 以降を使用している場合、[Release Channel] (リリース チャネル) コンテキスト メニュー項目は、コンテキスト メニューを開いた状態で、Alt/Option キーを押した場合にのみ表示されます。

図: コンテキスト メニューを表示

Unity デバッガーをアタッチする

Web プレーヤーをデバッグする場合は、プレーヤーを右クリックして、リリース チャネルを [Development] (開発) に設定します。

Visual Studio の [デバッグ] メニューにある [Attach Unity Debugger] (Unity デバッガーのアタッチ) エントリを使用して、Unity 選択ダイアログを起動し、[OK] をクリックしてデバッグを開始します。

図: [デバッグ] メニューから [Unity デバッガーをアタッチする] を選択

図: Unity インスタンスを選択

Unity Project Explorer

Unity Project Explorer を開くと、Visual Studio 内に、プロジェクトの階層を Unity と同じように表示できます。

図: [表示] メニューから Unity Project Explorer を選択

図: Unity Project Explorer で階層を表示

Visual Studio と Unity の接続

Visual Studio ステータス バーのプラグ アイコンは、Visual Studio が Unity インスタンスに接続されているかどうかを示します。

VSTU と Unity は UDP 接続経由で通信します。ファイアウォールから通信に関する問い合わせを受けたら、承認します。

Visual Studio ステータス バーのプラグ アイコンをクリックすると、接続先の Unity インスタンスを選択できます。

図: Unity インスタンスの選択画面

エラー一覧の同期

Visual Studio が Unity インスタンスに接続されている場合、Unity コンソールのメッセージが Visual Studio の [エラー一覧] ウィンドウに表示されます。

図: エラー一覧

この機能を利用するには、Unity を 適切に構成して、Visual Studio を Unity に接続する必要があります。

この機能は、Unity の [Configuration] (構成) メニューで無効にできます。

Unity ドキュメントへのアクセス

Unity ドキュメントにアクセスするには、キャレットを移動するか、Unity 関数またはメンバーを強調表示して、ヘルプ ショートカットを押します。UnityVS は、ローカルでのドキュメント読み取りを試みるか、読み取れない場合はオンライン ドキュメントを表示します。

ショートカット: CTRL+ALT+M,CTRL+H

図: ドキュメントのハイライト

図: ドキュメントへのアクセス結果表示

スクリプト ウィザード

UnityVS 1.0 のリモート デバッグは、常に適切に機能するとは限らないため、プレビュー段階の機能とお考えください。

MonoBehavior ウィザード

MonoBehavior ウィザードでは、MonoBehavior に実装する Unity 関数を視覚的に選択できます。Unity API を学習する際には特に便利です。

ショートカット: Ctrl+Shift+M

図: スクリプト メソッド作成ダイアログ

簡易 MonoBehavior

実装する必要のある関数が既にわかっている方は、簡易 MonoBehavior ウィザードを使用して MonoBehavior 関数を簡単に実装できます。キャメル形式を使用していると特に簡単になります。たとえば、ウィザードに「OMD」と入力すると、OnMouseDown と OnMouseDrag に一致します。

ショートカット: Ctrl+Shift+Q

図: 簡易 MonoBehavior ウィザードで関数の候補を表示

ショートカット

[ツール]、[オプション]、[環境]、[キーボード] の順に移動して、VSTU コマンドのショートカットを構成できます。既定のコマンドとショートカットは次のとおりです。

MonoBehavior ウィザード (コード ウィンドウ内)
エディターコンテキストメニュー.コードウィンドウ.ImplementMonoBehaviours: Ctrl+Shift+M

簡易 MonoBehavior ウィザード (コード ウィンドウ内)
エディターコンテキストメニュー.コードウィンドウ.QuickMonoBehaviours: Ctrl+Shift+Q

Unity デバッガーにアタッチ (プレーヤーまたはエディター)
デバッグ.AttachUnityDebugger: なし

Unity ドキュメントへのアクセス
ヘルプ.UnityAPIReference: Ctrl+Alt+M、Ctrl+H

Unity Project Explorer を開く
表示.UnityProjectExplorer: Shift+Alt+E

図: オプション ダイアログ