モーキャプシステムPerception Neuronメモ #PerceptionNeuron

Unityでの開発について

Axis Neuronを起動しておいて、TCPかUDPでストリームで各関節のデータを流す感じ。別PCのIPアドレスを指定して接続して使うのもOK

確認環境

  • Unity5.2.0f3(Oculusの場合はいろいろと問題があるバージョン
  • Unity Integration、Unity用の統合パッケージPerceptionNeuronUnityIntegration_0.2.2

※最新のUnity統合用アセットのダウンロード
は公式から。https://neuronmocap.com/downloads

unitypackageの取り込み

PerceptionNeuronUnityIntegration_0.2.2のzipをDLして解凍、 PerceptionNeuronUnityIntegration.unitypackage をプロジェクトに取り込む。

また新規の場合はそのままProjectSettingsを上書き。

既存プロジェクトの場合は今までの設定が上書きで消えてしまうので、個別に設定を行う。
Unity HandbookのHOW TO GET THE INTEGRATION INTO UNITY(P6)

  • PerceptionNeuron_UnityIntegration.unitypackage を取り込む
  •  Edit -> Project Settings -> Tags and Layersで Body レイヤーを追加。(別の名前でもOK)
  • Edit -> Project Settings -> Physics で追加した Body レイヤーで同じBodyレイヤー同士でコリジョンの影響がないようにチェックをOFFにする。

 

統合パッケージについて

Unity Handbookを参照。だいたい全部書いてある。

スクリプトの概要機械翻訳

 

任意のモデルデータを使う場合

NEURON SKELETON TOOLSを使う。
Unity HandbookのP14、15

機械翻訳

 

Oculusのサンプルを動かす

NeuronExamples\OVRExample\OVRExampleScene.unityのサンプルシーンを開く

AxisNeuronとUnityの接続

NeuronRobot_LowPolyRigにアタッチされているNeuronAnimatorInstance.csのAdressを確認。

→ 同一PCでAxisNeuronを起動している場合は、今のPCを示すループバックアドレスの127.0.0.1を指定。(なぜか変な値が入っていたことがあった)

→ 別PCの場合はそのIPアドレス。たとえばcmdからのipconfigでIPv4 アドレス . . . . . . . . . . . .: 192.168.0.12 のようなローカルのアドレス。つながらない場合はFWのポート設定とかを確認。同一PCで動かす場合は気にしなくてもおk

※このあたりはAxis NeuronのSettingsのGeneralとかBroadcastingの設定を確認しながら。ただしこのあたりの設定は特に弄る必要はなくデフォルトでOK。GeneralにあるIPは自動的に切り替わってくれる。

OculusのポジトラとPerception Neuronで動くキャラクターの頭の位置をばっちり合わせる

OVRCameraRigにアタッチされているNeuronOVRAdapter.cs内でコメントアウトされている箇所を戻す。

これはUnity4.6時代で一般的であったOculusSDKを使う場合は、NeuronOVRAdapter.csでエラーが出るコードらしく、コメントアウトされて動かない。

Bind Transformに位置を追従させたいオブジェクトを指定。OVR Cameraにそれを指定。

※実装サンプルのデモシーンであるOVRExampleScene.unityではNeuronRobot_LowPolyRigの頭にあるRobot_Headの子に空のゲームオブジェクトOVRCameraTargetを追加して指定している。

スクリーンショット_091915_070132_PM

 

Unityで開発する時の流れ

PerceptionNeuronを装着して毎回席立って動いて確認というのはやってられないので、AxisNeuronのモーションの録画機能で保存して、保存したモーションをループ再生しておいてUnity上で流し続ける感じがGood。PerceptionNeuronを接続してなくてもOK。

モーションの保存

スクリーンショット_091915_073051_PM

保存したモーションデータの再生

スクリーンショット_091915_072546_PM

 

PerceptionNeuron使ってみた

まずは適当なモデルになってみる失敗編

E.T.

指先のあたり判定でイベント実行

 

VRろくろ

手で粘土モデルをろくろで回して成形。両手を上げるとSTLファイル出力

 

唐揚げ召喚のポーズ

任意のポーズで任意のイベントを実行

 

VR壁画

左手のジェスチャーで空間内を移動。右手の指でモデルデータのMesh上に色塗り

モーションキャプチャ

ニコ生放送終了後にMCの声優の有野いくさん(Twitter@iku_arino)に踊っていただきました。

【ニコ生タイムシフト視聴中(2015/09/14 20:30放送)】『オキュっていいとも!』第8回 ゲストは引き続きゆーじさん #nicoch688 #オキュっていいとも http://nico.ms/lv233912025

rawデータのダウンロードはこちら

いくちょんのみなComing体操モーションrawデータ

ZIPの解凍パスワードは「Oculus Riftでオレの嫁と会える本」巻末にあるシークレットコード

最初に頭のNeuronがずれていたり、Axis Neuron上で身長や関節の長さの設定などが未調整のため色々と厳しめではある。