C#
.NET
OpenCV
Unity
nuget

Unity であらゆる C#(.NET) パッケージを使う(例:opencv)

はじめに

Microsoft がサポートする .NET のパッケージ管理である NuGet はみなさんご存知だと思いますが本パッケージマネージャーを Unity で使う方法があります。

もちろん Unity は Mono で動作していますが、.NET2.0用のライブラリが存在していればほぼそのまま使えます。

NuGetForUnity

.unitypackage をダウンロードします。

https://github.com/GlitchEnzo/NuGetForUnity/releases

image.png

Unityを開いて上記のパッケージをインポート

  • Unityのアセットウィンドウに、~.unitypackageファイルをドラッグアンドドロップで追加します
    image.png

  • すべてインポート
    image.png

  • パッケージのインポートが完了するとメニューに「Nuget」が追加
    image.png

OpenCVSharp3 を追加

  • メニューから「Manage NuGet Package」を選択
    image.png

  • 「OpenCVSharp3」を入力して「Search」で検索
    image.png

  • 検索したら、「Install」を選択
    image.png

  • Assets に Packages フォルダが追加され、OpenCVSharp3が追加された事が確認できる
    image.png

Unity 2018とOpenCvSharpで無料で顔認識までやってみる さんでは、以下の記述があるのでお気を付けください。

x64とx86のライブラリがぶつかるのでAssets/Packages/OpenCvSharp3-~~~~~/NativeDlls/のx86を削除

スクリプトで参照

適当にスクリプトを追加して、「using OpenCvSharp」を using 出来るようになっており、実際の「Mat」変数などが使えるようになっています。

image.png

終わりに

Unity での C# は Mono で動作しているのですべてのパッケージが使えるわけではないですがライブラリのインポートなどに困っている方は一度使ってみてはいかがでしょうか。