カテゴリー別アーカイブ: Oculus

Oculus DK2 とUnity 2016 開発

標準

2016になってOculusドライバーが変わったり、グラボのスペック上がったりでVR開発に再挑戦するにはいろいろメモしておく必要がありそう。

グラボ GTX 970以上。Xboxコントローラーを用意した。

これで初めてOculusの新ドライバーが動く。ただ、DK2なので、サポートしてないよメッセージは消えない(⌒-⌒; )

ーーーー

GameEngine用のOculus Packageを使う

unity5のバージョンで、ダウンロードするパッケージが違うので、ここはunity5.4.0b11 以上を使うこと前提で(2016/6/21現在)。unity 5.4.0b15を超えると、特別なプラグインが必要なくなるかもしれない。

https://developer.oculus.com/documentation/game-engines/latest/

上記ページの指示に従い、OVRPlugin for Unity1.3.2をダウンロードする。

その後、

1)Unityを終了する。
2) C:\Program Files\Unity\Editor\Data\VR\Unity を探す
3) そこのファイルを全て削除するDelete all contents of the directory.
4)OVRPlugin zipを解凍し、フォルダ 5.4\Unityを開き、全てのファイルをC:\Program Files\Unity\Editor\Data\VR\Unity フォルダに移動する

 

 

Blender→Unity→VR

標準

1.Blenderでキャラクタ作成。Unityに持ち込むことを考えると、ローポリが望ましいが、Rigfyを設定するには、細分化したモデルのほうがいいかもしれない(アニメーションをつけるにも)

なので、何段階かにわけて、Blenderデータを保存しておこう。

図は、Rigifyのジェネレータボタンを押して、使いやすいリグに直した状態。rigify01

2. モーションをつけるには、Rigifyをジェネレートしてからおこなったほうが便利(図は、ジェネレートしないまま手付けでモーションつけた)。作成したモーションは、ユーザーがない状態だと保存されないため、モーション名の隣にある、F(Fakeユーザー)ボタンを押しておく。

setsumei01

3.モデルとアーマチュアの両方を選択して、fbxで出力するが、Unityにもっていくと軸がずれるかもしれない。その場合は、下記注意事項4)を実施する。

1)Blenderでキャラクタ作成→Rigifyアドオンを使い、MetaRigとキャラクタをあわせる。
2)今回はジェネレートせずに、メッシュ→アーマチュアを選択し、自動ウェイトづけ。このときに細分化が必要かもしれないが、細分化アドオンは適用しないまま使う。
3)アーマチュアとメッシュのリンクが確認できたら、細分化アドオンは(適用せずに)削除する。
4)メッシュとアーマチュアの両方を選択してFBXで出力。(アーマチュアは回転x:-90で適用。さらにx:90,y:0,z:180回転。メッシュは回転x:-90になっているところをx:0に直して適用してからのほうが、Unity側で回転しなくていい)

4.Unity側には、インポートし、リグにhumanoid(人間型)を選ぶだけでほぼ大丈夫。

rigify-unity

5.Unity側でのアニメーション(mecanim)適用方法(C#スクリプト必要)

1)ヒエラルキーからアニメーションコントローラ作成。適当に名前をつける。
2)キャラクターに、アニメーターコンポーネントが追加されていることを確認(ない場合は、追加)。アバターには、キャラクタのアバターを設定。また、コントローラーには、上記1)のアニメーションコントローラを設定。
3)そのアニメーションコントローラをダブルクリックし、アニメータ設定ウィンドウを開く。
4)画面上で右クリック。新規ステートメント→Emptyを作成し、Moveなどの名前に変える。
5)キャラクタの歩くスピードによって、ウェイトポーズ→歩きモーション→走りモーションに変更したいので、パラメータに、Speed変数を追加(floatタイプ)。
6)4)で作成したステートメントを右クリックし、「ブレンドツリーをステートメント内に作成」を選択。
7)ダブルクリックすると、ブレンドツリー設定画面になるので、ブレンドしたいモーションを選択し、変数との関係を調整する。

キャラクタにメカニム設定までは、こちらの記事も参考になる(Shadeの記事ではあるが)
https://shade3d.jp/training/unity/tips_2.html

使うボーンを減らすために。

メモ

https://blenderartists.org/forum/showthread.php?313749-Rigify-and-action-baking

rigify使い方解説サイト様

http://dskjal.com/blender/introduction-to-rigify.html

SecondLifeOculusViewerのはまりどころ

標準

開発者バージョンOculus Rift DK2を持っています。

うちのグラボNX7600GTでしたので、推奨グラボGeforce GTX970 と載せ変えました。

さあ、SecondLife OculusRiftViewer でKowloon SIMにいってみようと思って、立ち上げたところ、

「あなたのグラボは推奨スペックに達していないので無理」なるメッセージをくらいました。

だいぶ長いこと解決策を探し回ったところ、上記ビューアーが、GTX780までしか想定していないらしく、そこを書き換えろ(追加する)という記事をようやく発見。

https://jira.secondlife.com/browse/RIFT-178

C:\Program Files (x86)\SecondLifeProjectOculusRift

のフォルダの中に、gpu_table.txtというファイルがあるので、それに

NVIDIA GTX 97x		.*NVIDIA .*GTX *97.*		5	1	0	4.4

の一行を足しなさい、というものです(実際には、間にタブ記号などが入っているので、この記事からコピペせずに、https://jira.secondlife.com/browse/RIFT-178から該当の部分(横に長いので全部一行コピーするように注意)をコピペしてください。

GTX980やGTX970M の場合についてなども、その記事か関連記事で見つけることができます。

私は、NVIDEA GTX 97X となっている部分を NVIDEA GTX 970 と書き換えて、ファイルのかなり上のほうに追加しました。

gpu_table.txt ファイルは、システム管理者しか書き換えできない設定になっているかと思いますので、一度どこかにコピーして書き換え、それを再格納するのがいいと思います。

これで、SecondLife OculusRiftViewer を立ち上げ、スペックが低いよエラーメッセージを消すことが出来ました。

Viewer はこちらから

http://wiki.secondlife.com/wiki/Release_Notes/Second_Life_Project_OculusRift/3.7.18.295296

ただ、私のPCにはUSB3.0がついていなかったため、HMDモードに切り替わらず、残念。明日届くUSB3.0ボードを設置したら動くことを祈るばかりです

MacでOculus DK2

標準

WindowsでDK2のさわりの記事は、こちら

ここではMacでDK2を使ってみる

参考書は、「Oculus Riftでオレの嫁と会える本」(2014/12/15発行)翔泳社

1)2015年2月10日現在 Oculus SDK 0.4.4Beta

OculusのDeveloperセンターにログインし、RuntimeとSDKの両方をダウンロードする

(トスカーナの住宅デモをダウンロードしてもよい。)

screencap 2015-02-10 13.44.00

また、Unityで使うためのパッケージ(Pro用オンリーかもしれないが)もダウンロードする

https://developer.oculusvr.com/

2)まずは、ランタイムを実行 ->再起動指示になる

3)再起動すると、Oculusサービスが常駐するようになる

インジケータ(タスクバーの右下)に出ているOculus VRのアイコンを右クリックし、Configuration Utility(環境設定)を開く

4)ヘッドセットを取り出し、HDMIケーブルとUSBケーブルをPCとつなぐ

5)位置追跡カメラとヘッドセットのケーブルの中間にある、ケーブルコネクターボックスをつなぐ

位置追跡カメラとPCをUSBケーブルでつなぐ

6)位置追跡カメラをモニター上か三脚で固定する

ゲームにもよるが、1.5mぐらい離してヘッドセットをかぶる位置の正面に置くようにする

7)ケーブルコネクターボックスから電源とつなぐ(オプション)

8)プラグインにより、ヘッドセット認識

oculus01

上図のように、認識すると写真が出る(HDMIケーブルがきちんとささっていなくて最初認識しなかった)

9)上の設定ウィンドウで、Userを追加し、身長などを入力

10)うちのノートPCはGeForceが入っているため、Extend Desktop to the HMDでないと動かなかった。

その場合、

① 画面は「拡張」にし、

② Rift側の画面は「横(反対側)」にし、(うちの場合。縦に設定する場合もある)

③ Rift側(モニタ番号2)をメインウィンドウに設定する

※Macの設定参考サイト
http://takahi5.hatenablog.com/entry/2014/08/20/004818

OCULUS Shareからアプリ体験

 

 

Oculus DK2とUnityと

標準

やはり、GOROmanさんの情報が早くてありがたいです。

参考情報が充実しているGOROmanさんのサイト

https://docs.google.com/spreadsheets/d/1PtYxl2VmlNTJIxU-yrwEXCwGhYaT7bihKGqvfL7k5oE/htmlview

1)2014年8月11日現在 Oculus SDK 0.4.1Beta

OculusのDeveloperセンターにログインし、RuntimeとSDKの両方をダウンロードする

(トスカーナの住宅デモをダウンロードしてもよい。)

また、Unityで使うためのパッケージ(Pro用オンリーかもしれないが)もダウンロードする

https://developer.oculusvr.com/

2)まずは、ランタイムを実行 ->再起動指示になる

3)再起動すると、Oculusサービスが常駐するようになる

インジケータ(タスクバーの右下)に出ているOculus VRのアイコンを右クリックし、Configuration Utility(環境設定)を開く

4)ヘッドセットを取り出し、HDMIケーブルとUSBケーブルをPCとつなぐ

5)位置追跡カメラとヘッドセットのケーブルの中間にある、ケーブルコネクターボックスをつなぐ

位置追跡カメラとPCをUSBケーブルでつなぐ

6)位置追跡カメラをモニター上か三脚で固定する

ゲームにもよるが、1.5mぐらい離してヘッドセットをかぶる位置の正面に置くようにする

7)ケーブルコネクターボックスから電源とつなぐ(オプション)

8)プラグインにより、ヘッドセット認識

oculus01

上図のように、認識すると写真が出る(HDMIケーブルがきちんとささっていなくて最初認識しなかった)

9)上の設定ウィンドウで、Userを追加し、身長などを入力

10)うちのノートPCはGeForceが入っているため、Extend Desktop to the HMDでないと動かなかった。

その場合、

① 画面は「拡張」にし、

② Rift側の画面は「横(反対側)」にし、(うちの場合。縦に設定する場合もある)

③ Rift側(モニタ番号2)をメインウィンドウに設定する