【Unity】Unityエディターでデバッグする

Unityエディターでデバッグする C#
Unityエディターでデバッグする
バージョン
  • Unity6 (6000.0.23f1)
  • Visual Studio 2022 (17.8.6)

このページではUnityエディターでデバッグする方法を記載しています。

Visual Studioの設定

まずはVisual Studioでデバッグしたいスクリプトファイルを開き、ブレークポイントを設定します。

Visual Studio
Visual Studio

行番号横の余白をクリックしてブレークポイントを設定

赤丸が表示され、ブレークポイントの行が赤くなればブレークポイントの設定はOKです。
再度クリックするとブレークポイントが解除できます。


ツールバーの「Unityにアタッチ」または「デバッグなしで開始」どちらでもいいので緑の三角ボタンをクリックするとVisual Studioのデバッグ準備は完了です。

Visual Studio

ツールバー「Unityにアタッチ」をクリック

Unityエディター

Visual Studioでデバッグ準備が出来たらUnityエディターに戻ります。
この時にUnityエディター側でデバッグモードを有効にするか聞かれるダイアログが出たら有効にします。

Unity Editor

「Enable debugging for this session」をクリック

デバッグモードに切り替わるのに少し時間がかかるので、右下のクルクルが止まるまで待機します。


クルクルが止まったらいつも通りゲームを実行するとデバッグできます。

Unity Editor

デバッグ

Visual Studioの方を確認すると、先程設定したブレークポイントの行が黄色になっています。
黄色の行は次に実行するコードです(まだ実行されていない状態)。

Visual Studio

上記のサンプル例だとforループの初回処理前の段階ですので、int型の変数sumは0です。
デバッグ中は変数が現在どのような値を保持しているか確認できます。

Visual Studio

変数名に直接カーソルを当てることでも確認できます。

Visual Studio
Visual Studio


ツールバーの「ステップオーバー」をクリック、または「F10」キーで現在の黄色の行の処理を行い、次の行に進みます。

Visual Studio

処理が進むと変数に格納されている値も変化するので、これを確認しながらデバッグしていく形になります。

以下の画像は2ループ目の処理が終了した段階の各変数の値です。

Visual Studio

2ループ目ではiが1なので、sumは 0 + 1 = 1と想定通りの数値が保持されています。


デバッグを終了したい時はツールバーの「デバッグの停止」で終了できます。

Visual Studio

一旦、スクリプトを修正したい場合等はUnityエディターのゲームも実行中なので停止しておきましょう。

デバッグは処理が行われて想定通りの値が保持されているかどうかを確認する作業になります。
結構面倒な作業ですが、特に全然想定通りの結果にならない場合はデバッグするとすぐに解決できてハッピーになれます。

タイトルとURLをコピーしました