> For the complete documentation index, see [llms.txt](https://kurohasu.gitbook.io/fsharpabout/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kurohasu.gitbook.io/fsharpabout/examples/f-with-unity.md).

# F# with Unity

### UnityでF#！？

突然ですが「[Unity](https://unity.com/ja)」というゲームエンジンはご存じでしょうか\
僕は趣味のエフェクト制作で使用していますがスクリプトに関してはC#しか対応していません。\
同じdotnetなのに何故F#がデフォルトで組み込まれていないのでしょうか...\
というわけで（？）F#でもUnityのスクリプトを使用できるようにいじってみましょう

<figure><img src="/files/fdZwhxb8Ezi5Z21QytyI" alt=""><figcaption></figcaption></figure>

### やってみる

1 F#ライブラリを追加\
2 VisualStudioでUnityプロジェクトを開く\
&#x20; ソリューションを右クリックし、追加->新しいプロジェクト\
&#x20; F#の「ライブラリ(.NET Framework)」を選択\
&#x20; (保存場所はAssets/ など分かりやすい所に)

<figure><img src="/files/1gYkKBFoTizORI6IQg6I" alt=""><figcaption><p>テンプレートの種類</p></figcaption></figure>

3 F#ライブラリのプロパティ->ビルド->出力->基本出力パスより\
&#x20; 出力先を分かりやすい所に設定

4 F#ライブラリの依存関係を右クリック->アセンブリ参照の追加->参照

5 必要なdllを読み込ませる

&#x20; mscorelib:\*unityのフォルダ/Editor/Data/Managed\
&#x20; UnityEngine.dll:\*unityのフォルダ/Editor/Data/Managed\
\
これだけでUnity上でF#を使用することができます。\
~~良いF#ゲーム開発を！！！~~

<figure><img src="/files/xhwawzgmN0kXiU8LerYE" alt=""><figcaption><p>書いてみた(ライブラリ名はFSlib)</p></figcaption></figure>

参考:[Qiita「Unity で F#を使う 導入編 メモ」](https://qiita.com/yanosen_jp/items/74fe2b279aa2ff51858a)
