LoginSignup
1
1

More than 3 years have passed since last update.

【Unity】NRSDK1.3.0のInput-VirtualControllerシーンを読んでみる(Inputシーン編3/3)【Nreal】

Last updated at Posted at 2020-10-13

はじめに

Input-VirtualControllerシーンについて

スクリーンショット 2020-10-08 19.57.44.png

シーン構成

シーン構成
NRCameraRig
NRInput
Directional Light
TargetModelDisplayCtrl
[Tip:----------------------------]
[Drag " NRVirtualDisplayer" Prefab Here]
[Then Breake Prefab Instance And Make]
[Your Custom Virtual Controller. ]
CustomVirtualDisplayer

NRCameraRig、NRInput

Nrealに対応したカメラ、入力システム
別のサンプルシーンで読んでます。
NrealSDK1.3.0のHelloMRシーンを読んでみる

Directional Light

Unity製のライト。

TargetModelDisplayCtrl

[Tip:----------------------------]

このオブジェクト以下はTipを記載しているらしい。
読んでみよう。

Drag " NRVirtualDisplayer" Prefab Here
Then Breake Prefab Instance And Make
Your Custom Virtual Controller.

NRVirtualDisplayerのプレハブをHierarchyにドラッグして
カスタムの仮装コントローラーを作れるらしい
(既存のNRVirtualDisplayerに同期されてしまうので、プレハブ化を無効にするってことですね)

え、便利!!

もう少し理解するため、公式ページを覗いてみた。
以下Nreal公式リファレンス引用

Nreal電話コントローラーの優れた点の1つは、UIインターレースを簡単にカスタマイズできることです。Nreal電話コントローラーを使用する2つの方法は次のとおりです。

・デフォルトの方法 「NRInput」プレハブをシーンにドラッグするだけです。次に、デバイスでアプリを実行すると、デフォルトの仮想コントローラー( "NRVirtualDisplayer"プレハブ)が自動的にロードされます。3つの一般的なコントローラーボタン(トリガー、ホーム、アプリ)があります。この仮想コントローラーは、NrealLightコントローラーと非常によく似ています。

・カスタム方法 「NRInput」プレハブをシーンにドラッグします。次に、「NRVirtualDisplayer」プレハブをシーンにドラッグし、必要に応じて変更します。たとえば、アプリケーションに合わせて、いくつかの新しいボタンを追加したり、コントローラーUIのスタイルを変更したりします。

引用:https://developer.nreal.ai/develop/unity/customize-phone-controller

Nreal Lightでは、グラスにスマートフォンをコントローラーとして接続するので、それに使うようです。
デフォルトだと、2つのボタンとタッチ、ドラッグを検出する場所のみなので、
その他必要なUI等をカスタムできると、、、そういう話か。

CustomVirtualDisplayer

カスタムされたコントローラーを子に持つオブジェクト

スクリプト名 役割
NRVirtualDisplayer NRInputクラスのEmulateVirtualDisplayInEditorの結果によって、仮装コントローラーの表示を行なっていたり、タッチした座標の更新を行なっている。各ボタンの状態はMultiScreenControllerで管理して流している。プレハブ内にあるBaseControllerPanelがデフォルトのコントローラー
CustomVirtualControlerUI これがカスタムした仮装コントローラー。VirtualDisplayerの子にUIを配置することで、コントローラーを作ることができる。

サンプルシーンにあるカスタムコントローラーの例
スクリーンショット 2020-10-13 21.46.30.png

各色でNrealのロゴの色を変更
スライダーで大きさの変更
Resetボタンはそのままリセットって感じで。

簡易的ながら、UIを複数配置できるのはいいですね。

Nreal Developer Kit で実行してみた

ロゴが一つ浮かんでた。
S__647174.jpg

コントローラーを指でタッチしながら、黄色矢印方向に動かすとロゴが回転する仕組み
S__647173.jpg

S__647176.jpg

Developer Kitでは何も変化がないですね(NrealLight買うか、、

まとめ

UIの処理のみで仮装コントローラーが作れるのは大変ありがたいです!
とすると、Developer KitよりNreal Lightを買ったほうがより良いショートカットなどを作れて大変便利なのでは!?
NRVirtualDisplayerはUnityEditor上で確認できるのでDeveloper Kitでもよく使うことになると思います。

さいごに

NrealのInputが一通り理解できました。
最近(2020/09末)NRSDKが更新され、Inputで取得できる情報が追加されたようですね
(今後も増えていくのだろうか)
今後も更新を追いかけつつ、Nrealに関する記事を投稿していきたいと思います。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1