Unreal Engineを使用して最もシンプルなVRデモを作成する





仮想現実が主流になるにつれて、ますます多くのゲーム開発者がHTC ViveやOculus Riftなどのデバイス向けの新しいコンテンツを作成したいという要望を表明しています。 利用可能なエンジンのうち、特に目立つのはアンリアルエンジンとUnity3Dの2つです。 この記事では、Unreal Engineに基づいた小さなデモを開発するプロセスを見ていきます。 私たちは、オブジェクトを自由に移動したり、オブジェクトを取得または破壊できるレベルを作成しています。



アンリアルエンジンとは何ですか?



これは1998年にEpic Gamesによって作成されたゲームエンジンです。最初はUnrealシューティングゲームの作成に使用され、それ以来、エンジンは多数の大規模で複雑なゲーム(Unreal Tournament、Bioshock、Mortal Kombat Xなどを含む) ) アンリアルエンジンは、従来のC ++ブループリントのビジュアルスクリプトシステムという2つのツールセットをプログラマに提供します。これにより、ゲームロジックをすばやく開発できます。



VRサポートは、2012年の4番目のバージョンから登場しました。 最初にサポートされているデバイスは、Oculus Rift DK1です。 現在、エンジンはすでにすべての主要なデバイスで動作しています。



2015年3月まで、開発者はライセンスを購入する必要がありましたが、その後エンジンは無料になりました。 唯一の条件は、Unreal Engineで作成されたゲームからの利益が3,000ドルを超える場合、ロイヤリティの5%差し引く必要があるということです。



代替案



または、Unity3Dエンジンを使用してVRゲームを作成できます。 2D機能は非常に発達していますが、より若く、もともとモバイルゲーム用に磨かれていました。 また、その人気と柔軟性により、このエンジンはデスクトップゲームやVRコンテンツの作成に積極的に使用されています。 C#JavaScript、またはBooを使用してUnity3Dでゲームを作成できます。 Unrealの場合と同様に、エンジンは無料です。



この記事では、最も高度なVRデバイスで動作するデスクトップゲームを作成するプロセスを示すために、Unreal Engineを選択しました。 また、このエンジンを使用すると、プロトタイプを非常に迅速に作成できます。



VR製品を開発する価値があるのはなぜですか?



近年、VRテクノロジーは新しいレベルの没入感に達しました。 そのため、ユーザーは3Dや2DよりもVRゲームにずっと興味を持ちます。 そして、新しい印象的なコンテンツを作成する機会があるため、論理的なステップを踏んでそれを行う必要があります。



開発者の観点から、VRはゲームのさまざまな要素の相互作用と管理に関連する多くの新しい課題を提起します。 これには、ストーリーテリング、サウンドデザイン、動きなどが含まれます。 VRを念頭に置いて将来のゲームが作成されることを考えると、ゲームとエンターテイメントの世界を変えるチャンスがすでにあります。



デバイス選択



HTC Viveを選んだ理由は次のとおりです。





コントローラを使用してオブジェクトとやり取りするため、HTC Viveの選択は明らかです。



VR設定



強力なコンピューターであるメガネHTC Viveを使用して、チェックリストを確認します。



  1. すべてが正しく接続されていることを確認してください。 指示
  2. SteamとSteamVRをインストールします。
  3. メガネとすべてのコントローラーのファームウェアが更新されていることを確認してください。
  4. 「ルームのセットアップ」と「チュートリアル」を実行して、ルームスケールを構成します。 すべてが正しく機能していることを確認します。
  5. Unreal Engine (バージョン4.13.2)をダウンロードしてインストールします。


これでデモを開始できます。



デモの実装



開発を開始する前に、ブループリントの使用方法に関する知識を身に付ける必要があります。 新しいプロジェクトを作成し、レベルを調整し、シンプルなゲームロジックを作成して、オブジェクトをポイントし、シャッターを押して破壊できるようにする手順を実行します。



Unreal Engineを起動して [ 新しいプロジェクト ]タブに移動します。 [ ブループリント]セクションで、[ バーチャルリアリティ]を選択します。 プロジェクトのセットアップ( プロジェクトのセットアップ )で、 デスクトップ/コンソール最大品質および初期コンテンツなし (初期データなし )を選択し、 場所 (場所)でプロジェクトファイルへのパスを指定します。







プラグインメニューに移動し、 Virtual Realityで「SteamVR」プラグインが有効になっていることを確認します。











コンテンツブラウザで、 VirtualRealityBP / mapsフォルダに移動し、「MotionControllerMap」を開きます。







使用可能な事前生成レベルが表示されます。 ここで、さまざまなアクションを適用できます。 たとえば、オブジェクトを取得し、レベルごとにプレイヤーをテレポートします。 実験して、すべてが正しく機能していることを確認します。 次に、オブジェクトにカーソルを合わせてシャッターを押したときにオブジェクトを破棄するロジックを紹介しましょう。



これを行うには、 VirtualRealityBP / Blueprintsで 、ブループリント「MotionControllerPawn」を開きます。







右手の「MotionController®Trigger」イベントを発生させ、ブール値(true / false)を設定してシャッターボタンを押して離します。







Tickイベントでは、ライントレースを作成して、目的のオブジェクトを確認します。 これを行うには、開始点と終了点を設定します。 開始点として、 Right ControllerMotion Controllerをバインドし、 GetWorldLocationを取得します



Get Forward VectorMotion Controllerに接続します 。 したがって、コントローラーによる照準の方向を取得します。 このベクトルに必要な距離(たとえば、1000 = 10メートル)を乗算し、開始位置に追加して、終点を取得します。



LineTraceByChannelモジュールを追加し、開始点と終了点を接続し、[ デバッグタイプ描画 ]タブで[ 1フレーム ]を選択します。 このオプションは、開始点と終了点の間に線を引くことを意味します。







次に、 Break Hit Resultの出力に移動します。HitActorの場合、BP_PickupCubeへのキャストCastを作成します。 これは、レベルでは青いキューブしか選択できないことを意味します。



次に、ブランチをスローし、以前に作成したCan Destroyのブール値を確認します 。 falseの場合、何もしません。 trueの場合、 DestroyActorモジュールを呼び出して、選択したオブジェクトを破棄します。







できた [再生]ボタンをクリックし、[VRpreview]を選択して作成を試してください。



最後の言葉



ご覧のとおり、すべてがシンプルです。 このエンジンは、初心者向けの最初のステップを大幅に促進するコンテンツプレフィックスを提供します。 さらに、Unrealを使用すると、機器から距離を置くことができます(たとえば、デバイスの追跡やメガネで画像をレンダリングする方法について考える必要はありません)。 これにより、コンテンツ自体に集中できます。



私の経験では、ブループリントは数回クリックするだけでゲームの仕組みを作成する素晴らしい方法です。 作成したデモに基づいて、UnrealエンジンでのVR開発のプロセスを簡単に理解し、ますます複雑なスキームとゲームアクティビティをマスターできます。 仮想現実の未来を創造する時が来ました。



All Articles