汎用型歩行パーティクルギミック 取扱説明書
前置
本記事はVRChat向け汎用型歩行パーティクルギミックに関する取扱説明書です。
販売ページ:https://yrd404.booth.pm/items/7341631
本記事には以下の情報などが含まれます。
- ギミックの前提などに関する説明
- テクスチャ変更やマテリアル設定などの改変に関する説明
- 非対応アバターへの対応手順に関する説明
ギミックについて
本ギミック(以降「ギミック」)は、アバターの足(左右)と腰を起点に追従し、
歩行(アバターの移動)に合わせてパーティクルを発生させるギミックです。
このギミックは、一般的な人型(Humanoid)の構造を持つアバターへの導入を想定しています。
そのため、人型の構造を持たないアバターや人型でも特殊な構造を持つアバターでは
正常な動作(主に追従)をしない可能性があります。
逆にいえば一般的な人型の構造を持つアバターであれば位置等の調整を行うことで
非対応アバターでも動作させることが可能です。
(全てのアバターで検証したわけではなため、100%の保証はできかねます)
前提
ギミックの導入前に以下をプロジェクトに追加(インポート)してください。
すでにあるプロジェクトに追加する場合は、ギミックのインポートのみでOKです。
- ギミックを導入したいアバター
- Modular Avatar
- 本ギミック
ギミック改変手順
フルトラ使用時の対応
フルトラ使用中は、パーティクルが地面に埋もれる場合があるため以下の手順で位置調整を行なってください。
初期状態(対応アバター含)では [ systemParticle_foot_particle01 ] が該当します。
1. Prefabを画像の階層
(systemParticle_root > systemParticle_rightRoot > systemParticle_foot_componentRoot)を開きます
2. [ systemParticle_foot_particle01 ] を選択し、任意の高さに設定します
3. 次に左足の階層
(systemParticle_root > systemParticle_leftRoot > systemParticle_foot_componentRoot)を開きます
4. [ systemParticle_foot_particle01 ] を選択し、手順2で設定した高さと同じ高さに設定します
メニュー名を変更する
1. ギミックの一番上の階層を選択します
2. [ MA Menu Item ] の各メニュー項目の [ Name ] に任意のメニュー名を入力します
メニューの有効・無効を変更する
1. ギミックの一番上の階層を選択します
2. [ MA Menu Item ] の各メニュー項目の [ Enable ] のチェックを外します
3. [ Enable ] のチェックを外したメニュー(画像では systemMenu_particle01)を選択し、
Tagを [ EditorOnly ] に変更します
4. MA Object Toggle にあるGameObjectを選択します
(画像では systemParticle_foot_particle01 (Transform))
5. 4で光ったGameObjectを選択し、チェックを外した上で Tagを [ EditorOnly ] に変更します(画像では systemParticle_foot_particle01)
6. 同じ手順で左足も設定を行い、GestureManager などを使い、動作を確認し、
問題がなければアップロードします
他メニューにあるパーティクルと併用する
ここでは、systemMenu_particle01 と systemParticle_hip_particle01 を併用する場合で
手順を説明します。
1. [ systemMenu_particle04 ] を【 メニューの有効・無効を変更する 】の手順3までの手順で
無効化します
2. [ systemMenu_particle01 ] を選択し、[ + ] をクリックしてスロットを追加します
3. [ systemParticle_hip_particle01 ] を追加したスロットにドラッグ&ドロップします
6. GestureManager などを使い、動作を確認し、問題がなければアップロードします
テクスチャを変更する
既存のパーティクルのテクスチャを変更する場合は以下の手順で変更をします。
1. 任意のテクスチャをインポートし、Inspectorを開き、
Advanced の中にある [ Genlerate Miomaps ] のチェックを外します
2. 次にマテリアルを選択し、スロットにセットします
マテリアルを変更する
既存のパーティクルのマテリアルを新規で作成したマテリアルに変更する場合は以下の手順で変更をします。
1. 任意のparticleSystem(パーティクルシステム) のGameObjectを選択します
2. 作成したマテリアルを Renderer の中の [ Material ] にドラッグ&ドロップします
1つのプロジェクトで複数のアバターを管理している場合
1つのプロジェクトで複数のアバターを管理していて別々のパーティクルを当てたい場合は、
【テクスチャの変更手順】や【 マテリアルの変更手順 】の手順で対応できます。
1. [ walkingParticleSystem_Default ] または各アバター対応Prefabを任意のアバターに追加します
2. 追加したPrefabの任意のパーティクルシステムを開き、【 マテリアルの変更手順 】の手順で
任意のマテリアルを設定します(テクスチャも変えたい場合は【テクスチャの変更手順】を参照)
3. walkingParticleSystem_Default 使用時は【 非対応アバター調整手順 】を参考に位置調整をします
4. GestureManager などを使い、動作を確認し、問題がなければアップロードします
基本は不要だと思いますが、心配な方は以下の手順でPrefabをUnpackしてください
パーティクルの色を変更する
1. 任意のパーティクル(systemParticle_foot_particle01 など)の中にある
[ particleSystem ] を選択します
2. Inspctorからパーティクルシステムの [ Start Color ] を変更します
パーティクルの放出量を変更する
1. 任意のパーティクル(systemParticle_foot_particle01 など)の中にある
[ particleSystem ] を選択します
2. Inspctorからパーティクルシステムの [ Rate over Distance ] を変更します
パーティクルの向きを変更する
1. 任意のパーティクル(systemParticle_foot_particle01 など)の中にある
[ particleSystem ] を選択します
2. Inspctorからパーティクルシステムの [ Rednder ] を開き、 [ Render Mode ] を変更します
複数テクスチャをパーティクルに設定する
1. 任意のパーティクル(systemParticle_foot_particle01 など)の中にある
[ particleSystem ] を選択します
2. 任意のテクスチャを 画像結合ツール などに追加、出力のパターンを使用する枚数の縦積みに設定します
3. ダウンロードしたテクスチャをインポートし、【 テクスチャの変更手順 】の手順で
既存のマテリアル、または新規マテリアルにテクスチャを設定します
- 新規に作成したマテリアルを使用する場合は、【 マテリアルの変更手順 】の手順を参照
4. Inspctorからパーティクルシステムの [ Texture Sheet Animation ] を開き、 [ Tiles ] の Y軸の値を使用するテクスチャの枚数の値に設定します
非対応アバター調整手順
ここではギミックを非対応アバターに導入した際の位置調整の手順を記載しています。
※ 説明の画像内では、walkingParticleSystem_Nemesis が使用されていますが 、
[ walkingParticleSystem_Default ] に読み替えてください。
調整手順
1. walkingParticleSystem > prefab > _mainPrefab から
[ walkingParticleSystem_Default ] をアバターの直下に配置します
2. ギミックを開き、 systemParticle_root の中にある [ systemParticle_rightRoot ] を
選択します
3. systemParticle_rightRootのMA Bone Proxyにある [ 配置モード ] を、
[ 子としてルートに配置 ] に変更します
4. 変更後、配置モードを [ 子として・ワールド位置と向きを維持 ] に戻し、
Transformの3点リーダーをクリックし、[ Reset Property ] から [ Rotation ] を選択して回転をリセットします
5. systemParticle_rootの中にある [ systemParticle_leftRoot ] と
[ systemParticle_hipRoot ] を選択し、同様の手順で設定を行います
6. 次にsystemParticle_rightRootの中の [ systemParticle_foot_componentRoot ] を開きます
7. この中にパーティクルをしまっているオブジェクトがあるのでそれぞれ以下のように設定します
-
systemParticle_foot_particle01:足裏(かかと)の真下辺りの高さに調整 -
systemParticle_foot_particle02,03:足首(くるぶし)辺りの高さで少し後ろ側に調整 - 必要に応じて奥行きなども調整してください
8. 調整を終えたら [ systemParticle_foot_componentRoot ] を複製します
- Windowsの場合は、[
Ctrl + D] - Macの場合は、 [
command + D]
9. 複製したオブジェクトを [ systemParticle_leftRoot ] 直下に移動します
10. 複製したオブジェクトを移動後、
オブジェクト名を [ systemParticle_foot_componentRoot ] に変更します
- 複製した場合、
systemParticle_foot_componentRoot(1)となる場合があります - オブジェクト名を変えないとメニュー操作で左足のパーティクルを操作できません
- Positionなどの値が変わる場合もあるため、Transformの3点リーダーから位置をリセットします
11. 次に systemParticle_hipRoot の中の [ systemParticle_hip_componentRoot ] を選択します
-
systemParticle_hip_componentRoot:おしりの真ん中辺りに来るように高さ(Y軸)を調整 - 尻尾がない場合などは、おしりの近くに来るように奥行(Z軸)を調整
12. GestureManager などを使い、動作を確認し、問題がなければアップロードします
エラーハンドリング
発生することはまずないと思いますが、以下のエラーが発生した場合はPrefabをUnpackしてください。
Cannot restructure Prefab instance
Children of a Prefab instance cannot be moved and components cannot be reorearee
You can open the Prefab in Prefab Mode to restructure the Prefab Asset itself,
or unpack the Prefab instance to remove its Prefab connection.
ギミック作成時参考サイト
- Modular Avatar
- 【Unity】ParticleSystem の基本機能の一覧
- 【Unity】パーティクルに複数の種類のテクスチャを使う
- 【Unity】パーティクル徹底解説!基本的なモジュールの使用方法から応用例まで
- パーティクルメインモジュールの全項目を映像付きで徹底解説します! [Unity]
- [Unity 入門】パーティクルを覚える|STYLY
- 【Unity」パーティクルシステムのメモ
- その1 Unityのパーティクル「Shuriken」
- 【VRChat】ワールド固定や左右の持ち替えをModularAvatarだけで設定する方法
































