プラスプラス開発者ブログ

岩手県盛岡市のシステム開発会社「株式会社プラスプラス」の開発者ブログです。

Unity + VSCode のブレークポイントが効かない 2020/04

休日は無料配信された動画視聴で引き篭もる「軽く熊」です。
最近は期間限定配信ですが過去のライブ映像など豪華な動画が増えました。

VSCode の Debugger for Unity 問題ついに完結!

前回はインテリセンス(コード補完機能)が動作しないのは直しましたが
UnityEngine.UI の参照問題ブレークポイントが動作しないが未解決でした。

UnityEngine.UI の参照はプロジェクトのルートに
自動生成される .csproj を全て消した後
Unity で該当プロジェクトを起動すると問題が解決しました。

しかし、ブレークポイント問題は解決しませんでした。

VSCode 関連を一切アップデートしていなかった環境では正常に動作していたので
Unity 側に問題はないと判断し、VSCodeVSCode のエクステンションを疑いました。

デバッグ機能はエクステンションより提供されているので
とりあえずエクステンションのアンインストール、インストール
いろいろ試してみましたが効果がありませんでした。

UnityEngine.UI の結果を見る限り、
どこかに不正になった設定(もしくはファイル)
存在すると発生しているようなので

VSCode を全て終了した状態でエクステンションの保存フォルダ
C:\Users\ユーザー名.vscode
を移動しました。(削除でも可)

これによって VSCode のエクステンションが全て削除されるので
再度、全てのエクステンションをインストールし直します。

この予想が的中したようで
ブレークポイントが正常に動作する
ようになりました。

新規に最新のエクステンションを入れる場合
インテリセンスが動作しなくなることは無いようです。

下記の構成で動作しています。
VSCode 1.44.0
・エクステンション C# 1.21.17
・エクステンション C# Extensions 1.3.1
・エクステンション Debugger for Unity 2.7.5

もし、VSCode エクステンションのアップデート後に問題が起きているのであれば
自動生成されるファイル等の削除を行うと改善されるかもしれません。

シリーズ記事
Unity + VSCodeブレークポイントが効かない 2020/04 ← この記事だよ!
Unity + VSCode のコード補間が効かない 2020/03
Unity 2018.3とVisual Studio Codeを組み合わせるとゴネる