KINECT for Windows SDKをVC++ Nativeで使う(基礎)
先日公開されたKINECT for Windows SDKは、マネージコード(C#など)だけでなく、VC++ Native用のAPIも提供されています。
ちょっと試してみたい場合にはC#でサンプルを書くのが圧倒的に簡単なのですが、中には「C++は知っているけどVisual Studioは使ったことはないし、C#はしらない。でも試したい。」という方もいらっしゃるでしょう。
そんな場合は、Visual Studio C++ 2010 Expressでお試しください。Visual Studio 2010 C++ Expressは、https://www.microsoft.com/japan/msdn/vstudio/express/ の真ん中あたりから、無償でインストールして使うことが出来ます。
VC++ Nativeによるプログラミング方法の基本は、https://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/docs/ProgrammingGuide_KinectSDK.docx や https://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/docs/SkeletalViewer_Walkthrough.docx (どちらも英語でごめんなさい)あたりを見ていただくこととして、(おいおいもっと詳しく取り上げます)、ここではVisual Studio 2010になじみの無い方向けに、コードを書く以外で引っかかりそうなところを説明しておきます。
インクルードファイルディレクトリ:
VC++ NativeでKINECTのAPIを使うには、MSR_NuiApi.hのインクルードが必要です。
#include <MSR_NuiApi.h>
と、まぁ、コードではこう書くわけですが、予めこのファイルが格納されているディレクトリを設定しておく必要があります。Visual StudioでVC++ Nativeプログラム用のプロジェクトを作成し、ソリューションエクスプローラで、プロジェクトを右クリックしてプロパティを開きます。
左側のパンで”VC++ディレクトリ”を選択し、右側のパンの”インクルードディレクトリ”の入力欄の一番右側を左クリックして、”<編集…>”を選択してください。
右上のフォルダーチックなアイコンをクリックして、KINECT SDKがインストールされているディレクトリを設定します。32Bit OSの場合は、C:\Program Files\Microsoft Research KinectSDK\inc、64Bit OSの場合は、C:\Program Files (x86)\Microsoft Research KinectSDK\inc です。
この設定をしておけば、コードで#include <まで入力すると、インテリセンスで、MSR_NuiApi.hが候補として出てきます。
リンクファイル:
更に、ビルドして実行ファイルを作成するには、”MSR_KinectNUI.lib”のリンクが必要です。このファイルは、前出のディレクトリのincをlibに変えたディレクトリに格納されています。プロパティダイアログの、インクルードディレクトリの二つ下に”ライブラリーディレクトリ”という項目があるので、こちらの追加しておきます。
そして、プロパティダイアログの、左のパンの”リンカー→入力”の項目を選択すると、
右側のパンの”追加の依存ファイル”の項目に”MSRKinectNUI.lib”を追加します。
以上で、準備OKです。後は、コードを書いて、ビルドすれば、プログラムを実行させることが出来ます。
この設定は、VC++ Nativeで、例えばサードパーティ製のライブラリを使う時などは、絶対に必要な設定なので、覚えておいてください。
Comments
- Anonymous
June 26, 2011
ライブラリはソースコード中に #pragma comment (lib, "MSRKinectNUI.lib") のほうがいいかもしれませんね。デバッグではリンクしたけど、リリースでリンクしなかったとか悲しいですから…。