自習室

こもります

RealSense SDK 2.0 を自力でビルドして、C++やUnityで使う@Windows

基本的な導入に関してやったことのメモ。

これを試したかったので、最新の development ブランチをビルドすることを目的とします。 unagi (@UnagiHuman) | Twitter さんありがとうございます!

筆者利用環境

Quick Start

まずは自分でビルドせず、動作確認をします。Windows Distribution に従う。

  • GitHub Releases から最新の Intel.RealSense.SDK.exe をインストール。
    • これでカメラ精度を見る Depth.Quality.Tool.exe も、 可視化ツール Intel.RealSense.Viewer.exe もインストールされます
    • ちなみに、Releases にある Source code (zip) は、リリース時点のコードをまとめた物。
  • Intel.RealSense.SDK.exe のインストールでドライバもインストールされるので、D415/D435 を刺してWindowsが認識することを確認。
  • Intel.RealSense.Viewer.exe を起動
    • 2D でカラー・デプス・IRなどが表示されることを確認
    • 3D でポイントクラウドが表示できることを確認
  • サンプルのプロジェクトをビルドしてみる

C++ で開発する

コードを clone してきたら development ブランチに切り替えておく。

自分で realsense2.dll をビルドする

今回の記事には二つ dll が登場します。

  • realsense2.dll は、D415/D435 などを使う為のダイナミックリンクライブラリ。 c++ でも C# でも使います
  • LibrealsenseWrapper.dll というのもあとから出てきます。こちらは Unity で使えるようにする為の、Managed のプラグイン。 Unity および C# (Windowsプログラミングとか) でRealSenseを使う時に使います。

ここは realsense2.dll の話。ここに書いてあるのをやる→ Windows 8.1 & Windows 10 Installation

注:BUILD_CV_EXAMPLE などのビルドオプションが正直よくわかってないのですが、問題なく使えています

  • CMake は利用環境向けのソリューションファイルを生成するだけなので、その後各環境でビルドして始めて dll なりが作成されます
  • Example や Tools も一緒にビルドするので、その中で realsense-viewer.exe 等が動く事を確認する。

改めてC++のサンプルを読んで、ビルドしてみる

(例)上記でビルドした結果のディレクトリの中の examples ディレクトリ中の ReleaseExamples.sln を起動して、 rs-pointcloud プロジェクト等を単体でビルド、実行。など。

Unity で開発する

ここに書いてあることをやります→ Unity Wrapper for RealSense SDK 2.0

ビルド済のUnity用のdllを使う場合は、初めにインストールした C:\Program Files (x86)\Intel RealSense SDK 2.0\bin\x64 あたりから取ってくる

LibrealsenseWrapper.dll をビルドする

今回はここが目的。 Unity ラッパー用の dll を最新の development ブランチのコードでビルドする。

VS2017でビルドする場合、.NET Core 2.x SDK のインストールを事前にお忘れ無く

VS2017 でビルドすると .net2.0 向け、 .Net3.5 向け、.Net 4.6.1 向け~みたいな感じで複数の .dll が作成されますが、現状のUnityは 3.5 だった気がするので net35 のフォルダから dll を持ってきて使います。

Unity のサンプルを動かす

以上

これで C++ と Unity で開発できることが確認出来ました。おしまい。