再起動するようですブログを使って日々勉強するよ!この広告は、90日以上更新していないブログに表示しています。記事は@hidex97さんによる「VRは健康!!!」でした)Oculus・VR界隈で体験型ゲームを作ったり、たまにOcufesスタッフでも出没する@n_mattunです。今回は拙作の体感型VRゲーム「飛べると!」の初回リリースから現在までの変更点を書きながら、今まで得た知見を紹介していきます。本記事が他のVRコンテンツ制作者へのヒントになれば幸いです。そもそもどんなゲームなのか背中に背負わせたジェットパックの出力方向を上半身の動きで制御して飛び回り、VR世界に浮いてる風船を制限時間内にたくさん割ろう!という、一人称視点の体感型ゲームです。DK2が出回りはじめて約1年半、VRコンテンツも数多く増えてきていますが、前後左右+上下の360度のVR空間を、ユーザの意思で自由に動き回らせるゲームとなると意外と数が少なくて、さらに体の動きをそのまま操作性に取り入れるコンテンツとなると、今のところ世界中見回しても本作だけだと思います。体の動きをエンジンの出力方向にマッピングするという操作系は当初から今までずっと変わっていませんが、軸の取得方法でマイナーチェンジがあったりしています。→OculusRift本体のロール回転の値を使うように変更しました。→長時間運用でマウスが物理的に斜めにズれてくると値が変わるため、XだけではなくX方向とY方向の移動量のベクトルを使うように変更。※椅子の下にマウスはこんな感じでくっつけてますPS3のSIXAXISの検知方法には、去年のAdventCarenderで紹介した「BetterDS3」を引き続き使っていますが、次のバージョンではPS4のコントローラに引越しをしようと思い、現在情報収集中です。input」がXInput形式でSIXAXIS、振動、タッチパッド、BlueTooth認識してくれ、SIXAXISの検出範囲の調整もでき、とても良さそうです。BlueToothドングルはCSRと東芝のドライバだと動かないという罠があるので、注意しましょう。エンジンの出力で使う、手に持たせるコントローラです。→グリップ感は最高だけど、有線接続のため取り回しに難あり。・・エンジンブレーキトラックボール・・・・・・使用しない(椅子の回転検知と同じヨー回転)→ワイヤレス化に成功したものの「操作ボタンが2つあること自体がユーザを悩ませる」ということに気がつき、コントローラ側はエンジン出力のみに絞ることにする。しない(椅子の回転検知と同じヨー回転)マウスホイールクリック・・・ゲーム開始/ゲームリセットワイヤレス化+1ボタン化にした現行のバージョン。マウスの形状的に、人差し指が必ずメイントリガーにマッピングされるのがグッド。XBOXコン持ち+アナログスティックで出力方向調節など、いくつかのプレイスタイルを選べるようにしてあります。出展時の立ち回り実際にプレイしている様子を見るのは制作者にとって何よりも嬉しい瞬間なんですが、オペレーションを効率的にしてあげないとその様子を見る時間もなかなか確保できません。立ち回りは効率的にいきましょう。本記事の冒頭に紹介した説明書です。最初は説明書は無く、苦労しながら現場で口頭で説明してましたが、ちゃんとマニュアル化しました。制作者名と連絡先こんな感じです。この説明書をA4カラーで印刷してクリアファイルに入れ、体験待ちの人に渡しています。これを読んでもらうことにより口頭説明の時間が省略でき、かなりスムーズにブースが回るようになりました。ちなみにけっこう忘れがちなのが「ゲームの目的(ゴール)」。これが明示されていないとユーザは「どうすればいいの?」と手が止まってしまうので、説明書なりゲーム内なりで終了条件をキチンと説明するか、ゲーム内で制限時間やゴール地点を設けるなりして、ユーザーが『終わりが明確にわかる』状態をちゃんと用意しておきましょう。プレイ前の口頭説明時に気をつけていることコントローラを渡す際は、まずマウスを見せ、使うのは1ボタンのみであることを説明し(この時点ではマウスは渡さない)、次にOculusをかぶせてVR世界を見渡してもらい、そのあとトリガーに指を通すように渡します。ちなみに操作説明時は「Aボタンが●●、Yボタンが●●」と言われてもOculus装着後はそのボタンラベルが物理的に見えないので、「人差し指にあるボタン」という風に、指ベースに説明するのがコツです。日本のVRコンテンツ制作者が大好きな特殊装備について。飛べると!ではPS3コントローラを背負わすために使っている肩パッド+サスペンダーがそれにあたります。最初1セットのみでしたが、サイズもS・M・Lとバリエーションを持たせ、現在は予備含め5セット用意していて、オペレータが複数人いる時は体験待ちの人に先に装備してもらうというローテーションを組めるようにしてあります。装着の手間は相変わらずなので、小さいリュックとかにして装着の時間をさらに削減するのもアリかなぁと思ってたりしてます。『プレイ画面に表示されている矢印マークからヨー方向を常に監視し、椅子と矢印の向きがズれてきた場合は自分の手元にも持っているトラックボールマウスから直接調整する』という、かなり強引な運用でカバーし続けています。初回バージョンでは加速度はかなりピーキーで、行きたい方向に行くのはほぼ不可能でしたが、現在のバージョンでは地球防衛軍のペイルウィング/ウィングダイバーの経験、またはパイロットウィングスのロケットベルトの経験が豊富であればかなり自由に飛べるようになっています。ちなみに後期のバージョンでは、落下時の火力を上昇時より強めに設定し、落下からのリカバリーをやりやすいようにしています。風船の数と場所について線路沿い、高速道路沿い、ビルの屋上、歩道橋の下など、なんとなく目指したくなるような所に置きつつ、空中にもランダムに散らして置いています。風船の数は「数が多すぎてどこを目指したらいいかボやけてしまってる」という的確なレビューをいただいたことがあり、そこも適切な数になるよう自分なりに調整しています。ちなみに開発時の風船の置き方については、Unityの3Dキャンバス上にいちいちドラッグで置いていくのは大変そうに見えたので、シーンプレビューで自分が飛びながら任意のボタンを押すと現在の座標を出力する状態を作り、その座標データを元に風船をスクリプトで配置していきました。City」を利用しています。マップの端っこにたどり着いた場合、どうやってごまかそうか・・という問題に対しての試行錯誤です。ちなみに一般的なゲームでもありがちな「空中に『見えない壁』があって、そこから先は『作戦外エリアです』とかもっともらしい理由を付けて行けないようにする」という解決策は、飛行時の爽快感を大きく損なうことと、見えない壁にあたってユーザの予測なしにいきなり慣性が変わると即VR酔いに繋がるので、ここは避けるべき問題と捉えていました。第一弾マップ端まできたら慣性を維持しながら反対側の画面端に演出付きでワープするようにしていた。→ユーザからすると画面端に到達してしまう焦りを伴った状態でいきなり別場所に飛ばされると意味がわからない状態になっていた。第二弾ワープ機能を無くして、街の端っこまで来たら地上に降りてもらい、反対側を向き直して飛びなおすように口頭で案内するようにした。→オペレーションが大変なうえに「ひたすら真っ直ぐ飛び続ける」ということができなくなり、ゲームとしての爽快感が失われた。体験しているユーザにはわからないように、マップを無限ループ化。中央地図の画面端まできたら、慣性を維持しながら中央地図の反対側の画面端にワープ。(ユーザーからすると画面上の変化は無い)→策としては成功したが、当然のように重くなり、オクルージョンカリングをかけてもOculus警察が見たら助走をつけて殴るレベルのバージョンになった。(同じ地図を3x3配置してる様子。ゲームのコンセプト的には秋葉原の街がちゃんと再現されてる必要は特にないので、許容できる程度のFPSがでるまで、建物の数をひたすら間引き。風船も自分から離れている場合はアルファさせないなど、わかる範囲での軽量化を施す。マップに対する手加えはいったんこれでFixしていますが、無限ループ実装でひたすら真っ直ぐ飛び続けられるものの、今度はそのせいでプレイヤーがほとんど旋回しない、やや単調なゲーム性になってしまっているので、次のバージョンでは飛行操作のひとつひとつを楽しむことに主眼を置いた、自作ベースのアスレティックなマップを提供しようかと思っています。今後の予定(ひと段落したのでソフト配布も始めました)今後ですが、OtakuCity上を飛び回るこのバージョンはこれでいったん開発終了にして、現在はUnity5.x環境下で大幅に作り変えた新バージョンをまたイチから作り直しています。新しいバージョンをOcufes等のイベント展示でお目にかけるにはまだまだ時間がかかりそうですが、どうぞ気長にお待ちください。0.6.0.1以下でしか動きませんが、現状のバージョンのソフトを配布します。こちらのアドレスからダウンロードしてください。CarenderはOcuFesの縁の下の力持ち、@mkt_さんの「OculusRiftデモ展示Tips」です。Touch初体験の雑感まとめ表題通りです。PSVRの予約開始日である06/18(土)に秋葉のベル...2015-12-29Oculus+FPS視点のカメラ左右操作時のVR酔い対策を思いついて試したらかなり良かった件VR酔い、なんとかしたいですよね。2014の2日目です。月別アーカイブ参加グループインターネットはてなブログをはじめよう!n_mattunさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。