今回はUnityで簡単にデバッグする方法を書いていきます。デバッグだけではなく、プログラムがどのように動いているのか知る勉強にも使える方法です。
デバッグとは何か
そもそもデバッグとは簡単に言うと「バグを見つけて修正すること」です。バグフィックスと呼ばれたりもします。また、バグを見つける方法はさまざまなものがあります。
今回紹介するのはソースコードを1行毎に実行し、どのような動きをしているのか。バグを見つけるというよりは、どのようにプログラムが動いているのかを見る方法ですかね。
事前準備
今回使用するのは「Visual Studio Community 2019」です。他にも様々なツール類がありますが、これはUnityHubから簡単に追加できのでこちらを利用していきます。
該当するUnityバージョンにモジュールを追加したら特別することはないです。
サンプルソースを導入
今回使うのは、前回紹介したAssetStoreから無料でもってきたパズルゲーム。
パズルゲームを起動したらScriptsフォルダにある「ST_PuzzleDisplay.cs」をダブルクリックで開きます。
ソース内容を確認
ソースがVisualStudioで開きます。下記のvoid Startという場所を探します。ここが初めに動く部分ですね。
補足
「VisualStudio」でソースが開かない場合は、「編集」→「環境設定」にある外部ツールの外部のスクリプトエディターを「VisualStudio」に変更すると開くようになります。
実際にデバッグしてみる
では、ここから実際に動かしてみます。
まずはソースにブレイクポイントという止まる場所を指定します。下記の赤丸ですね。これをつけることでプログラムがこの場所にきたときに止まります。その後、「Unityにアタッチ」を選んで、Unity画面で「再生」してみます。
該当箇所でプログラムが止まります。F10で1行づつ実行して変数がどうなっているのか。何をやっているのかを確認することが出来ます。
Unityの代表的なデバッグ方法にDebug.logで出力するというのがあります。Debug.logは簡単で使いやすくてバグを見つけるのに便利ですが、勉強的な意味では1行づつ動かして何をしているのかを理解するのもいい方法ですよね。