Warudo
このページはWARUDOでMingToonキャラクターを使う方のためのものです。 深度供給プラグインのインストールと、モッドビルドの確認を扱います。
基準バージョン
| 項目 | 値 |
|---|---|
| Unity | 2021.3.45f2 |
| WARUDO Mod SDK | 0.14.3.10 |
| レンダーパイプライン | Built-in (BRP) |
VRChatはUnity 2022.3.22f1、WARUDOは2021.3.45f2を使います。対象ごとにプロジェクトを分けてください。
カメラ深度のインストール — WARUDO Depth Bridge
デプスリムライト・デプスシャドウ・インナーアウトライン・SSAOには、WARUDOのカメラの深度テクスチャが必要です。
パッケージには、その深度を供給する独立プラグインのソースが入っています。
これはキャラクターではなくWARUDO本体にインストールします
このファイルは、WARUDOアプリケーションのPlaygroundで動くグローバルプラグインです。 キャラクターのモッドフォルダーに入れたり、プレハブにコンポーネントとして追加したりしないでください。
インストール
- Unityプロジェクトで
Assets/StudioRaming/MingToon/Docs/Warudo/MingToonWarudoDepthBridge.cs.txtを探します。 - このファイルをWARUDOのインストールフォルダーの
Warudo_Data/StreamingAssets/Playgroundにコピーします。 - ファイル名末尾の
.txtを削除してMingToonWarudoDepthBridge.csにします。 - WARUDOを再起動し、Consoleで
[MingToon Warudo Depth Bridge] installedのログを確認します。
プラグイン一覧に MingToon Warudo Depth Bridge が表示されれば成功です。
何を供給するのか
プラグインは描画の直前ごとに、アクティブなGameカメラを確認します。
- 各カメラに深度テクスチャを要求します。
- 中央・左目・右目の視点行列をシェーダーのグローバル値として渡します。
- メイン画面だけでなく、アクティブなSpout・NDI・トランジションカメラもカメラごとに処理します。
- カメラが切り替わっても1つをキャッシュせず、実際に描画しているカメラを使います。
プラグインはMingToonのランタイムアセンブリに依存しません。そのため独立したファイルとして提供しています。
症状で確認する
| 症状 | 確認すること |
|---|---|
| 深度エフェクトがすべて出ない | Playgroundのパス、 .cs 拡張子、 installed ログ |
| メイン画面は正常なのにSpout・NDIだけ違う | その出力カメラの depth enabled for camera= ログ |
| ノーマルアウトラインだけ見えて内側の線がない | ノーマルアウトラインに深度は不要です。まずBridgeが読み込まれているか |
WARUDOモッドのビルド
Warudo > Build Mod を実行すると、MingToonのビルドフックが自動最適化をかけます。
Unityの一般的なビルドコールバックではなく、UModのprocessor経路を使います。
処理の範囲
- UModが書き出すGameObjectからビルドルートを探し、そのキャラクターだけを最適化します。
- 生成したシェーダーとテクスチャをUModのビルドアセット一覧に追加します。
- ビルドが終了または失敗したら、オーサリング用マテリアルを復元します。
- 書き出すルートを判別できない場合は、読み込まれているシーンのMingToonマテリアルにフォールバックし、警告を残します。
確認するログ
| ログ | 意味 |
|---|---|
[MingToon] Warudo mod build processor entered | フックが実行されました |
[MingToon] Applied auto optimize and registered N generated assets. | 最適化がかかりました |
[MingToon] Restored authored materials. | オーサリング状態に戻りました |
[MingToon] Could not restore authored materials. | 復元に失敗しました。このビルドは使わないでください |
WARUDOの書き出しもビルド時の自動最適化を使います。baked マテリアルアセットそのものが必要なときにだけ手動Bakeを使ってください。
深度ライト
WARUDOのビルドでも、深度エフェクトを使う場合は深度ライトを一緒に載せます。
MingToonマネージャーの ビルド時に深度ライトを削除 で強制的に除外できます。 → VRChat深度ライト
照明の違い
- VRCライトボリューム(テスト用) はVRChatのワールド用です。WARUDOではオフにして、UnityのLight Probeを使ってください。
- Built-inのポイント・スポットの追加光はForwardAddパスで入ってきます。
- 追加光が強い場合は 追加ライト受信量 と 追加ライト強度 で調整してください。
- カメラを複数使う場合は、出力ごとに深度エフェクトと透明のソートを個別に確認してください。
WARUDOのBuilt-inでは、追加光が作る影の内部反射にフィルターが適用されません。 詳しい条件は リムリファレンス を見てください。
書き出しのチェックリスト
- Unity 2021.3.45f2とBuilt-inシェーダーを使います。
MingToonWarudoDepthBridge.csがPlaygroundにインストールされています。Warudo > Build ModのConsoleに最適化・復元のエラーがありません。- メイン画面と実際の配信カメラで深度エフェクトを確認します。
- シーンの照明を制御しにくい場合は ベースカラー保持 と 最終最小明るさ を調整します。