カメラモデルの差し替え

VirtualLens2使用時に表示する3Dモデルの差し替えに必要な情報をまとめています。

VirtualLens2対応Prefabを利用する場合

利用したい3DモデルのパッケージにVirtualLens2対応のPrefabが含まれている場合はモデルデータ付属のドキュメントとセットアップガイドをご参照ください。 Prefab 中に VirtualLensOrigin および VirtualLensPreview という名前のオブジェクトが含まれる場合、そのPrefabはVirtualLens2に対応していると思われます。

簡易差し替え手順

ここではVirtualLens2用のPrefabや導入手順が用意されていない3Dモデルをカメラのように表示する手順について解説します。 また、Prefab化して他のアバターと共有したりセットアップ済みメッシュとして配布したい場合は下のより詳しい解説をご参照ください。

下準備

デフォルトのカメラモデルが存在する場合、ヒエラルキーから CompactCamera を削除しておきます。

テンプレート Prefab の配置

VirtualLens2/Prefabs/CameraSkeleton.prefab をシーンに追加します。

CameraSkeletonの配置

カスタムメッシュの配置

NonPreviewRoot の子として利用したいメッシュを入れます。 実際には VirtualLensOrigin の位置から撮影されるので、VirtualLensOrigin がレンズの中心などに来るように調整してください。 また、この時 VirtualLensOrigin から視線方向 (Z軸の正の方向) に 0.05m 以上離れたところに可視ポリゴンが入らないように注意してください。カメラメッシュの映り込みの原因となります。

メッシュオブジェクトの配置

プレビュー画面の位置調整

プレビュー画面およびタッチスクリーンとなる PreviewWrapper の位置とサイズを調整します。 この時、縦横比を維持するために Scale の各値 (x, y, z) として同じ値を設定するように注意してください。

プレビューオブジェクトの調整

アバター内での親子関係の修正

CameraSkeleton の位置を調整した後に連動させたいオブジェクトの子となるように移動させます。

アバターへの組み込み

設定の更新

VirtualLens Settings の Camera Object の項目を以下のように更新した後に “Apply” ボタンを押して設定を反映させます。

  • Root Object: CameraSkeleton
  • Non-Preview Root: NonPreviewRoot

なお、設定適用後にオブジェクトの位置を変更した場合、再度 “Apply” ボタンを押して設定を更新する必要があります。

設定の更新

より詳しい解説

基準オブジェクト

VirtualLens2では特定の名前を持つオブジェクトを基準として各種コンポーネントを自動生成します。 これらのオブジェクトを適切に用意することで独自の3Dモデルをカメラとして利用することができるようになります。 この章ではVirtualLens2同梱のカメラモデル (Assets/VirtualLens2/Prefabs/CompactCamera.prefab) を例に基準オブジェクトの配置について解説します。

VirtualLensOrigin

実際にキャプチャを行うカメラコンポーネント配置時の基準となるオブジェクトです。 このオブジェクトのZ軸正の方向が正面、Y軸正の方向が上となるようにカメラコンポーネントが生成されます。

VirtualLensOrigin

VirtualLensPreview

フォーカスポイント指定のためのインターフェース配置時の基準となるオブジェクトです。 このオブジェクトの姿勢とY方向のスケールをもとにタッチ判定用のカメラコンポーネントが生成されます。

なお、 CompactCamera.prefab ではプレビュー画面用の MeshRenderer も含まれていますが、これは必須ではありません。 別のオブジェクトに描画させたり、描画させないといった選択肢をとることもできます。

VirtualLensPreview

プレビュー用のマテリアル

プレビュー用画面を実装するためのマテリアルが Assets/VirtualLens2/Materials/VirtualLensPreview.mat として用意されています。 Quadなどの板ポリゴンに適用することでタッチ情報の表示も含むプレビュー画面を生成することができます。 利用例はパッケージに同梱されている CompactCamera.prefab の中身をご確認ください。

VirtualLens2 対応3Dモデルの配布について

VirtualLens2との併用を想定した3Dモデルを配布する場合、 CompactCamera.prefab のように上述の基準オブジェクトを含み、プレビュー画面のマテリアルとして VirtualLensPreview.mat を使用した Prefabを用意しておくことで、セットアップを簡略化することができるようになります。 モデルを配布・販売する場合にはそのようなPrefabの同梱もご検討ください。