About
Unity Manualに記載がある'Feature samples'について、各項目が何を行っているのかをまとめました。
まとめ
- 'Feature samples'のうち、下図の赤枠にある4つの機能について確認しました。
- アプリにおいては最初の4ボタンが該当します。
- 単純なビルドでは動作が確認できないものが何点かありました。後日追加確認する予定です。
- Camera > Camera Grain
- Bounding box detection
本編
Simple AR
検出した平面および特徴点の可視化と、タップ位置にCubeを配置するシーンとなっています。
Pause / Resumeで画面の一時停止・再開ができ、Resetで検出情報を消去できます。
Camera
カメラ設定に関する各動作サンプルがさらに細分化されています。
CPU Images
ビデオシースルーARで利用するカメラ映像に加え、深度バッファやステンシルバッファ、画像処理のためにテクスチャをCPUへ転送するコードのサンプルのようです。
通常のカメラ映像に加え、深度バッファ映像やAR向けに変換される前のカメラ映像が描画されているように思います。
Basic Light Estimation
基本的な光推定にかかわるシーンで、カメラが取り込んだ明るさ情報を表示するサンプルとなっているようです。
明るさに応じて画面中央に描画される島の明るさが変わると思ったのですが、あまりそのようには見えませんでした。
| 屋内 | カメラを青シートで覆った状態 |
|---|---|
![]() |
![]() |
HDR Light Estimation
より詳細な照明情報を取得し表示するサンプルとなっています。また実際に推定された情報をもとにシーン内の光源が変化することが確認できました。
| 室内光直下 | 机の下 |
|---|---|
![]() |
![]() |
Background Rendering Order
オクルージョンのサンプルで、推定された現実世界の深度情報をもとに描画される島の一部が省略されます。
平面ではなく深度情報をもとにしているため反映速度が遅いですが、一方で平面よりも精度よくオクルージョンがかかります。
上の画像における赤枠で囲った箇所はオクルージョン無効の場合は雲、風車が描画されます。このサンプルでは壁よりも奥だと判定され描画が省略されています。
Camera Grain
カメラのわずかなちらつきをARオブジェクトに適用するシーンのようです。ただしiPhone 16であっても正常に動作しませんでした。描画設定が何かしらの影響を与えていると思われるので、追加調査する予定です。
Exif Data
露光・シャッタースピード・F値などのカメラの物理的な情報を表示するサンプルです。
EXIFタグの値が画面上に表示されます。
Image Stabilization
ARCore専用パラメータで、画像安定化機能のオンとオフを切り替えられるようなのですが、手元の環境では違いがわかりませんでした。
Camera Torch Mode
サポートされている端末の場合、画面下のoffとなっているドロップダウンをonにすることでライトが点灯します。
Plane detection
平面検出系のサンプルがさらに3つに細分化されています。
Toggle Plane Detection
基本的な平面検出機能のサンプルです。検出した領域と特徴点が描画されるほか、タップ位置に赤いCubeが出現します。
Plane Masking
検出した平面でオクルージョンをかけるサンプルです。画面をタップすると複数のCubeが出現しますが、検出平面との前後関係で描画が省略されます。
分かりにくいのですが、上段のCubeはすべて描画されている一方、下段のCubeは半分ほど描画が省略されています。
Plane Detection Mode
水平面と垂直面の検出を行うサンプルです。対応するトグルをONにすると検出が行われ、OFFにすると検出は停止します。OFFにしてもこれまでの検出情報は消えず、情報の更新のみが止まるため、検出済みの情報は引き続き有効です(端末を動かしても、検出した扉や床の上の仮想オブジェクトは移動せず固定されたままになります)。
Bounding box detection
矩形領域が検出できそうなのですが、動作を確認できませんでした。追ってシーン内を確認する予定です。
















