この記事でのバージョン
Unity 2021.1.23f1
JetBrains Rider 2020.3.4
はじめに
Unityでも使える便利なエディタにRiderというものがあるのですが、
今回はそのRider上でブレークポイントの操作をしてみようという感じの記事です!
なお、Riderでは指定した行に来たら処理を停止するいわゆる普通のブレークポイントはもちろん、
一定の条件の時にしか止まらない物や他のブレークポイントに依存する物も簡単に設定できます。
ブレークポイントの基本設定
さっそくですがブレークポイントはコードの左側をクリックして赤丸を付ける事で設定出来ます。
ちなみに何もコード(空行?)がない所にはブレークポイントを設定する事は出来ません。
ブレークポイントを設定したら右上の虫マークを押してデバックモードを有効にし、
(デバックモードをやめる時はその隣の四角マークを押す)
Unityエディタを再生すると該当箇所で止まるようになります。
条件付きブレークポイント
例えば以下のように経過時間を計測するコードがあった時に
指定の秒数以降にブレークポイントを有効にしたいとします。
//経過時間 private float _time = 0; private void Update() { //経過時間をどんどん加算してログを出す _time += Time.deltaTime; Debug.Log($"time : {_time}"); }
そんな時はブレークポイントを右クリックし、
「条件」に条件式を書くとその式がtrueの時だけ止まるようになります。
ちなみに条件があるブレークポイントには?が付きます。
実際に試してみると以下のような感じに。
ちなみにブレークポイントで止まった時には各変数の値も確認できます。(条件付きでなくて確認可)
依存ブレークポイント
特定のブレークポイントを先に通過した時のみ有効にしたいブレークポイントがある場合は、
ブレークポイントを右クリックすると出てくる「続き」を押し、
「Disable until hitting ~~」という所で依存先を指定する事が可能です。
ちなみに依存するブレークポイントは輪っかのような形で表示されます。