ドナドナされるプログラマのメモ

Windows用アプリのプログラミングメモ

VisualStudio2019でUnityのコードが補完されなかったりする件

UnityからVisual Studio 2019を呼び出したらUnity固有の機能が使えなかった問題と、その対処法メモ。

目次

 経緯

Unityのお勉強をするため、VisualStudio2019でC#のコードを作ろうとしたらいきなり挫折した。Microsoftのマニュアルに書いてあるとおり、Ctrl+Shift+MでMonoBehavior ウィザードを使用して空の MonoBehavior メソッド定義を作成しようとしたんだけど、キーを押しても何も起きず。設定が間違っているのかと思いキーコンフィグを確認したけど、合ってるように見える。

f:id:donadonasan:20190727120946p:plain

MonoBehaviourウィザードのキーコンフィグ

その後も色々見てみたけど、Ctrl+Shift+Mは有効にならず。設定から、エディタ上で右クリックしたメニューに居るかもと思い探したけど見つからず。どうも、Unity関連のファイルを開いているとは認識されていないようだ。

そこで、ふとUnity側がデフォでインストールしようとしているVisual Studioが2017であることを思い出し、2017を入れさせてみた。

f:id:donadonasan:20190727125058p:plain

MonoBehaviourウィザード

うまくいったよ!じゃあ2019の問題なのか・・・と思いつつ、念の為2019で再確認した。

 

f:id:donadonasan:20190727125211p:plain

MonoBehaviourウィザード

動いたよ!動きやがりましたよ!うーん。なんだこれ。

じゃあ、この状態でVisual Studio 2017をアンインストールしてみたら、Visual Studio 2019はどうなるんだろう?

やってみた結果。

無事、MonoBehaviourウィザードが起動!IntelliSenseも動いているっぽい。無事、Visual Studio 2019とUnityの連携に成功。よかった。

まとめ

新規Unityユーザーで、Visual Studio2019を使う人はUnity HubからVisual Studio 2017も入れましょう。そうすればVisual Studio 2019でもUnity関連の機能が使えます。使えることを確認できたら、Visual Studio 2017はアンインストールしてオッケーです。