VR、ゲーム制作、プログラミング。Unity とか Oculus Rift とか。

2017年7月23日日曜日

UnDebuggAble ritTAi-chaN

かわいいアバターになれるだけの実験的なソフト UnDebuggAble ritTAi-chaN (うだたん) を Oculus Store のアルファチャンネルで公開しました。



  • Oculus Touch の親指スティックで感情 (表情) を無段階に操作できます
  • リップシンクにも感情がかかります
  • 目と口の感情は Touch 左右別々にも操作できるので複雑な表情もできます
  • 手でハートを作るとハートが出ます

Touch 親指の感情は、ラッセルの円環モデルを参考に 2 次元マップしています。



テストをご希望の方は、Oculus ID に紐づくメールアドレスを Twitter の DM で @udasan_koubou にお知らせください。

詳細な操作方法はソフトの Details に記載しています。(位置調整や親指スティックの割り当て変更など)



上記のスライドに実装面の少し詳しい話を書いています。

モーメント


クレジット



2017/11/20 : モーメント追加

2017年7月22日土曜日

[Unity]BlendShapeBlink - ブレンドシェイプでまばたき

Unity 用のまばたきスクリプトです。

モデルがブレンドシェイプを持っていれば使えます。

  • 任意のゲームオブジェクトにアタッチ
  • Blink Shapes に「まばたき」など、まばたきに使うブレンドシェイプを指定
    • Skinned Mesh Renderer を指定してから、Index を指定
      • (複数 Skinned Mesh Renderer をサポートするため、個別指定になっています)
    • Min Weight / Max Weight を指定 (通常 0 - 100)
  • Avoided Shapes に、例えば「笑い」「ウィンク」など、このブレンドシェイプが一定の閾値以上のときは破綻を防ぐためにまばたきを抑制するブレンドシェイプを指定
    • 閾値 Threshold Weight を指定 (0.01 とかでもよいし、多少のブレンドを許容するなら 25 などに調整)


コードは以下です。左下のリンクから DL できます。

こちら MMD4MFaceBlink - MMD4Mecanimでまばたき の上位互換になっています。

2017年5月12日金曜日

VR の移動方式を集めてみた (家庭用編)

VR コンテンツの移動方式を集めてみました。

家庭用編ということで、標準的な部屋と機材でできるものに限っています。

なお、観測範囲は Oculus, Vive のメジャーコンテンツや OcuFes 等のコンテンツが主です。

随時追記予定です。

テレポート

テレポート先を指定して瞬時に移動します。

  • Farlands
    • 視線と Oculus Remote のボタンにより、任意のテレポート先とテレポート後の向きを指定できます。また、神視点からのテレポートもできます。
      • 視線をテレポート先の地面に合わせ、ボタンを押したままにしている間テレポート後の向きを視線の差分で操作でき、ボタンを離すとテレポートします。テレポート時にはごく短時間の黒フェードが入っているように感じます。
  • Bullet Train
    • Oculus Touch から出るレーザーで、あらかじめ設定されたテレポートポイントを選択してテレポートできます。
      • ABXY ボタンを押し続けるとレーザーが出ます。レーザーは通常直進しますが、近くのテレポートポイントに吸い寄せられます。ボタンを離すとテレポートします。テレポート後の向きはポイントごとにあらかじめ決まっています。テレポート時には白フラッシュが入ります。テレポートポイントの吸い寄せ時は音と振動が入ります。テレポートポイントは特徴的な位置に設定されているほか、アイテムおよび敵の近くにもあります。テレポートポイントは通常非表示で、レーザーを出している間のみ表示されます。レーザーを出している間、ゲームはスローになります。
  • Robo Recall
    • Oculus Touch から出るレーザーで、任意のテレポート先とテレポート後の向きを指定できます。
      • アナログスティックをどちらかに倒すとレーザーが出ます。レーザーは直進後に弧を描いて落ちます。アナログスティックの方向でテレポート後の向きを操作できます。スティックを離すとテレポートします。テレポート時にはやや長めの白フラッシュが入ります。レーザーを出したときやポイントが一定量動いたとき、テレポート後の向きを変更したとき、テレポートできない点を指した際などは音や振動が入ります。レーザーを出している間、ゲームはスローになります。

超高速移動

移動先を指定して、超高速で移動します。テレポートに近いですが、テレポートが合わない世界観ではこちらが選ばれることがあります。

  • バットマン : アーカム VR
    • チェーンを撃ち出す銃であらかじめ指定されたポイントを撃ったり、指定されたポイントに視線を合わせて A ボタンを押すと、超高速で移動します。
  • Raw Data

自由移動 (フライト系)

視線やモーションコントローラーを使って連続的に好きな方向に進みます。フライト系に見られます。


自由移動 (マシン系)

車やロボットなどに搭乗して操作するコンテンツがある気がします。

EVE : Valkyrie とか… Project Cars とか… Vox Machine とか…

モーションコントローラーを使うものは思い当たりませんでした。(たぶん観測範囲)

自動 (広義のコースター系)

決められたコースに従って自動で移動します。

進行方向をガイドするか、ダッシュパーティクルを出すか、ベクションをどうするか、等速運動にするかどうか、ロール回転は…など色々と検討する点があります。

参考資料 : Oculus ベストプラクティス

とりあえず一例のみ。




半自動 (広義のコースター系+)

基本は決められたコースを移動しつつ、左右や前後などに少し移動できるものです。

とりあえず例のみ。


ルームスケール

ルームスケールで 2,3 歩移動できる範囲でデザインします。移動可能範囲の提示とペアになりやすいです。

いろいろありそうな気はしますが…手元のライブラリには…ソード&プリンセスは…家庭用ではない…

第三者視点

ここではあまり扱いませんが、Lucky's Tale や Edge of Nowhere などあります。

シーン移動

上記の短距離の移動とは別に、シーン間の移動がある場合があります。

特徴的なコンテンツに出会ったら追記するかも。

  • バットマン : アーカム VR
    • 車やヘリコプター等に対してチェーン銃を撃って高速移動した後、フェードアウトしたまま車のエンジン音などを鳴らした後、シーン遷移しているといった演出があります。

その他

いろいろです。

  • The Climb
    • ロッククライミングです。Oculus Touch でホールドをつかんで移動します。
  • Ripcoli
    • 頭を中心より右にしている間、右方向にスライドし続けます。左右のみ移動可能です。
  • VR Walk & Run
    • HMD の運動と、Oculus Touch を持って腕を振ることで歩いて移動することができます。Oculus Touch でつかんだホウキにまたがって飛ぶこともできます。
  • Spider Racer
    • Oculus Touch や Vive コントローラーで立体起動装置みたいな移動ができる、カーブやビルとの衝突時に工夫がある、と聞いています。
  • Ninja Run
    • トリガーを引いたまま体を前に倒すと前進、などができるようです。

未整理





2017/5/12 : 初版
2017/5/23 : シーン移動、未整理項目追加
2017/6/6 : Robo Recall に微追記