飴屋

OSVR/日記003

UnrealEngineに触ってみた

OSVRのことと並行してUnrealEngineのことを調べてみました。ゲームエンジンであることは知っていましたが、いろいろな関連職の人が並行して開発をすることを考慮されているようです。インストールして簡単に触ってみたところ様々なエディタがよくできているようで、ごく簡単なゲームなら短期間で開発できてしまいそうにみえます。ただ、制作の流れのようなものを掴みたかったので、一冊参考になる本を購入してみました。

とても丁寧に解説が書かれていて、今の自分にピッタリな内容でした。本の中で機能を紹介しながら一本ゲームを作っていくという構成で、ゲーム制作の順番もこれで追うことができそうです。

環境構築

続いて、Unreal Engineの成果物をOSVRのHDKに表示するための準備を行います。まず、 ここ からUnreal Engine用のプラグインをダウンロードして、中のreadmeファイルを読んでみると、依存性の項目に

  • OSVR SDK 32-bit
  • OSVR SDK 64-bit
  • OSVR-Android

と書いてありました。SDKは既にインストール済みでしたので、OSVR-Androidを ここ からダウンロードして適当な場所に設置しました。

必要なものが揃ったようなので、指示に従ってインストールを進めていきます。OSVR-Unrealに同梱されていた「ImportFromSDK.cmd」を実行すると、前述のSDKやOSVR-Androidがあるパスを尋ねられるので、それぞれ回答します。これで必要なライブラリがOSVR-Unrealの方にコピーされたようです。

(追記:OSVR-Unrealのあるフォルダのパスに半角スペースが含まれているとコピーに失敗します。またSDKやOSVR-Androidがあるパスを指定するときは半角スペースが含まれていてもいいように引用符(")でパスを囲むのがよいとのこと。正しくコピーが済むと、OSVR-Unrealの中のPlugins\OSVR\Source\OSVRClientKitの中に「include」「lib」「bin」などのフォルダが増えていて、その中に必要なファイルがコピーされているそうです。)

既存のunrealプロジェクトのフォルダの中にOSVR-Unrealの中のPluginsフォルダをコピーしてやるとそのunrealプロジェクトのエディタに「プレイ>VRプレビュー」の項目が増えました。手順書によるとunrealのプロジェクトファイルを開くと自動的にプラグインのリビルドを行ってくれるとかなんとか。もしくは手動でリビルドしろとのこと。わからないので手動の手順を踏んでみることにしました。

unrealのエディタの「ファイル」メニューからVisual Studioのプロジェクトを作成するか、既存のものを更新しろとのこと。この際、純粋にブループリントだけ使って作られたプロジェクトでもC++のモジュールをダミーで追加しておけとのこと。できたら、やはり「ファイル」メニューからVisual Studioを開いて「Win64」をターゲットにC++プロジェクトをリビルドし、プロジェクトディレクトリの中のBinaries/Win64とBinaries/Android/armeabi-v7aの中にOSVR pluginのバイナリファイルができあがっていることを確認せよとのことでした。

実行

準備が済んだのでプロジェクトをテストしてみます。ただUnrealEngineの参考本を見ながら作成したプロジェクトにはスタート画面(2D)がついていました。OSVRのHDKの中で2D画面が出ても画面の左と右が左右の目に分かれて表示されるだけなので、とてもスタートボタンを押せそうにありませんでした。なのでステージ1の途中からスタートすることにしました。

すると、プロジェクト自体には手を加えていないのに勝手に3D画面が左右の目それぞれに描画されてくれました。なお、このサンプルゲーム(箱庭で忍者を操作するゲーム)はプレーヤー見下ろし型のゲームなのですが、ちょっとカメラの位置がステージ全体を見渡すようになっていました。これを本来のプレーヤーに追従するカメラに位置を合わせたり、プレーヤーの目線に合わせて上げればゲームとして成立しそうです。箱庭がコンセプトだそうなので、全体を見渡せるのもそれはそれで楽しいですけどね。首を振るとちゃんと描画がおいついてくれてVRをやってる感が味わえました。

ここまでの雑感

UnrealEngineの勉強をしている時間もそれなりに長かったのですが、OSVR HDKを購入してから意外と本業の方が忙しくなってしまい、こんなに時間が経ったのにあんまり大したことがまだできていないという悲しい状況になってしまいました。たまに空いた時間に触っていたのですが、まだ未成熟なOSVRは触る度に何かしらのアップデートが挟まっていて、その都度環境を構築し直していて、肝心のコンテンツ開発にたどり着く前に時間切れとなってしまうことを何度となく繰り返していました。トラブルというか未知の内容が多い端末でもあり、なかなか手を焼かされていました。

日本でv1.4が発売して割とすぐにハイスペックなv2が登場して「おいおい」ともなりましたが、低スペックなPCでも動くv1系はそれはそれで使い道がありそうです。でも、そんなv1系でも、うちのパソコンではCPUファンがすぐにうなりを上げるので新しいPCが欲しいなとここのところずっと考えています。GPUにどこまでお金をかけていいものなのか・・・。

VR元年と呼ばれた2016年が終わってから、次の夏の真っ盛りでVR業界もいろんな動きが起こっています。Oculus Riftが5万円でコントローラー付きで買えちゃうようになるとは・・・。もう一方の勢力HTC Viveの方もいろいろと周辺機器やワイヤレス化で話題も多いし、PSVRはまだ品切れているようだし、Daydreamなんていうスマホ向けの規格も生まれてきたし、自分はこのスピード感についていけていません。これからどう付き合っていくか、もうちょっと考えてみようと思ってます。

日記一覧