Unity
VSCode

UnityDebugger for VSCode ウォッチ式で他のクラスが覗けない


TL;DR

仕様です。私みたいに時間を無駄にする前に諦めましょう。


できないこと

UnityDebugger for VSCodeをセットアップして、適当なブレークポイントで引っかける

デバッグコンソール、ウォッチ式、ログポイント、条件付きブレークポイントにおいて次のような式はエラーになる


  • クラス名を含む

  • ブレークポイントのあるクラス以外のクラスでの拡張メソッド

要するに、使えるのは以下のものしかない


  • ローカルスコープ

  • ブレークポイントのあるクラスのプロパティ

  • リテラル

staticシングルトンとかにもアクセスできない。

this

{Cube (HogeBehaviour)} ........................................OK

9 * 4
36 ............................................................OK

System.Math.PI
Evaluate request failed (Unknown identifier: System). .........NG

UnityEngine.Vector3.zero
Evaluate request failed (Unknown identifier: UnityEngine). ....NG


補足

開発者も困っているみたいです。


Known issues and missing features

* LINQ expressions are not validated from debugger-console or the watch list.

https://forum.unity.com/threads/unity-debugger-extension-for-visual-studio-code-2-0-x-preview-release.526263/


2018/10に最新の言及がありますがやっぱりダメそう…


miniwolf_unity (Unity Technologies)

Yeah, no. It is not fixed. Me and another user, verified that it is still broken. But awesome that you are keeping me up-to date with this, I would never have spotted this myself.


VisualStudioやMonoDeveloperなら可能だけど、VSCodeに比べるとかなり重く、ポータビリティもイマイチ…