VSCodeではじめるUnity生活

# はじめに
 Mac bookでUnityをやることになったけど．Visual Studioはどうしても使いたくなくてVisualStudio Codeを使えるようにするまでの手順です．

自分はMacで環境を作りますが，Windowsでも基本的には同じようにできます．
# 前準備
以下のものをまずインストールしましょう．

- [Visual Studio Code](https://code.visualstudio.com/) 
- [Unity Hub](https://unity3d.com/jp/get-unity/download)

Visual Studio Codeは，最新版をダウンロードしてもらえればいいと思います．

Unity Hubは， いろんなバージョンで作業するときに便利です．個別にバージョンを入れても作業できますが，よっぽどのことがない限りUnity Hubを使ってバージョンを管理するのが楽だと思います．

# VSCode側での作業
Unity(C#)の作業するために，拡張機能を入れる必要があります．

## 必須の拡張機能
- [C#](https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp)
- [Debugger for Unity](https://marketplace.visualstudio.com/items?itemName=Unity.unity-debug)
- [Mono Debug](https://marketplace.visualstudio.com/items?itemName=ms-vscode.mono-debug)

この三つはとりあえず入れる必要があります．VSCodeのエクステンションで探して一番上に出てくるやつで大丈夫です．

## あったら便利な拡張機能
- [C# Extensions](https://marketplace.visualstudio.com/items?itemName=jchannon.csharpextensions)

定義元を参照とかジャンプとかにつかう．

---

- [C# XML Documentation Comments](https://marketplace.visualstudio.com/items?itemName=k--kato.docomment)

コメントを書くときに，スラッシュ3つ入れたら自動的にテンプレートを書いてくれる．

---

- [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker)

スペルミスを教えてくれる．Unityには関係ないけど便利．

---


- [Visual Studio IntelliCode - Preview](https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.vscodeintellicode)

なんかいい感じに補完を支援してくれる．

---

- [C# FixFormat](https://marketplace.visualstudio.com/items?itemName=Leopotam.csharpfixformat)

フォーマットしてくれる．

## .NET CLI tools を入れる

C#のファイルをVSCodeで開くと，なんか .NET CLI tools　がないよって怒られました．
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/487681/48b3b185-337e-624f-ce7a-3c7aad36d918.png)


VSCode側の指示に従ってインストールして，VSCodeを再起動すると，パスが通ってエラーがなくなると思います．

入れなくてもいいかもしれませんが，エラーが出続けるのが嫌だったので僕は入れました．

# Unity Hub側の設定

##バージョンをインストール
1. Unity Hubのインストールをクリック
2. Unity バージョンを加える　から使うバージョンを入れる．
僕はUnity 2018.4.8f1(LTS)を入れました．Unity 2019.2.4f1を入れたとき，なぜかVSCodeがうまく動いてくれなかったためです．なんで動かなかったかわかる方いたら教えてください．．．

3. モジュールをインストールする．
Visual Studio for MacはVSCodeでやるためチェックを外しましょう．
Platformは,自分でリリースしたいものを選べばいいです．後からでも追加できます．

# Unity側の設定
UnityからVSCodeを紐付けします．

Unityから，
Unity>Preferences>External Tools>External Script Editor
のドロップリストからBrowsを選択してVSCodeを選択しましょう．
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/487681/18de17ed-10e8-da1c-0872-1c1438609633.png)

こんな感じに表示が変わると思います．

Unity 2019.2.4f1のときは，この下にExternal script editor args がでてきてここの設定が上手にできてないからVSCodeが開いてくれなかったのかもしれない．

これで紐付けは終わりです．

# Monoをインストールする．
HomebrewでMonoをインストールします．

```terminal:ターミナル上
brew install mono
```

[Mono](http://www.mono-project.com/download/stable/)
↑のものをダウンロードでも大丈夫です．


---
ここまで終わったらVSCodeでも補完とかできるようになっていると思います．
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/487681/9b211d05-3381-5ec1-176d-a0343dbf9413.png)

#さいごに

UnityのプロジェクトビューからC#スクリプトをダブルクリックしたとき,スクリプトは開かずplainテキストになるものは slnがあるところで開く必要があるらしいですね．
Unity 2019でも開けるように調査していきます．．．

#参考にしたサイト
- [UnityでVisual Studio Codeを使用できるようにするまでの手順](https://qiita.com/riekure/items/c45868f37a187f8e1d69)
- [https://www.crossroad-tech.com/entry/Unity_VisualStudioCode](https://www.crossroad-tech.com/entry/Unity_VisualStudioCode)
- [【Unity】Unity 2018.2でMacのVS Codeが入力補完してくれなくなった時の対処](http://tsubakit1.hateblo.jp/entry/2018/07/10/230752)