はじめに
この記事はHamster Output Advent Calendar 2024の1日目の記事です!
ゲーム開発をする時に、ずっと気になっていたUnityにアタッチというアイコン...Unityでゲーム開発をしている人はソースコードを書く時に、目にしたことがあるはず(多分)
今回の記事はこのアイコンの機能について調べた内容です!
テスト用の環境を作る
数値の代入、ログを出すスクリプトの作成とGameObjectにアタッチするだけです!
・スクリプト
using UnityEngine;
public class Test : MonoBehaviour
{
void Start()
{
int a = 100;
int b = a;
Debug.Log(b);
}
}
本題
コードエディタでUnityにアタッチを押した後、Unityエディタに戻るとロードが入ります。ロードが終わると画像の警告文が出てきます。
左から順に翻訳した内容を載せます!
・Enable debugging for this session
このセッションのみデバックを有効にする
※この作業中の時だけ有効にする。再起動したらいつもの設定にもどるよ
・Enable debugging for all projects
全てのプロジェクトでデバックを有効にする
・Cancel
デバックモードを有効にせずキャンセル
今回は一番左のこのセッションのみを選びます。ここで、コードエディタに戻ると、上の再生アイコンが停止アイコンになっていたり、コードエディタの下側の色が変わり準備完了と表示さています。
次に、コードエディタ上の該当行数をブレークポイントにします。グレー色の縦線の場所を押すと画像のように赤丸が出てきて、該当行数も赤色で囲われます。
ブレークポイントを設定したらUnityエディタに戻って再生してみます。いつもならログが出ますが、今回は出てきません。
次にコードエディタを確認すると、ブレークポイントに設定した箇所が黄色で囲われていおり、処理がその場所で止まっています。
つまり、Unityにアタッチというボタンの正体はVisualStudioのデバッグ機能を有効にするボタンだということが分かりました!
ローカルから値を変えることもできるみたいですが、変更しても元の値に戻ってしまうのでUnityだと利用できないのかな...?
ブレークポイント以外に使える機能を調べて見ましたが、VisualStudio上では灰色になって使えなくなっていました。
ドキュメントにもブレークポイントに関しての説明しかないので、それ以外の機能は使えないのかな?と思います。
結論
UnityにアタッチはVisualStudioのブレークポイントが使えるボタンだった!