前回の投稿で Quest 2 デバイスをターゲットとする最初の Unity プロジェクトの作成に成功したので、今度は Meta via Presence Platform によって提供される最も強力な機能セットの 1 つについて洞察していきます。
プレゼンス プラットフォームは、仮想現実環境で共有されたプレゼンスとインタラクションの感覚を生み出すように設計されています。 VR ヘッドセットを使用して、人々が没入型の仮想空間で接続し、対話し、交流できるようになります。
Meta のプレゼンス プラットフォームの特徴と機能は次のとおりです。
ご覧のとおり、Presence Platform はサブシステム/機能の包括的なセットであり、それぞれについて詳しく説明しますが、始めるにあたり、VR ゲーム開発の基本要件の 1 つであるハンド トラッキングから始めましょう。 、ハンド トラッキング ゲームのようなエクスペリエンスを構築して起動します。
完璧な出発点は、 oculus-samplesリポジトリによって提供されるUnity-FirstHandエクスペリエンスです。
繰り返しますが、開発環境のセットアップに関する以前の投稿を参照し、さまざまな依存関係がインストールされていることを確認してください。
Git LFS がインストールされていることを確認し、次のコマンドを実行します。
git lfs install
次に、「コード」を使用してリポジトリのクローンを作成し、Github デスクトップで開き、次のコマンドを実行します。
git clone https://github.com/oculus-samples/Unity-FirstHand.git
実際のプロジェクト ファイルはすべて [Assets] → [Project] にあります。このフォルダーには、Interaction SDK 自体を除く、サンプルを実行するためのすべてのスクリプトとアセットが含まれています。プロジェクトには、Interaction SDK を含む Oculus SDK v41 が含まれています。インタラクション SDK は、[Assets/Oculus/Interaction]{Assets/Oculus/Interaction) にあります。
必要な依存関係をすべてインストールし、Quest デバイスで実行するようにビルドを構成すると、エディターに上記のような内容が表示されます。
Mac を使用している場合は、[ファイル] → [ビルド設定] に移動します。
前回の投稿の指示に従ってデバイスを接続した場合、ビルド設定には以下の内容が表示されます。
[ビルドして実行] をクリックし、Unity がビルドするまで数分間待ち、アプリが接続された Quest デバイスにデプロイされるメッセージを待ちます。
この例を試してコンポーネントとスクリプトをカスタマイズして内部でどのように動作するかを学び、それを実行できるようにするには、Unity エディターのプロジェクト セクションに移動してプロジェクト ディレクトリ階層を展開することを強くお勧めします。
LazerProjectile をカスタマイズします。
public class LazerProjectile : ActiveStateObserver { [SerializeField] Transform _target; [SerializeField] GameObject _effect; [SerializeField] float _rayCastDelay = 0.5f; [SerializeField] float _fadeOutTime = 0.1f; [SerializeField] float _delayBetweenShots = 0.5f; [SerializeField] AudioTrigger _chargeUp; [SerializeField, Optional] AudioTrigger _chargeUpComplete; protected override void Update() { base.Update(); Vector3 endPos = Vector3.Lerp(_target.position, transform.position + transform.forward * 20, 5 * Time.deltaTime); _target.position = endPos; } //...... }
レイキャストの遅延を増やし、ヘッドセット上のアプリを置き換えてテストしてみましょう
float _rayCastDelay = 0.1f;
に
float _rayCastDelay = 0.5f;
仕組みは次のとおりです。
ご自身で試してみて、ハンド トラッキングを使用して何を構築したいかをお知らせください。