プロジェクト

全般

プロフィール

機能 #409

完了

機能 #396: ゲーム内常駐ペット育成機能の追加

機能 #406: VRChatアバターの読み込み

Tauri 透過オーバーレイホスト(ローカル表示)

機能 #409: Tauri 透過オーバーレイホスト(ローカル表示)

エージェント ちゃん さんが12日前に追加. 12日前に更新.

ステータス:
完了
優先度:
通常
担当者:
対象バージョン:
開始日:
2026/06/24
期日:
進捗率:

100%

予定工数:

説明

背景

#406 決定記録に基づき、ローカルプレイ中に VRM アバターを常時表示するための薄い透過オーバーレイホストを Tauri(Rust + WebView2)で実装する。

作業内容

  • Tauri(Windows / WebView2)で最前面・透過・クリックスルー設定可能なウィンドウを作成。
  • beatoraja が配信するアバター URL(http://127.0.0.1:<port>/avatar/)をロードして表示。
  • 位置/サイズ/モニタ選択の設定と永続化。
  • beatoraja 配布への同梱方針(zip/msi との関係)を検討。
  • 同じ URL を OBS ブラウザソースとして使う手順も整理(配信併用)。

完了条件

  • ゲーム画面の上に透過でアバターが表示され、クリックをゲーム側に通す(クリックスルー)。

依存

「three-vrm アバター Web アプリ」子チケット。

エージェント ちゃん さんが12日前に更新 操作 #1

  • ステータス未着手 から 実装中 に変更
  • 進捗率0 から 10 に変更

実装に着手しました。

  • ブランチ: feature/409
  • 対応方針: Tauri 2(Rust + WebView2)で透過・最前面・クリックスルー切替可能なオーバーレイウィンドウを obs/avatar-overlay/ に新規作成し、beatoraja 配信の http://127.0.0.1:<port>/avatar/index.html を表示。位置/サイズ/モニタ選択/クリックスルー/最前面をアプリ内設定ウィンドウでライブ調整+config 永続化。Gradle の zip/msi 配布へオーバーレイ exe を同梱配線し、OBS ブラウザソース併用手順を docs 化。

エージェント ちゃん さんが12日前に更新 操作 #2

  • ステータス実装中 から 完了 に変更
  • 進捗率10 から 100 に変更

対応が完了しました。

概要

ローカルプレイ中に VRM アバターをゲーム画面上へ透過・最前面・クリックスルーで常時表示する Tauri ホストを obs/avatar-overlay/ に新規実装。あわせて実機確認で判明したアバター描画の不具合(後ろ姿・T ポーズ)を修正し、待機モーションを VRMA(.vrma) クリップで差し替え可能にした。

変更点

#409 Tauri 透過オーバーレイホスト(obs/avatar-overlay/

  • Tauri 2(Rust + WebView2)で透過・最前面・クリックスルー切替可能なオーバーレイウィンドウで http://127.0.0.1:<port>/avatar/index.html を表示。
  • アプリ内設定ウィンドウ(ポート/パス/モニタ/位置/サイズ/クリックスルー/最前面/表示)+JSON config 永続化、システムトレイ。
  • 純粋ロジックを src-tauri/src/lib.rs に分離し Rust 単体テスト 7 件。
  • Gradle zip/msi 双方へオーバーレイ exe を同梱配線。*.vrm/*.vrma・node_modules・avatar-overlay ソースを配布同梱から除外(VRM/VRMA 本体は同梱しない)。

#408 アバター描画修正(obs/avatar/

  • 後ろ姿バグ修正: 無条件の rotation.y = Math.PIVRMUtils.rotateVRM0(vrm) に置換。

  • T ポーズ解消: 待機ポーズ(腕を下ろし手を前で重ねる)を normalized ボーンで適用。

  • VRMA 対応: vendor を @pixiv/three-vrm-animation 3.1.6 込みで再バンドし、.vrmaAnimationMixer でループ再生(既定 ./idle.vrma?vrma= で上書き、不在/不正時は待機ポーズへフォールバック)。Unity humanoid アニメは UniVRM の VRM Animation エクスポータで .vrma 化して利用。

  • 主な変更ファイル: obs/avatar-overlay/一式・build.gradleobs/avatar/src/avatar.jsobs/avatar/src/main.jsobs/avatar/vendor/three-vrm-bundle.js ほか

テスト

  • cargo test(overlay 純粋ロジック) : 成功(7 件)
  • cargo build(Tauri アプリ全体) : 成功
  • .\gradlew.bat compileJava : 成功
  • .\gradlew.bat releaseWindows --dry-run : 成功(zip/msi 同梱配線の構成検証)
  • obs/avatar Playwright : 成功(4 件、再バンド後)

関連 MR

  • !86 (feature/409 → develop) マージ済み

他の形式にエクスポート: PDF Atom