コンテンツへスキップ

【Unity】デバッグの方法をマスターしてエラーを解決できるようになろう

Unity でゲームを開発していて、(右図のような)エラーが発生したことはありませんか?エラーを解決するのはなかなか難しい作業ですよね。

そんな悩みも、デバッグの使い方をマスターすれば解決しますよ。

デバッグを使えばプログラムを好きなところで止めたり、変数の中身をみることができます。

unity-debug0

STEP1:エラー箇所を確認する

unity-debug1

エラーの情報は、Unity の「コンソール」ウィンドウで確認できます。エラーをクリックすると、下記のように詳細が表示されます。エラーの箇所は「CameraController.cs」ファイルの 29 行目となっています。この記事では、試しにこのエラーを解決していきたいと思います。

UnassignedReferenceException: The variable followingSlowTarget of CameraController has not been assigned.
You probably need to assign the followingSlowTarget variable of the CameraController script in the inspector.
CameraController.FixedUpdate () (at Assets/Scripts/CameraController.cs:29)

STEP2:該当のコードにブレークポイントを置き、「Unity にアタッチ」する

該当のコード(今回の例では、「CameraController.cs」ファイルの 29 行目)にブレークポイントを置きます。コードの左側にマウスカーソルをもっていくと白い丸が表示されると思います。そこでクリックをすると赤い丸に変わります。それがブレークポイントです。ブレークポイントを置いた位置でプログラムを止めることができます。

ブレークポイントを置いたら、ツールバーにある「Unity にアタッチ」をクリックします。これで準備は OK です。

unity-debug2

STEP3:ゲームを再生する

Unity の再生ボタンを押してゲームを始めます。

unity-debug3

STEP4:ブレークポイントでエラーの内容を確認する

ブレークポイントの位置(「CameraController.cs」ファイルの 29 行目)でプログラムが止まります。下記の手順で、変数の中身を確認できます。

unity-debug4

①:Visual Studio の左下に変数が表示されます。「this」の横にある三角のマークをクリックします。

unity-debug5

②:変数「followingSlowTarget」が null になっていることが確認できます。変数に値が割り当てられていないようです。

STEP5:デバッグ時の便利なコマンド

unity-debug6

上図のデバッグ時の操作は、下表のようなショートカットと対応しています。これらの操作を使って、より詳しくエラー内容を調べることができます。

デバッグの中止Shift + F5
再起動Ctrl + Shift + F5
次のステートメントの表示Alt + Num*
ステップインF11
ステップオーバーF10
ステップアウトShift + F11

STEP6:エラーの解決

デバッグの結果、今回のエラーは変数「followingSlowTarget」に値が割り当てられていないことが原因でした。ゲームオブジェクトをアタッチしたり、プログラム側で null チェックをするなどの対応が考えられます。

unity-debug7

デバッグをマスターすればエラーも怖くありません。プログラムの開発では、ぜひデバッグを使うようにしましょう。

おすすめの小学生向けプログラミング教室

ad-earth-shop-online

当教室をおすすめする理由

完全個人レッスンで、お子さま一人ひとりに合わせたアドバイスをします
月謝が安いので続けやすい
(月4回コース:7,000円、都度コース:1回につき2,000円 ※1回55分授業)
オンラインレッスンなので、送迎が不要
プログラミングの大会応募や検定受験などを中心に年間スケジュールを作成します
小学3年生から受けることができます
保護者の方がレッスンを見守ることができる

ゲーム作りを通して、楽しくプログラミングが学べます

「スイカゲーム」や「マインクラフト」、「フォートナイト」など、人気のゲームを作れるようになります。生徒が作りたい作品に取り組むので、プログラミングに夢中になる子もいます。保護者の方から、「授業がない日でもプログラミングをしています」という嬉しい報告を多数いただいています。

games

選べる「入会特典」

① 最初の月謝が無料

 55分のレッスンを4回無料で受講できます

② ディスプレイをプレゼント

 ディスプレイを二つ並べて作業効率をアップさせよう!

ad-earth-shop-online2

広告



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA