Quest2のパススルー機能のサンプルを全部動かしてみた

# 初めに
Oculus Quest2の新機能のパススルーでできることについて確認するために、OculusIntegrationに組み込まれているサンプルシーンを動かしてみました。
# サンプルシーン
## 1. AugmentedObjects
- シーンにはオブジェクトが3つ配置されており、グリップボタンで握ることができます。
- 右側のオブジェクトのみ発光しています。

<iframe width="580" height="400" src="https://www.youtube.com/embed/WFoeWQcGHXU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>


## 2. Lighting
- Aボタンを押すとライトのON/OFFができます。
- ゲームオブジェクトとパススルー画像の両方にライトの影響を与えることができます。
- 深度が取れないため、パススルー画像に影を表示させることはできないようです。

<iframe width="560" height="315" src="https://www.youtube.com/embed/NL49fXe0vqk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## 3. OverlayPassthrough
- アプリにオーバーレイでパススルー画像を配置しているシーンで、ジョイスティックを動かすとオーバーレイ画像のアルファを調整することができます。

<iframe width="560" height="315" src="https://www.youtube.com/embed/sf0KPPCSSMo" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## 4.PassthroughHands
- シーン起動後にスライダー部分が非表示になる現象が発生し、唯一動作しませんでした…
- 現在動作しない原因調査中です。何か思い当たる方がいらっしゃいましたらコメントを頂けると幸いです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1336886/b1e8a3c1-fe68-1da3-894a-0bc4393fc8ec.png)

## 5.PassthroughStyles
- エッジのカラーが経時変化するサンプルシーンです。

<iframe width="560" height="315" src="https://www.youtube.com/embed/FU-Hl0r9U-o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
https://youtu.be/FU-Hl0r9U-o

## 6.SelectivePassthrough
- パススルー画像を表示する範囲を任意で設定することができるシーンです。
- 設定した範囲はリセットすることもできます。
- 動画ではキーボード・マウス・モニターを見えるように設定しています。

<iframe width="560" height="315" src="https://www.youtube.com/embed/ZtO_hI5wTUU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## 7.SurfaceProjectedPassthrough
- パススルー画像を表示するクアッドをAボタンで呼び出し、離すと配置することができます。
- キーボードとマウスが見えるようになったり、一部分のみパススルーを使いたい場合に使えそうです。

<iframe width="560" height="315" src="https://www.youtube.com/embed/JxMPu30f1Do" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## 8.Passthrough
- このシーンだけ配置されているディレクトリが異なる
- 複数種類のゲームオブジェクトが詰め合わせて配置されているシーン
    - SelectivePassthroughシーンの様なパススルー画像の範囲が設定できるPassthroughBrushController
    - Lightingシーンと同じライトのFlashlight
    - エッジのカラー・アルファ、輝度、コントラスト、ポスタライズを設定できるPassthroughStyler
    - 掴むことができるOculusロゴオブジェクト
    - SurfaceProjectedPassthroughと同じようなクアッド、使い方が分かり辛いが、PassthroughStylerの設定に影響されないようになっている。

<iframe width="560" height="315" src="https://www.youtube.com/embed/MMg9M8nh4bI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>


# その他
- 忘れがちだが、サンプルシーン実行時にも、``adb shell setprop debug.oculus.experimentalEnabled 1``のコマンドを事前に実行する必要がある。
- パススルーの設定方法等については、以前に以下の記事で説明しています。

https://qiita.com/kazuki_kuriyama/items/10e5384e482fb9005a9d