注意:このドキュメントはまだ未完成です。
Kinect v2で取得した骨格データをリアクティブに通知するための簡単なユーティリティです。
あとUnityで使いやすいようにKinect.Vector4みたいな値などをPose構造体に変換したりしてます。(そのせいで独自のデータ構造を作っています。)
- Kinect For Windows Unity Pro
- UniRx
-
Unity 2019.3.1
-
Windows Home
-
Intel Core-i7 7700
-
GeForce GTX 1060
ReleaseページのunitypackageをDLします。
- Unityを開く
- Kinect SDKパッケージを導入します。
- zipに入ってる「KinectView」フォルダをPluginsに入れるのも忘れずに
- UniRxをいれる
- このパッケージを入れる
空のGameObjectをシーンに追加し、'ReactiveKinectSkeletonSensor'コンポーネントをアタッチします。 このGameObjectからGetComponentすれば、ReactivePropertyとして全身の骨格データ(KinectSkeletonData)が取得でき、センサーデータに変更があれば登録されたObserverに通知されます。
例えば下のような書き方ができます。(Skeletonデータをメンバ変数に格納するだけのプログラム)
private KinectSkeletonData _skeletonData;
private ReactiveKinectSkeletonSensor _sensor;
private void Start()
{
_sensor = GetComponent<ReactiveKinectSkeletonSensor>();
_sensor.Skeleton.Subscribe(skeleton =>
{
_skeletonData = skeleton;
}).AddTo(gameObject);
}
何か問題があれば、作者のTwitter(@ninisan_drumath)へご連絡いただくか、 issueやPRをください。