Appearance
V1.6(2025.9/12)
変更内容
同一バージョンで以下の改変を行いました。
- 字幕表示を廃止し、Statusを視界上に常時表示
- 右手コントローラー/左手ハンドトラッキング操作に対応
- トークログを左手首の UI として追従表示
- シーン遷移マーカー:位置調整と視界追従を廃止
- TTS のオン/オフをデバッグUIから操作可能に
- システムプロンプト/ユーザープロンプトを外部ファイル(
prompts.yaml)から参照 - Statusログ確認機能を追加し、アプリのStatus出力をファイルに保存可能に
- app_config.yaml 外部設定に対応し、OpenAIモデル・TTSなどの初期設定を外部YAMLから変更可能に
- 応答待機UIを追加
- 推論モデルへのリクエスト対応
操作方法
基本操作は従来通りです。
| 操作 | 内容 |
|---|---|
| Bボタン | トークログの表示切替 |
| 右スティック押し込み | デバッグUIの表示切替 |
Statusログの取得
Statusログは Quest 実機の以下に保存されます。
/sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/status_log.txtローテーション済みの旧ログは status_log.txt.prev に保存されます。
1. 準備
- Android Platform Tools をインストール(
adb versionが実行できればOK) - Meta Quest を 開発者モード に設定し、PCとUSB接続
- ヘッドセット内で「USBデバッグを許可」
2. 保存先フォルダでコマンドプロンプトを開く
ログをコピーしたい自分のPC上の保存先フォルダをエクスプローラで開き、
- 空白部分を Shift + 右クリック → 「PowerShellウィンドウをここで開く」 または 「コマンドプロンプトをここで開く」
これで保存先がカレントディレクトリになります。
3. 接続確認
bash
adb devicesdevice と表示されれば接続成功。
4. ログを取得
保存先フォルダで以下をそのままコピペして実行します。
bash
adb pull "/sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/status_log.txt"- このフォルダに
status_log.txtがコピーされます。 - 旧ログも必要な場合は:
bash
adb pull "/sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/status_log.txt.prev"保存先パスは各自の環境に依存します。自分のPCで開いたフォルダがそのまま保存先になるよう、必ずそのフォルダでコマンドを実行してください。
prompts.yaml と app_config.yaml の配置
AI応答の挙動や初期設定は以下の2つの外部YAMLで管理します。
| ファイル | 役割 |
|---|---|
| prompts.yaml | AI応答用のシステム/ユーザープロンプト定義 |
| app_config.yaml | OpenAIモデル・RAG設定・TTS設定などアプリ全体の初期パラメータ |
以下のYamlファイルを任意の場所にダウンロードしてください。
配置先パス
Unityアプリから参照する実体パス:
/sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/files フォルダが無い場合は、アプリを一度起動すると自動生成されます。
A. adb を使う方法(推奨)
- Quest を接続し、USBデバッグを許可(Statusログ取得手順と同様)。
- ダウンロードした YAML ファイルを保存したフォルダで以下を実行します。
bash
adb push prompts.yaml /sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/
adb push app_config.yaml /sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/フルパスを指定する場合の例:
bash
adb push "C:\Users\<ユーザー名>\Downloads\app_config.yaml" /sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/- コピー確認:
bash
adb shell ls -l /sdcard/Android/data/com.Xseeds.PanoramaViewerDemo/files/prompts.yaml と app_config.yaml が表示されれば成功です。
- Quest 上でアプリを起動し、YAML未配置時に出ていた 「Yamlファイル未設定」 などのStatus表示が消えれば反映完了。
B. MTP(ドラッグ&ドロップ)方式
⚠ 必ず「Meta Link(Oculus Link)」をオフにしてください。
Link が ON(PCVRモード)だと MTP が無効化され、Quest を外部ストレージとして認識できません。
Quest を PC と USB 接続。
ヘッドセット内で 「ファイル転送(MTP)」 を選択。
PC のエクスプローラで
Android → data → com.Xseeds.PanoramaViewerDemo → filesを開く。prompts.yamlとapp_config.yamlをドラッグ&ドロップでコピー。
Windows 環境によっては Android/data が見えない場合があります。その場合は adb 方式を利用してください。
app_config.yaml の主な設定項目
| ブロック | 例 | 説明 |
|---|---|---|
| openai | base_url, model, temperature, model_options | OpenAI API接続先とモデル設定 |
| rag | enabled_default, max_results, vector_store_ids | RAG 検索の有効化と結果数 |
| tts | enabled_default, base_url, speed, format, voice_presets | TTS の初期設定 |
| log | enable_default | Statusログの標準出力有無 |
| recording | max_time, min_keep_alive_seconds, sound_wake_threshold | 音声録音関連設定 |
不要な項目は省略可能。設定値はアプリ起動時に読み込まれ、Inspectorの初期値より優先されます。
トラブルシュート
| 症状 | 対処 |
|---|---|
adb devices が unauthorized | ヘッドセット内で「USBデバッグを許可」を選択 |
files フォルダが無い | アプリを一度起動してフォルダを生成 |
MTPで Android/data が見えない | adb 方式を利用 |
| YAML設置後も「Yamlファイル未設定」表示 | ファイル名・パッケージ名を確認 |
| app_config 設定が反映されない | YAMLの構文やキー名の綴りを確認、アプリを再起動 |
推奨運用
- 開発・検証では adb 方式によるファイル転送とログ取得が最も確実で高速です。
- MTP方式を使う場合は Meta Link を必ずオフ にしてください。
app_config.yamlでモデルやTTS設定を変更すれば、ビルドを作り直さずに挙動を調整できます。
https://drive.google.com/file/d/1Ld-TjBzJ7gjb7dl5HvfdkAwWrNRTbpr2/view?usp=sharing
Author: 村井 | Source:
村井\uPano×MetaQuest3でパノラマビューアプリデモ開発\V1 6(2025 9 12) 26baba435ee780b6ba31cfbae5dc8382.md