By, smartwatches 19/12/2022

Executing applications with Oculus Quest2 using EC2 and Nice DCV, building development environment | Amazon Web Services Blog

This article is translated by Enabling Quest 2 AR/VR on EC2 with Nice DCV.

As AR/VR spreads, some companies are starting to provide AR/VR development environments, test environments, and execution environments that can be used in real time in the cloud.To meet these demand, AR/VR companies need to secure high -performance solutions for headset users.

AWS provides some ways to realize these solutions using infrastructure and services using HPC.One of them is the G4DN EC2 instance, the NICE DCV protocol, and the high -through network connection between customers and solutions.

This article describes how to build an architecture using high -performance EC2 instances to create solutions that use a lot of graphics such as developing, testing, and execution for Oculus Quest 2.When the setup is completed, the end user will wirelessly connect to the high -performance cloud instance to develop, test and execute AR/VR applications.

Overview of solutions

In this article, we will create a basic infrastructure to operate the solution.In accordance with the best practices, we will protect the connection to remote instances and at the same time, provide a simple setup method that can be launched within 1 or 2 hours.Note: This article does not explain the scale -out of solutions to satisfy large -scale demand, but may be added in the future.

walk through

The following walk -through provides information on the prerequisites and the steps required for creating AWS resources required for this solution.In addition, we will introduce the linked items for third -party items necessary to launch the AR/VR environment with AWS.

EC2とNICE DCVを使ったOculus Quest2でのアプリ実行、開発環境の構築 | Amazon Web Services ブログ

To carry out this walk -through, prepare the following:

Based on the above figure, create a basic VPC with a public subnet and an Internet gateway.A public IP for accessing the EC2 instance will be provided, and will explain how to lock and down the instance.For more information about the creation of VPC, see the following documentation:Https: // docs.AWS.Amazon.COM/VPC/Latest/Userguide/VPC-Getting-Started.html

  1. Amazon コンソールにログインして EC2 サービスにアクセスします
  2. [インスタンスを起動] をクリックします
    1. ステップ 1: Amazon マシンイメージ (AMI) を選択します
      1. 文字列「nice dcv」で検索します
      2. AWSMarketplaceを選択します
      3. 「NICE DCV for Windows (g4dn with NVIDIA gaming driver)」の横にある 選択 をクリックします
      4. 価格に関する情報が提示されるので、確認しContinueを選択します
    2. ステップ 2: インスタンスタイプを選択します
      1. 最低でも g4dn.2xlarge、もしくはそれ以上のインスタンスをお勧めします
    3. ステップ 3: インスタンスの詳細の設定します
      1. ネットワーク:インスタンスを起動する VPC を選択します。VPCを作成していない場合はデフォルトのVPCに追加してください
      2. サブネット: EC2 インスタンスを常駐させる作成済みのサブネットを選択します
      3. 自動割り当てパブリックIP:有効に設定します
    4. ステップ 4: ストレージを追加します
      1. ドロップダウンリストから、汎用 SSD (gp2) を選択します
      2. インストールするゲームやアプリケーションに応じて、必要と思われるサイズを設定します、本ユースケースでは1TBほどあれば安心です
    5. ステップ 5: タグを追加します
      1. 別のコストセンターに計上する必要があるなど場合など、何らかの理由でこのインスタンスを簡単に見つけることが必要な場合は、タグを追加すると効果的です。
    6. ステップ 6: セキュリティグループを構成します
      1. ステップ 1 から Windows AMI 用 NICE DCV を使用した場合のポートの確認とVirtual Desktop VR用のルールを追加します
        1. ポート 22 で TCP を使用した SSH と、ポート 3389 を使用した RDP over TCP の 2 つのルールが表示されます。これらは、必要に応じてインスタンスに接続するのに使用します
        2. Virtual Desktop VRを使用するので、次のルールを追加します
          1. ポート 38810 ~ 38840 を介したカスタム TCP およびカスタム UDPを追加します。必要に応じて「Virtual Desktop VR」と用途について説明を追加します
        3. NICE DCVでQUIC UDPを利用できるように設定します
          1. ポート 8443 経由で 2 つのルールをカスタム TCP とカスタム UDP として追加します。必要に応じて「NICE DCV QUIC」と用途について説明を追加します
        4. セキュリティ上の観点から、ソースは自分自身のパブリック IP アドレスにすることをお勧めします
          1. whatsmyip.com から自分のパブリップIPアドレスを調べます
          2. もしくは、ドロップダウンから マイ IPを選択します。
    7. ステップ 7: インスタンスを確認して起動します
      1. セットアップを確認し、[起動] を選択します
      2. セキュリティキーを作成します
        1. 覚えやすい場所に.pem をダウンロードしておきます
      3. インスタンスは約 10 分で起動し、稼働するはずです
  1. お使いの OS に基づいて、ローカルマシンに NICE DCV クライアントをダウンロードしてインストールします
    1. NICE DCV | Download をご参照ください。
  2. NICE DCV クライアントを開きます
    1. Connection Settings をクリックします
    2. Protocolタブを選択します
    3. Automaticが選択されているドロップダウンメニューをクリックし、QUIC (with Datagram Extension) に切り替えます
      1. TCP Port, UDP Portが 8443 に設定されていることを確認します
      2. OK をクリックします
  1. AWS コンソールの EC2 ダッシュボードに戻ります
    1. 先ほど起動したインスタンスを選択します
    2. 詳細セクションで、パブリック IPv4 アドレスもしくはDNSをコピーします
  2. ローカルマシンで NICE DCV クライアントを開きます
    1. コピーしたアドレスをホスト名/IP アドレスに貼り付けます
    2. Connect をクリックします
      1. 「Your connection is not secure」のプロンプトが表示される場合があります。Trust and Connectをクリックします
    3. User Name に「Administrator」と入力します
    4. Passwordに以下の手順から取得したパスワードを入力します
      1. EC2 インスタンスページに戻る
    5. インスタンスを選択
    6. 接続をクリックします
    7. RDP クライアントを選択します (RDP を使用しない場合でも)
    8. パスワードを取得 をクリックします
    9. 先ほどダウンロードした.pem を参照します
    10. パスワードの復号化をクリックします
    11. パスワードをコピーして NICE DCV クライアントに貼り付けます

Set a USB pass -through from local machines to remote instances.This allows remote instances to recognize the connection of the Oculus Link cable.

  1. ローカルクライアントマシンでの作業
    1. Quest 2 VR ヘッドセットをローカルマシンに接続する
    2. 指示に従って、ヘッドセットの USB filter stringを取得します 詳細はUsing USB Remotization – NICE DCVをご参照ください。
      1. Windows Client Installerを起動して、Drivers SectionからUSB device remotizationを選択し、Will be installed on local hard driveを選択する
      2. Quest2をローカルクライアントマシンに接続します
      3. C:\Program Files (x86)\NICE\DCV\Client\bin\ に移動し、 dcvusblist.exe を実行します。Quest2はあらかじめ起動しておいてください。
      4. Quest 2を選択し右クリック、Copy Filter Stringを押下してFilter Stringをコピーする
  2. EC2インスタンスでの作業
    1. 設定ファイルにFilter Stringを追加します。詳細はEnabling USB Remotization – NICE DCVをご参照ください。
      1. NICE DCVクライアントからEC2インスタンスに接続します
      2. EC2インスタンスの C:\Program Files\NICE\DCV\Server\conf\usb-devices.conf を好きなエディタで開き、Filter Stringを最終行に貼り付けます
      3. EC2インスタンスを再起動します
    2. 左上の設定ボタンを選択してQuest2をEC2インスタンスが認識できるようにします。
      1. 「Removable Devices」を選択します
      2. 必要に応じて、Quest2をオンに切り替えます

To make Oculus software installed correctly, you need to add a "wireless LAN service" function to the server manager.From there, you can install all other necessary items.

  1. 「Wireless LAN Service」機能を追加
    1. スタートメニューなどからServer Managerを起動 → Add roles and featuresを選択します
    2. FeaturesまでNextを押下し、Wireless LAN Service を選択します
    3. Next をクリックして最後に移動し、機能をインストールします
    4. インストールを完了するために、EC2 インスタンスを再起動します
  2. Oculus Linkソフトウェアのインストール:Setup Your Oculus: Quest, Quest 2, Link, Rift S & Rift | Oculus
  3. Virtual Desktop VR ソフトウェアのインストール:ホーム: Home | Virtual Desktop
    1. 設定にOculus/Facebookのユーザー名を追加してください
  4. Steam クライアントをインストールする:Steam, The Ultimate Online Game Platform
  5. クライアントから SteamVR をインストールします

Since the local client PC and EC2 instance are set up, connect to the EC2 instance from the Quest 2 headset via the VR Desktop application.

  1. ローカルマシンにインストールした NICE DCV アプリケーションを使用してインスタンスに接続します
  2. VR デスクトップストリーミングアプリケーションが実行されていることを確認します
  3. Quest 2 VR ヘッドセットを装着し、VR デスクトップを開きます
    1. 接続するコンピュータのリストに EC2 インスタンスが表示されます
      1. 表示されない場合は、EC2 インスタンスのデスクトップストリーマーに Oculus アカウントを追加したことを確認します
    2. Virtual Desktopは自動的に接続されるはずです。接続されない場合はEC2 インスタンスをクリックし、Connect をクリックします
  4. 接続したら、Steam/Steam VR を開いてヘッドセットで再生できます

Once you have confirmed the operation, we recommend that you do the following cleanups so that you will not be charged in the future.

Conclusion

In this article, we set up an EC2 instance in the AWS environment and explained how to execute an application using Oculus Quest2 and Oculus Link in a way that is cost -efficient and performing well.We hope that you can use it for development and tests based on the contents of this article.

About the author

SAM is a senior solution architect specializing in the game industry.Large -scale developers and publishers are supporting the next generation of functions on AWS.In particular, we are passionate about developers using AR and VR to build a deeper relationship with players.

Andy is an end user computing (EUC) solution architect with about 20 years of IT infrastructure and management experience.Appstream 2.We specialize in services such as 0 and Workspaces.Through AppStream and its base protocol, Nice DCV, we have been working on the requirements for corporate customers and its high performance computing.

The translation was in charge of Shimada of VR/AR/3D Prototyping Solution Architect.The original text is here.