以前、QiitaにVisual Studio Code をUnityで使う (Windows編)とかVisual Studio Codeのエディタ色を変えるとか書いていたんですが、結局Debug.logで出力したコンソールの文字からエディタにジャンプできなくて使用は断念していたのですよね。
で、このたびこういう記事を見かけたので試してみたいと思います。
Unity Development with VS Code
環境はWindows7でUnity5.2.0。
目次
VS Codeのインストール
まずインストールしなければ。
How to update to the lastest releaseよりVS Codeをダウンロード、インストールします。
Windowsはインストーラーがついていたのでささっと入りました。
Unity用プラグインのダウンロード
githubよりdotBunny/VSCodeを一式ダウンロードしてきます。
公式どおりに
git clone https://github.com/dotBunny/VSCode.git
としてもよし、右下の「Donwload ZIP」で最新版を落としてきてもよし。
プラグインをプロジェクトに組み込む
落としてきたフォルダを開くと、PluginsフォルダがありますのでそれをプロジェクトのAssets以下にコピーします。
プロジェクトでVS Codeを使うように設定する
それでそのプロジェクトを開きます。
「Edit→Preferences」を開くと、おお、VS Codeという項目が増えていますね…
「Enable Integration」と「Output Message To Console」にチェックをいれます。
それから「Write Workspace Settings」ボタンをクリック。
この後、「Assets→Open C# Project」で開けるはず…と実行してみると、
Uncaught Exception: TypeError: Path must be a string. Received undefined at assertPath (path.js:8:11) at Object.win32.isAbsolute (path.js.178:3) at ...
というエラーが…
パスに半角スペースが含まれていたので、c:sampleというプロジェクトをつくって試してみても駄目。
ただここで出てきたパスって、昔のVS Codeのパスじゃなかったっけな…というところがひっかかったので、全部消して入れ直してみた。
まずC:Users(ユーザー)AppDataLocalCodeをCode.bakにリネーム。
VS Codeをアンインストール。
UnityのProjectからもPluginsを一度消して、ExternalToolsもMonoDevelopにしておきます。
これでもう一度VS Codeをインストール。
Pluginsのコピー…とやってみましたけど、駄目でしたね…
エラーで表示されるパスが、0.8.0のものになるだけでした…
エディターとしてだけ使う
じゃあプラグインによる連携はあきらめよう。
エディタとしてVS Codeを使う設定をしてみます。
まずPluginsのそれらはもう必要ないので削除してしまい、「Edit→Preferences」の「External Tools」より、External Script Editorを「Program Files (x86)Microsoft VS CodeCode.exe」に、External Script Editor Argsを「-r -g "$(File):$(Line)」にします。
これで、.csファイルのダブルクリックでVS Codeが開き、このバージョンではコンソールのログからのジャンプもできました。
ただ、Unityのライブラリと連携ができていないためか、UnityEngineが検出されなかったり、gameObjectがコード補完で出てこなかったりとかしましたので、実用はできなさそうです。
結果として
うまく動かなかったのですが、動かなかった記録だけ残しておきます…
環境の問題がありそうな感じではあったので、大丈夫な環境では大丈夫なのかなと…
ていうか今、動作要件に「Windows 8.0, 8.1 and 10 (x86 and x64)」て書いてあるの見つけて絶望している。デスヨネー