DressMev1.0.0
周りの人も操作できるサムネイル UI で、アバターを変更するギミックです。
1DressMe とは
アバターの前にサムネイルの一覧を出して、自分だけでなく周りの人もアバターを選べるようにします。選ばれたアバターに、その場で変わります。メニューを開いてアバターを探す手間がなくなり、フレンドに着るアバターを選んでもらうこともできます。
できること
フレンドに選んでもらえる
選択・決定・ページ送りは周りの人も同じ操作でできます。
サムネイルから選んでその場で着替え
登録したアバターがサムネイルで並び、触れて選ぶだけで変わります。
ドロップするだけで登録
アバターやフォルダをカタログにドロップすると、VRChat からアバター名称とサムネイルを取り込んで一覧に追加します。
しくみ
DressMe は「アバターに入れるギミック」と「PC で動かすアプリ(DressMe App)」の 2 つで動きます。使うときは DressMe App を起動しておく必要があります。周りの人に DressMe App は必要ありません。
2動作環境・同梱物
動作環境
| OS | Windows 10 / 11(64bit) |
| VRChat | PC 版(UI の操作は VR のみ) |
| Unity | Unity 2022.3(VRChat 推奨バージョン) |
| 必要なもの | VRChat SDK3 Avatars / Modular Avatar(NDMF を含む) |
| 動作確認 | VRChat SDK 3.10.4 / Modular Avatar 1.18.7 |
VRChat SDK・Modular Avatar は同梱していません。先にそれぞれ導入してください。DressMeApp.exe は .NET ランタイムを同梱しているため、.NET を別にインストールする必要はありません。
パフォーマンスランクへの影響
初期設定(1 ページ 16 マス・効果音あり・長押しのリングあり)の値です。設定や登録数で変わる値は括弧で書いています。
| Skinned Mesh Renderer | 1 |
| マテリアル | 1 |
| ポリゴン数 | 38〜74(ページ数で変わります。24 マスの場合:54〜90)(長押しのリングOFFの場合:2 減) |
| テクスチャ | 1 枚(大きさは登録数で変わります。例:16 件で 1024×1024px、256 件で 4096×4096px。インスペクターに表示されます) |
| PhysBone | 1 |
| Contact | Receiver 13(1 ページの場合:11)(触れて開閉OFFの場合:1 減)/Sender 1 |
| Constraint | 2(その場に固定OFF・長押しのリングOFFの場合:それぞれ 1 減) |
| Audio Source | 1(効果音OFFの場合:0) |
| FX レイヤー | 7(効果音OFF・長押しのリングOFFの場合:それぞれ 1 減) |
| Expression Parameters | 同期 9bit(同期しないパラメータ 6) |
同梱物
├ DressMe_1.0.0.unitypackage… Unity に入れるもの
├ DressMeApp/… PC で使うアプリ
│ ├ DressMeApp.exe… アプリ本体
│ └ DressMeApp.config.json… 設定ファイル
├ README.html… この説明書
├ LICENSE.txt… 利用規約
└ THIRD_PARTY_NOTICES.txt… 第三者のソフトウェアのライセンス
3セットアップ
1Unityunitypackage をインポートする
- アバターの Unity プロジェクトを開きます。
DressMe_1.0.0.unitypackageを Project ウィンドウにドラッグ&ドロップし、Import を押します。Assets/Kagyo/DressMeフォルダができれば完了です。
2Unityアバターに配置する
DressMe を配置すると、ゲーム内で使う UI(サムネイルの一覧・開閉 Contact)が追加されます(詳しくは使用方法を参照)。
- Hierarchy でアバター(VRC Avatar Descriptor のあるオブジェクト)を右クリックします。
- Kagyo > DressMe > DressMeを配置 を選びます。
アバター直下に DressMe が置かれます。UI は体の前、開閉 Contact は左手に、体格に合わせて自動で配置されます。
3Unityカタログを作る
カタログは切り替え先のアバターの一覧です。1 つのカタログをすべてのアバターで共有します。
- 配置した DressMe を選びます。
- インスペクターの 新しいカタログを作成 を押して、保存先を選びます(サムネイルも同じ場所に保存されます)。
%LOCALAPPDATA%\Kagyo\DressMe)に自動で作られます。
- カタログと対応表には、ブループリントIDとアバター名称が書かれています。他の人に渡さないでください(
DressMe.avatars.broken.jsonも同じです)。アバターや衣装を unitypackage にして渡すときは、カタログが入っていないか確認してください。 - UI のサムネイル画像はアバターに入るので、どんなアバターを登録しているかは見えます。見せたくないアバターは登録しないか、別の画像をサムネイルに指定してください。
- 対応表は手で編集しないでください(DressMe が正しく動かなくなります)。
- 対応表を消してしまったときや、別の PC に移ったときは、Unity でカタログを開いて 対応表を更新 を押すと作り直せます。
4Unityカタログにアバターを登録する
- + アバターをここにドロップして追加 の欄に、アバターの Prefab かシーン上のアバターをドロップします。複数まとめてドロップできます。
フォルダをドロップすると、中にあるアバターをまとめて追加します。 - アップロード済みのアバターは、VRChat からアバター名称とサムネイルが自動で取り込まれ、一覧に追加されます。
- アバター名称とサムネイルの取得には、VRChat SDK のコントロールパネルでのログインが必要です。取得できるのは、アップロード済みの自分のアバターだけです。
- まだアップロードしていないアバターも登録できます。一覧には「未アップロード」と表示され、サムネイルは灰色のマスになります(サムネイル欄に画像を指定することもできます)。シーン上のアバターはシーンを保存してからドロップしてください。
- 未アップロードのアバターは、アップロードしたあとにカタログを開く(または 対応表を更新 を押す)と登録が済みます。登録が済むまでは、VRChat で選んでも切り替わりません。
- 一覧の上から順に UI に並びます。ドラッグで並べ替えられます。
5Unity位置を確認してアップロードする
インスペクターの「プレビュー」で Scene にプレビュー表示 をオンにすると、ゲーム内と同じ見た目の UI が Scene に表示されます。「表示するページ」の -/+ でページを切り替えられます。
| 調整したいもの | 操作 |
|---|---|
| UI の位置・向き・大きさ | UI の位置を調整 を押すと UIRoot が選択されるので、Scene で動かします。拡大縮小すると UI 全体の大きさが変わります。 |
| 開閉 Contact の位置と大きさ | 開閉 Contact の位置を調整 を押すと ToggleAnchor が選択されるので、Scene で動かします。緑の球が触れて反応する範囲で、球のふちの点をドラッグすると大きさも変えられます。 |
確認できたら、いつもどおりアバターをアップロードします。
- 切り替え先のアバターでも UI を使うには、そのアバターにも DressMe を配置してアップロードしてください。
- カタログを編集したら、そのカタログを使っているアバターをアップロードし直してください。
6Unity見た目・開閉のしかたを変える(任意)
DressMe のインスペクターで変更できます(インスペクターと同じ順に並んでいます)。通常は初期値のままで大丈夫です。変更したらアバターをアップロードし直してください。
インスペクター全体の画面
UI の位置
| 項目 | 内容 | 初期値 |
|---|---|---|
| UI が付いていくボーン | UI を付けるボーン。選ぶと、体格に合わせて UI がそのボーンの前に移動します | Chest |
| 開いている間はその場に固定 | オンにすると、開いた位置に UI が留まります。オフにすると、開いている間も体に付いていきます | オン |
開閉
| 項目 | 内容 | 初期値 |
|---|---|---|
| 触れて開閉する | オフにすると、Expression Menu の「DressMe_Open」だけで開閉します(下の項目は表示されなくなります) | オン |
| ハンドサイン | 開閉に使うハンドサイン。「指定なし」にすると触れるだけで開閉します(誤って開きやすくなります) | ピース |
| 触れ続ける秒数 | 開閉に必要な、触れ続ける時間。長くすると誤って開きにくくなります | 1 秒 |
| 長押しのリングを表示 | 触れている間、そばにリングを出します(自分にだけ見えます)。オフにすると少し軽くなります | オン |
| 開閉 Contact が付いていくボーン | 開閉 Contact を付けるボーン。選ぶと、そのボーンの位置に移動します | Left Hand |
| 開閉 Contact の大きさ (cm) | 触れて反応する範囲(Scene の緑の球)の半径。小さくすると誤って開きにくくなります | 4cm |
Expression Menu
| 項目 | 内容 | 初期値 |
|---|---|---|
| Expression Menu の設定 | 押すと DressMeMenu が選択されます。MA Menu Installer の「インストール先」でサブメニューの中に置けます(空欄ならメニューの一番上)。メニューに表示される名前はその中の DressMe_Open のオブジェクト名で、アイコンは DressMe_Open の MA Menu Item で変えられます | — |
レイアウトとサイズ
| 項目 | 内容 | 初期値 |
|---|---|---|
| 1ページのマス数 | 16マス(余白あり)/24マス | 16マス |
| サムネイルの大きさ (m) | サムネイル 1 枚の大きさ。UI 全体の大きさもこれに合わせて変わります | 0.07 |
| サムネイルの間隔 | サムネイル同士の間隔 | 0.43 |
| 決定ボタンの大きさ | 中央の決定ボタンの大きさ(ほかのマスの 1〜2 倍) | 1.5 |
| サムネイルの画質 | 256×256px(標準)/128×128px(軽量。メモリが約 1/4) | 256×256px |
見た目
| 項目 | 内容 | 初期値 |
|---|---|---|
| スタイル | シンプル/サイバー/かわいい。選ぶと、アクセント色と背景色もそのスタイルのおすすめに変わります | シンプル |
| アクセント色 | 選択中のマス・決定ボタン・ページの印・矢印などの色 | スタイルに合わせる |
| 背景色 | パネルの色 | スタイルに合わせる |
効果音
| 項目 | 内容 | 初期値 |
|---|---|---|
| 効果音を鳴らす | 触れた・選んだ・決定した・ページを送った・閉じたときに音を鳴らします。周りの人にも聞こえます(約 4m まで) | オン |
| 音量 | 効果音の大きさ | 0.5 |
その他
| 項目 | 内容 | 初期値 |
|---|---|---|
| パラメータ接頭辞 | ほかのギミックとパラメータ名がぶつかるときだけ変更します。変更した場合は、DressMe App の基本タブの「パラメータ接頭辞」も同じ値にしてください | DressMe |
7PCDressMe App を準備する
DressMeAppフォルダを、書き込みできる好きな場所に置きます(例:ドキュメント)。
Program Files の中は設定やログを保存できないため避けてください。DressMeApp.exeをダブルクリックすると、設定画面が開き、タスクトレイにアイコンが出ます。
DressMeApp.exe は、中身が書き換えられているおそれがあります。本物か確かめたいときは、PowerShell で Get-FileHash DressMeApp.exe を実行し、表示された値が BOOTH の商品ページに載せている SHA-256 と同じかを見比べてください。8VRChatOSC を有効にして確認する
- VRChat で Action Menu を開き、Options > OSC > Enabled をオンにします。
- DressMe 入りのアバターに着替えて、DressMe App の設定画面の上部が VRChat:接続中、アバター:DressMe あり になっていることを確認します。
4使用方法
1ゲーム内での使い方
UI を開く・閉じる
次のどちらかで開閉します。開閉できるのは自分だけです。
- 右手をピースにしてから、その指先で左手の開閉 Contact に触れ続ける
- Expression Menu の DressMe_Open を押す
- リングは自分にだけ見えます。
- ハンドサイン・触れ続ける秒数・付ける場所は、Unity のインスペクターの「開閉」で変えられます。Expression Menu だけで開閉する設定にもできます(→ 開閉の設定)。
UI の各部
アバターを選んで変わる
人差し指でサムネイルに触れ、少しとどめると「選択中」になり、決定ボタンにそのアバターが表示されます。決定ボタンに約 0.3 秒触れると決定し、アバターが変わります。
- 別のサムネイルに触れると選択が変わります。ページを送ると選択は解除されます。
- 変更したあとしばらくは、次の選択を受け付けません(時間は DressMe App の基本タブの「連打防止の時間」で変えられます)。
- 変更に失敗したときは、PC に通知が出ます。
周りの人に選んでもらう
UI を開いている間は、選択・決定・◀ ▶ を周りの人も同じ操作でできます。前からも後ろからも操作できます。
2DressMe App について
DressMe App は DressMe を使うときに PC で起動しておくアプリです。VRChat と OSC でやり取りして、UI で決定されたアバターを受け取り、そのアバターに変更します。VRChat との接続状態の確認や、連打防止の時間などの設定も DressMe App で行います。
タスクトレイのアイコン
起動すると、画面右下の通知領域(^ の中に隠れていることがあります)にアイコンが出ます。色で状態がわかります。右クリックメニューの一番上にも、今の状態が出ます。
| 操作 | 動作 |
|---|---|
| アイコンをダブルクリック | 設定画面を開く(右クリック → 設定を開く でも開けます) |
| 右クリック → 終了 | DressMe App を終了します |
| 設定画面の × / 最小化 | 終了せず、タスクトレイに戻ります |
| DressMeApp.exe をもう一度起動 | 二重には起動せず、設定画面が開きます |
設定画面の見かた
設定を変えたら 適用 を押すとすぐ反映され、保存されます。入力に誤りがあると、その欄の下に赤字で理由が出て、タブに ⚠ が付きます。
| 場所 | 内容 |
|---|---|
| 上部の状態 |
VRChat:接続中 / 起動待ち / エラー(マウスを乗せると理由が出ます) アバター:DressMe あり(正常)/ DressMe なし(このアバターには入っていません)/ 接頭辞が違います(「設定をこれに合わせる」を押すと、アバター側の接頭辞に合わせて適用します) 最後の切替:最後に行った切り替えの結果(マウスを乗せると詳細が出ます) |
| タブ | 基本 / ログ |
| 下部のボタン | 適用:反映して保存 / 変更を破棄:適用前の入力を元に戻す / 既定に戻す:入力欄を初期値にする |
基本タブ
| 項目 | 内容 | 初期値 |
|---|---|---|
| アバターの変更を有効にする | オフにすると、選ばれてもアバターを変更しません | オン |
| パラメータ接頭辞 | Unity の「パラメータ接頭辞」と同じ値にします | DressMe |
| 連打防止の時間 | アバターを変えたあと、次の選択を受け付けない時間 | 3 秒 |
| 通知 | 切り替えに失敗したら、タスクトレイから通知します | オン |
| 起動 | Windows の起動時に DressMe App を起動する(タスクトレイに格納した状態で起動) | オフ |
| 設定ファイル | 設定ファイルの場所。「フォルダを開く」で開けます | — |
「詳細設定」は通常は変更する必要はありません。VRChat に接続できないときに見直してください。
| 詳細設定 | 内容 | 初期値 |
|---|---|---|
| OSCQuery を使う | オンのとき、他の OSC アプリと同時に使えます(受信ポートは自動で決まります) | オン |
| 受信ポート | 「OSCQuery を使う」がオフのときに使うポート | 9001 |
| 送信ポート | VRChat の受信ポートが自動でわからないときに使うポート | 9000 |
| 読み取りの待ち時間 | 選ばれたアバターを VRChat から読み取るときの待ち時間 | 250ms |
| 変更完了の待ち時間 | この時間を過ぎてもアバターが変わらなければ、失敗として通知します | 15 秒 |
| 再接続 | VRChat が見つからないときに試してください | — |
ログタブ
動作の記録が表示されます。うまく動かないときの確認に使ってください。ログは DressMeApp フォルダの DressMeApp.log にも保存されます。
| 項目 | 内容 | 初期値 |
|---|---|---|
| 詳細ログ | UI の操作で届いた値の変化も表示します(アプリを終了すると元に戻ります) | オフ |
| 動作確認モード | アバターを変えずに、ログに記録するだけにします。UI の操作が届いているか確かめたいときに使います(アプリを終了すると元に戻ります) | オフ |
| ログをコピー / フォルダを開く | ログをコピーします / ログと設定ファイルがあるフォルダを開きます | — |
設定ファイル(DressMeApp.config.json)を直接編集したい
書き方に誤りがある場合は読み込まれず、直前の設定で動作を続け、設定画面とログに理由が表示されます。
設定ファイルを消してしまった場合は、DressMeApp.exe を起動すると初期値の設定ファイルが作り直されます。
5困ったときは
UI で選んでも、アバターが変わらない
- DressMe App が起動していて、タスクトレイのアイコンが緑か
- DressMe App の設定画面で アバター が「DressMe あり」か(「接頭辞が違います」なら「設定をこれに合わせる」を押す)
- VRChat の Action Menu で Options > OSC が Enabled か
- Unity のカタログで、登録したアバターに警告が出ていないか
デスクトップモードで UI を操作できない
「切り替わりませんでした。使用権のないアバター…」と通知が出る
「まだアップロードされていないアバターです」と出る
「対応表にないアバターです」「対応表を読めませんでした」と出る
%LOCALAPPDATA%\Kagyo\DressMe\DressMe.avatars.json)をこの PC の同じ場所にコピーしてください。「DressMe で使えないアバター」と出る
「対応表とアバターが合いません」と出る
「対応表を更新できませんでした」「対応表が壊れています」と出る
DressMe.avatars.broken.json として残ります)。複数のプロジェクトで DressMe を使っている場合は、ほかのプロジェクトでもカタログを開いて 対応表を更新 を押してください。アップロード中に出た場合も、アップロードはそのまま続きます。終わったら 対応表を更新 を押してください。
タスクトレイのアイコンが青灰のまま変わらない
それでも変わらない場合は、DressMe App の「詳細設定」の OSCQuery を使う をオフにして 適用 してみてください(この場合、9001 番ポートを使う他の OSC アプリとは同時に使えません)。
「受信ポート 9001 を開けません」と出る(アイコンが赤い)
意図せず UI が開いてしまう
- 「ハンドサイン」を、普段あまり使わないものにする(「指定なし」は避ける)
- 「触れ続ける秒数」を長くする、「開閉 Contact の大きさ」を小さくする
- 「開閉 Contact が付いていくボーン」を、手が当たりにくい場所にする
- Expression Menu だけで開閉したい場合は、「触れて開閉する」をオフにする
アバターを変えたら UI が出なくなった
新しく登録したアバターが UI に出ない
アバターを追加できない・サムネイルを取得できない
アバターをアップロードしても「未アップロード」のまま
それでも登録が済まない場合(アバターを作り直した など)は、アップロード済みのアバターをカタログの「未アップロード」の行にドロップすると、その行に登録できます。
カタログに「対応表が最新でない可能性があります」と出る
DressMe App に古いアバター名が表示される
ほかのアバターにも同じカタログを使いたい
Assets/Kagyo/DressMe/DressMe.prefab のカタログ欄にも同じカタログを設定しておくと、次から配置するだけで入ります。メニューを使わずに Prefab を手動で置きたい
別の PC で使いたい・PC を買い替える
%LOCALAPPDATA%\Kagyo\DressMe\DressMe.avatars.json)を新しい PC の同じ場所にコピーしてください。PC の買い替えや Windows の再インストールの前にバックアップしておくと、コピーするだけでそのまま使えます。コピーできなかった場合は、新しい PC の Unity でカタログを開いて 対応表を更新 を押すと作り直せます。
設定画面・タスクトレイのアイコンが見つからない
DressMeApp.exe をもう一度ダブルクリックすると、起動中の DressMe App の設定画面が開きます。設定が保存されない、ログが出ない
DressMeApp フォルダが書き込みできない場所(Program Files など)に置かれています。ドキュメントなどに移動してください。6アップデート・アンインストール
アップデート
- 作業前に、必ず Unity プロジェクトのバックアップを取ります。
- 新しい unitypackage をインポートします(上書きで大丈夫です)。
- DressMe App を終了してから(アイコンを右クリック → 終了)、
DressMeApp.exeを新しいものに置き換えます。DressMeApp.config.jsonは、更新履歴に指示がない限りそのまま使えます。 - DressMe を入れているアバターをアップロードし直します。配置済みの DressMe やカタログはそのまま使えます。
アンインストール
Unity
- アバターから DressMe オブジェクトを削除します。
Assets/Kagyo/DressMeを削除します。不要であれば、カタログとサムネイルのフォルダも削除します。
DressMe App
- 「Windows の起動時に DressMe App を起動する」をオンにしていた場合は、設定画面(基本タブ)でオフにして 適用 を押します。
- DressMe App を終了し(アイコンを右クリック → 終了)、
DressMeAppフォルダを削除します。 - 対応表が不要であれば、
%LOCALAPPDATA%\Kagyo\DressMeフォルダも削除します(エクスプローラーのアドレス欄にこのまま入力すると開けます)。
7利用規約
本ツール(Unity 用のファイル、PC アプリ「DressMe App」、説明書を含みます)を購入・ダウンロードした方に適用されます。全文は同梱の LICENSE.txt をご覧ください。
できること
- ご自身のアバターに導入して VRChat で使うこと(導入するアバターの数に制限はありません)。
- 本ツールを入れたアバターを使った配信・動画・撮影・イベント出演など(営利目的を含みます)。
- 本ツールの改変。ご自身で手を加えた改変版は、配布・販売もできます(下の「お願い」をご覧ください)。
禁止事項
- 本ツールを、そのまま、または名前・設定値の変更など軽微な変更だけを加えた状態で、再配布・共有・販売・譲渡すること。
- DressMe App(
DressMeApp.exe)の配布。改変版に含める場合も同じです。 - 法令、公序良俗、VRChat の利用規約に反する使い方。
お願い
- 自作発言はご遠慮ください(ご自身で手を加えた改変版の配布は可能です)。
- 改変版を配布する際は、改変版である旨と配布元(本商品ページの URL)の記載、および「当ショップへの問い合わせは行わないこと」の明記をお願いします。改変版に関するお問い合わせには対応できません。
注意
- 当ショップは改変版に関与しません。改変版の不具合や、改変版によって生じた損害について、当ショップは責任を負いません。
- 改変版を使う場合も、DressMe App は本商品から入手してください。
- DressMe App に含まれる第三者のソフトウェアは、それぞれのライセンスに従います(
THIRD_PARTY_NOTICES.txt参照)。 - 本ツールが依存する第三者アセット(VRChat SDK、Modular Avatar など)は本規約の対象外です。それぞれの利用規約に従ってください。
- 本ツールは生成 AI を利用して制作しています。
- 本ツールの導入・更新・使用により生じたいかなる損害についても、当ショップは責任を負いかねます。
- 規約は予告なく変更することがあります。変更後の規約は、変更後に配布するバージョンから適用します。
8クレジット
DressMe には次の第三者のソフトウェアが含まれています。ライセンス全文は同梱の THIRD_PARTY_NOTICES.txt をご覧ください。
| 名前 | 使っている場所 | ライセンス |
|---|---|---|
| .NET Runtime / Windows Forms | DressMeApp.exe Copyright (c) .NET Foundation and Contributors | MIT License |
| VRChat.OSCQuery | DressMeApp.exe(VRChat との接続) Copyright (c) 2022 VRChat Inc. — github.com/vrchat-community/vrc-oscquery-lib(依存ライブラリ MeaMod.DNS・Newtonsoft.Json・Microsoft.Extensions.Logging.Abstractions も MIT License) | MIT License |
9更新履歴
- 初回リリース