VR開発におけるレンダリングと最適化

この記事は、VRプロジェクトの品質開発に関するシリーズの第2回です。 以前に、記事「VR-Design:a look in virtual worldで、カメラを操作する原理をすでに研究しました。 他の資料へのリンクは、 レビュー記事に記載されています

仮想現実を作成するには、ハードウェアとソフトウェアの複雑な相互作用が必要です。 さらに、個々のコンポーネントはそれぞれ重要な役割を果たします。

今日は、ソフトウェアをより詳細に見て、さまざまなレベルで何が起こっているのかを理解します。 これらの基礎を理解できれば、プロジェクトを適切に最適化するために必要な知識が得られます。

特に、高品質のVRプロジェクトを簡単に開発できるように、VRアプリケーションのレンダリングと最適化に関する知識を広げたいと考えています。 たとえば、 カメラが開発にどのように影響するかを知る必要があります。

1秒あたり90フレーム


1秒あたり90フレーム(略してFPS)を提供することが重要です。 古典的なゲームを開発するのは簡単ではありませんでしたが、VRではこの問題はさらに深刻になりました。

目に見える領域は、独自の視点で各目に対して2回レンダリングする必要があるためです。 デュアルレンダリングアクセラレータは既に3Dエンジンに組み込まれていますが、この追加の負荷に対して完全なカウンターウェイトにすることはできません。

本当に、本当にフレームレートを見る必要があります。

あなたは自分を病気にしたくない。


-Dylan FittererAudioshieldの開発者

モーショントゥフォトンレイテンシの概念をすでに聞いたことがあるかもしれません。 VRメガネでの位置の変化と画像の実現の間の経過時間を記述します。 理想的には、この期間は30ミリ秒未満である必要があります。

原則として、最も一般的なエンジンとSDKにより、開発者はそれについて考えることができません。 彼らはこの困難な仕事を引き受けます。 それらのおかげで、当社の3Dシーンは、あらゆるタイプのデバイス、レンズの位置、曲率に対して最適化されています。

さらに、エンジンを使用して新しいレンダリングアクセラレータを自動的に取得します。 たとえば、Unity開発者は最近、最適化を改善するための広範な更新を導入し、負荷の一部がCPUからGPUに(プロセッサからグラフィックカードに)転送されたため、負荷が軽減されました。

このレベルのレンダリングで発生する問題は、この記事には大きすぎます。 ただし、このトピックに真剣に対処したい場合は、「高度なVRレンダリング」に関するAlex Alex Vlachosのレポートをお勧めします。


また、量に行きます。

さまざまなこと、新しい概念を試してください。


-Dylan FittererAudioshieldの開発者

私たちはFPSを制御しており、かなり高いですが、私たちは正しい軌道に乗っています。 これを実現するには、開発中にいくつかの点に注意を払う必要があります。

便利なツール



画像

開発時には、VRアプリケーションのパフォーマンスをテストするための非常に便利なツールがあるため、自分の感情に頼るべきではありません。

NVIDIA Tool Nsightはグラフィックスカードと密接に連携し、エンジン開発者の間で人気があります。 しかし実際には、パフォーマンスを正確に制御するために、 UnityまたはUnreal Engineツールを使用できます

画像
Unity 3D Profilerは、VRアプリケーションの重要なパフォーマンス情報を提供します。

さらに、必要なデバイスの最小要件を満たすコンピューターを使用してVRプロジェクトをテストすると理想的です。 そのため、ユーザーが後で見るのと同じ方法でVRアプリケーションを確実に見ることができます。

アニメーション、サウンド、インタラクションに焦点を当てる


技術面では、最適化できる特定のポイントがあります。 ただし、これらはコンテキストに応じてすべて特別なケースです。

ただし、 モバイルゲームの最適化方法からインスピレーションを引き出すことができます。 開発以来、特に高解像度(iPad Retinaなど)で同様のパフォーマンスの問題があります。

VRアプリケーションを改善する大きな可能性があります。 視覚的には、仮想世界は詳細レベルで古典的なゲームと競合するべきではありません。

VRでは、まったく異なる要素が重要であるため、視覚コンポーネントは背景に隠れます。 したがって、3Dモデルとエフェクトを簡単に単純化して、負荷を軽減できます。

VRプロジェクトの世界は、アニメーション、サウンド、インタラクションの3つの柱に支えられています。 したがって、すべての時間とインスピレーションをこれらの側面に正確に向ける必要があります。

グラフィックを大幅に簡素化し 、ライブアニメーションと適切なサウンドに時間と電力を節約することで、シーンを補完し、さらに明るくすることができます。 インタラクティブを忘れないでください。 ユーザーを興味を持って楽しませるのは彼です。

VR開発のこの方法の優れた例は、ゲーム「Job Simulator」です。


VRプロジェクトで優れた視覚コンポーネントが必要というわけではなく、ライブアニメーションとシンプルなグラフィックの組み合わせは完全に信じられそうに見えるという事実は、このビデオで見ることができます。


あなたのためのヘルプ:

VRプロジェクトでのサウンドエフェクトの正しい実装はどれほど重要であり、3Dサウンドをシミュレートする際に不正に頼る理由は次の記事で説明します。

VRプロジェクトで許容可能なパフォーマンスの限界を超え、最適化の支援を求めている場合は、 私に連絡してください

すでに述べたように、さまざまな最適化手法の適用は適切であり、コンテキストとプロジェクトに応じて適切です。 また、プロジェクトのどのコンポーネントがパフォーマンスの低下の原因であるかを理解することは、それほど簡単ではありません。

次に、 「仮想世界のサウンドエフェクト」の記事で、サウンドを操作する原理を学習します。

Source: https://habr.com/ru/post/J321784/


All Articles