Visual Studio Codeをスクリプトエディタにする

2016.08.15 23:24追記: 項番5.と項番7.でそれぞれDebugger for Unityをインストールしているのはおかしい、と気づいて確認したところ、項番5.でインストールされるのはver1.01、項番7.でインストールされるのはver1.03でした。そしてver1.03をインストールしていないとブレークポイントをセットしようとすると「error while processing request 'setBreakpoints' (exception: Cannot perform member binding on `null' value) 」なるエラーが発生しました。よって項番5.でインストールしている箇所を削除しました。

ソフトウェアのバージョンアップの為、先人の導入レポートと異なっている所がかなりあったので2016年08月15日に行った記録をまとめました。

環境は以下の通り。

1.Visual Studio Codeのインストール

公式サイト( https://www.visualstudio.com/ja-jp/products/code-vs.aspx ) から VSCode-darwin-stable.zip をダウンロード 解凍すると Visual Studio Code.app ができるので /Applications に移動。

Command + Shift + P キーを同時押しで画面上にコマンドプロンプトを表示、拡張とタイプしてreturnキーを押下すると候補が表示されるので「拡張機能:インストール済みの拡張機能の表示」を選択。「Marketplaceで拡張機能を検索する」とだけ表示されているのを確認し、終了。

2.Unityの外部スクリプトエディタをVisual Studio Codeに変更

UnityのメニューからUnity > Preferences を開きExternal ToolsのExternal Script Editorコンボボックスをクリックし、BrowseからインストールしたVisual Studio Codeを選択する。コンボボックスにCodeと表示されていればOK。

3.テスト用Unityプロジェクト作成

テスト用プロジェクトを下記のフォルダに作る。Shadyは私のユーザー名で深い意味はありません、念のため。

/Users/Shady/Unity/TestVSCodeDebug

とりあえず作成だけで次の工程へ。

4.UnityのProjectにVisual Studio Code用プラグイン導入

DotBunnyさん製のプラグインを使います。 https://github.com/dotBunny/VSCode からD任意のフォルダにダウンロード&展開する。

/Users/Shady/Downloads/VSCode
|
|--HOWTO.pdf
|
|--LICENSE
|
|--Plugins
| |--Editor
| | |--VSCode.cs
|
|--README.md

Pluginsから下を /Users/Shady/Unity/TestVSCodeDebug/Assetsフォルダに コピー。

/Users/Shady/Unity/TestVSCodeDebug/Assets
|
|--Plugins
| |
| |--Editor
| | |
| | |--VSCode.cs

Unityに制御を移すと読み込みダイアログが自動的に開いて作業が反映されます。再起動しなくていいので便利。

5.Unityにプラグイン設定

メニューの Unity > Preferences をクリックすると 左側カテゴリの一番下にVSCodeが出来ているのでこれを選択し、チェックボックスを上から全部ONにします。

さらにInstall Unity Debuggerボタンをクリック。Visual Studio Codeが開き「{0}は正常にインストールされました。有効にするには再起動してください。」と表示されるので今すぐ再起動ボタンを押下します。

Command + Shift + P で 「拡張機能:インストール済みの拡張機能の表示」を実行するとDebugger for Unityが表示される筈です。

確認したらVSCodeを終了。

6.UnityからVSCodeを起動

Unityのメニューの Assets 一番下に Open C# Project In Code が追加されており選択するとVSCodeが起動する事を確認して終了。

7.動作確認用スクリプト作成

Game Object > 3D Object > Cube でキューブを作成 InspectorからAdd ComponentボタンでNew Scriptを選択、LanguageをC#で作成。歯車ボタンの右下にある三角をクリックしてEdit Scriptを選択しVSCodeが立ち上がる事を確認。

「'ms-vscode.csharp'拡張機能のインストールをお勧めします。」 と表示される ので「推薦事項を表示」ボタンをクリック。

表示された拡張機能から「C#」と「Debugger for Unity」の「インストール」ボタンをクリック、しばし待つと「有効」ボタンが表示されるのでクリックすると自動再起動される。

C#」はキーワードのカラー表示とブレークポイントの設定など、「Debugger for Unity」はデバッグ機能有効化の為のプラグイン

非常に簡単なスクリプトをば。

public class NewBehaviourScript : MonoBehaviour {

    // Use this for initialization
    void Start () {
        for (int i = 0; i < 5; i++) {
            Debug.Log(i);
        }
    }

8.デバッグ実行

まずVSCode側で待ち受け設定を行う。 VSCode左の虫ボタンをクリックしてデバッグモードに切り替え、Debug.Logの行にブレークポイントを設けた状態で左上のデバッグボタンをクリック。

その状態でUnityの実行ボタンをクリック。

これでブレークポイント上で停止し、変数の内容表示などができるようになる筈。

番外. うまくいかない時は

導入サンプル動画が準備されています。旧いバージョン用で結構違っていますが、流れは掴めると思います。