夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Unity2020 でスクリプトをVisualSutudioで開けない問題の解消

本日はUnityのトラブルシューティング枠です。

先日筆者の普段使用しているPCとは別のPCにUnityを導入しました。

クリーンな状態(UnityもVisualStudioも導入していない状態)でUnity2020.11f1を導入したところVisualStudioが開けないという問題が発生しました。

筆者が普段使用しているPCはUnity2018シリーズから使用していたためこのような問題が発生していなかったので試行錯誤したトラブルシューティング記事になります。

〇環境

Windows 10 (OSビルド18363.1139)

・Unity2020.1.11f1

・UnityHub 2.4.2

〇問題

UnityHubをインストール後UnityHubからUnity2020.1.11f1をインストールし、プロジェクトを起動し適当なc#スクリプトを作成したところスクリプトをVisualStudioで開くことができない。

VisualStudioはUnityをインストールする際特に設定しない限り導入されます。

これによってUnityで使用するShader、C#スクリプトを編集することができるのですが、今回プロジェクトウィンドウからC#スクリプトをダブルクリックしても何も起こらない現象が発生しました。

このようにUnityでのVisualStudioの問題において確認する点があります。

トラブルシューティング

1.Unity側でスクリプトエディタとしてVisualStudioを使用する設定になっているかを確認する

①Unityプロジェクトを開き上部ワールドタブから[Preferences]を選択します。

f:id:Holomoto-Sumire:20201103203012j:plain

ここでは環境設定を行うことができます。

②[External Tools]を開きます。

f:id:Holomoto-Sumire:20201103203248j:plain

ここでは外部連携を設定します。 

③[External Script Editor]を確認します。 VisualStudioが表示されていれば問題ありません。

f:id:Holomoto-Sumire:20201103203624j:plain

こちらのトラブルシューティングはVisualStudioでUnityの返還予測が使用できない場合などもVisualStudioが設定されていないことが原因となっていることがあるので有効です。

今回はこれだけでは解消しませんでした。

2.VisualStudio側の確認

次にVisualStudio側の設定を確認します。

①[Visual Studio Installer]を開きます。

f:id:Holomoto-Sumire:20201103203923j:plain

②[変更]を選択します。 ここでは新たなコンポーネントの追加や確認が行えます。

f:id:Holomoto-Sumire:20201103204106j:plain

③[Unityによるゲーム開発]にチェックが入っているかを確認します。

 UnityでVisualStudioを使用するためにはこのコンポーネントが必要になります。

f:id:Holomoto-Sumire:20201103204341j:plain

 余談ですが、HoloLens開発のためにはアプリのデプロイの場面で[ユニバーサル Windows プラットフォーム開発]にチェックを入れている必要があります。

 今回は[Unityによるゲーム開発]にチェックが入っていましたのでここも問題はありませんでした。

3.Unityのパッケージマネージャーの確認

Unity2020シリーズからパッケージマネージャーが大きく変更されています。 

①Unityの上部ワールドタブから[Window]から[Package Manager]を開きます。

f:id:Holomoto-Sumire:20201103204904j:plain

②[Visual Studio Editor]を開き[Remove(削除)]を行います。

f:id:Holomoto-Sumire:20201103205048j:plain
画像はRemove済み

この動作によってVisualStudioが正常に起動できるようになりました。

どうやらこのパッケージが問題があったようです。

以上でUnity2020 でスクリプトをVisualSutudioで開けない問題の解消の解消が完了しました。