主にだんグラ、だんグラKids、ホログラス デュオ向けにAR/MR/VR用のアプリケーションをそれぞれ作るためのSDKです。
UnityでのAndroid/iOS開発に利用できるため、だんグラ等を使用しない場合でも、スマートフォン向けにAR/MR/VR用コンテンツを作成する際に使用することもできます。
MITライセンスになります。 Assets/Hologla/Lisence.txtをご確認ください。
Unity2019.x以降のバージョンを想定しています。
基本的にARKit、またはARCoreを利用してiOS、Android端末にて動作させることを想定しているため、
ARFoundation及びARKit、ARCore等のプラグインを使用します(PackageManager設定にて設定しています)。
現在動作確認している最新バージョンは4.2.7です。
また、動作確認には対応している端末が必要です。
iPhone SE、iPhone 6s以降の端末
対応端末一覧は以下ページの下部参照
https://www.apple.com/jp/augmented-reality/
Android 7.0以降の対応端末
対応端末一覧は以下ページの下部参照
https://developers.google.com/ar/devices
-
Unityプロジェクトを作成、または既存のプロジェクトを開いた後にPackageManagerよりAR Foundationをインストールします。
その後、必要に応じて、ARKit XR Plugin、ARCore XR Pluginをそれぞれインストールします。
(iOSのみであれば、ARKit XR Pluginのみ、Androidのみであれば、ARCore XR Pluginのみのインストールで問題ありません。) -
UnityのProject SettingsからXR Plug-in Managementの項目を開きます。
必要に応じて、iOSのタブのARKitのチェックボックス、AndroidのタブのARCoreのチェックボックスにチェックを入れます。
(iOS、Andoridのどちらか片方しか利用しない場合は、利用する方のみチェックを入れる形でも問題ありません。) -
PackageManagerでの設定完了後、本SDKのunitypackageをインポートします。
-
Unityの上部メニューの[Hologla]から[Initialize Project]と選択し、実行します。
ここまででプロジェクトの設定は完了です。 -
作業をするシーンを作成、または開いたら、 Unityの上部メニューの[Hologla]から[Initialize Scene]を選択、実行してシーン用の設定を実行します。
以上の設定でプロジェクトの共通設定と、シーン内の画面表示、入力関連のセットアップは完了となります。
※Player SettingsのOther SettingsのAuto Graphics APIにチェックが入っている場合は外す必要があります。
(現在ARCoreではVulkanが利用できないため、明示的に利用しない設定にする必要があります。)
- HologlaCameraParent
だんグラの表示に関する制御を行っています。
HologlaCameraManagerコンポーネントより、AR/MR/VR、1眼、2眼等の切り替えの設定や端末サイズ対応用の設定が行えます。
以下インスペクター上での項目の概要
| インスペクター上での項目名 | 概要 |
|---|---|
| CurrentViewMode | AR/MR/VRモードの設定 |
| CurrentEyeMode | 1眼/2眼モードの設定 |
| VrBackgroundLayer | VRモード時の背景用にVRモード時のみに表示するLayerの設定 |
| VrBackgroundObjList | VRモード時の背景用にVRモード時のみに表示するオブジェクトリストの設定 |
| VrClearFlag | VRモード時のUnityのカメラのClearFlagsの設定 |
| InterpupillaryDistance | 瞳孔間距離の設定 |
| ArMrCollisionObjList | AR/MRモード時のみ有効にしたい現実ベースのコリジョンを持ったオブジェクトを設定する |
| CurrentViewSize | 端末サイズ対応用の表示領域サイズの設定 |
| NearClippingPlane | UnityのカメラのClippingPlanesのNearの設定 |
| FarClippingPlane | UnityのカメラのClippingPlanesのFarの設定 |
| ArBackgroundMaterial | ARモード時に端末のカメラの映像を映すために使用するマテリアルの指定 |
- HologlaInput
だんグラの入力の管理をしています。
左ボタン、右ボタンそれぞれの押下や同時押しを検出できます。
HologlaInputオブジェクトのOnPressLeftAndRightに左右のボタンを同時押しした際のイベント、
LeftButtonオブジェクトのOnClickに左ボタンをクリックした際のイベント、
RightButtonオブジェクトのOnClickに右ボタンをクリックした際のイベント
をそれぞれ設定することができるようになっています。
- HologlaCameraManager
カメラに関する設定/制御を統括、管理する - GazeInput
視線(頭の向き)と距離に対応したカーソル位置の制御と衝突判定を行う - HologlaInput
左右のボタンによる入力の管理を行う - EditorInputController
エディタ上での確認用にキー入力によって、左右ボタンの入力を疑似的に呼び出す機能を持つ - GazeInteractive
視線(頭の向き)に応じたカーソルを経由した入力を受け付け、イベント呼び出しを行う - LaunchScene
設定によってコンテンツ本編のシーンとメニュー用のシーン、どちらにシーン遷移するかを判別し、遷移を行う
iPhoneでの画面サイズ設定は以下の対応表の通りとなっています。
| アプリ側の画面サイズ設定 | 端末の画面サイズ | iPhoneのバージョン |
|---|---|---|
| サイズ1 | 4.7インチ | iPhone 6s iPhone 7 iPhone 8 iPhone SE 2 iPhone SE 3 |
| サイズ2 | 5.4インチ、5.5インチ | iPhone 12 mini iPhone 6s Plus iPhone 7 Plus iPhone 8 Plus |
| サイズ3 | 5.8インチ | iPhone X iPhone XS iPhone 11 Pro |
| サイズ4 | 6.1インチ | iPhone XR iPhone 11 iPhone 12 iPhone 12 Pro iPhone 13 iPhone 13 Pro iPhone 14 iPhone 14 Pro iPhone 15 iPhone 15 Pro |
| サイズ5 | 6.5インチ | iPhone XS Max iPhone 11 Pro Max |
| サイズ6 | 6.7インチ | iPhone 12 Pro Max iPhone 13 Pro Max iPhone 14 Plus iPhone 14 Pro Max iPhone 15 Plus iPhone 15 Pro Max |