mirror of
https://github.com/bdunderscore/modular-avatar.git
synced 2024-12-29 18:55:06 +08:00
docs: add jp reference docs for new menu system (#277)
* docs: add SimpleToggle prefab * docs: ja reference docs
This commit is contained in:
parent
a300622bb2
commit
5b0c57ce7c
171
Packages/nadena.dev.modular-avatar/Samples/SimpleToggle.prefab
Normal file
171
Packages/nadena.dev.modular-avatar/Samples/SimpleToggle.prefab
Normal file
@ -0,0 +1,171 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &186869909411364112
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 186869909411364113}
|
||||
- component: {fileID: 186869909411364116}
|
||||
- component: {fileID: 186869909411364115}
|
||||
- component: {fileID: 186869909411364114}
|
||||
m_Layer: 0
|
||||
m_Name: SimpleToggle
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &186869909411364113
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909411364112}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1.19, z: 0.61}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 186869909814968496}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &186869909411364116
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909411364112}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 7ef83cb0c23d4d7c9d41021e544a1978, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
menuToAppend: {fileID: 0}
|
||||
installTargetMenu: {fileID: 0}
|
||||
--- !u!114 &186869909411364115
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909411364112}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 3b29d45007c5493d926d2cd45a489529, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
Control:
|
||||
name:
|
||||
icon: {fileID: 0}
|
||||
type: 102
|
||||
parameter:
|
||||
name:
|
||||
value: 1
|
||||
style: 0
|
||||
subMenu: {fileID: 0}
|
||||
subParameters: []
|
||||
labels: []
|
||||
MenuSource: 0
|
||||
menuSource_otherObjectChildren: {fileID: 0}
|
||||
toggleGroup: {fileID: 0}
|
||||
isDefault: 0
|
||||
--- !u!114 &186869909411364114
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909411364112}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fcac4d9412424173bd294ffd5fc5f9db, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
Objects:
|
||||
- target: {fileID: 186869909814968463}
|
||||
Active: 1
|
||||
--- !u!1 &186869909814968463
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 186869909814968496}
|
||||
- component: {fileID: 186869909814968498}
|
||||
- component: {fileID: 186869909814968497}
|
||||
m_Layer: 0
|
||||
m_Name: Cube
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!4 &186869909814968496
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909814968463}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.1, y: 0.1, z: 0.1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 186869909411364113}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!33 &186869909814968498
|
||||
MeshFilter:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909814968463}
|
||||
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
|
||||
--- !u!23 &186869909814968497
|
||||
MeshRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 186869909814968463}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 2
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 15d0a3b505e42654abed54cfbd603f42
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,6 +1,6 @@
|
||||
# Menu Group
|
||||
|
||||
The menu group asset allows a single menu installer to install multiple menu items without grouping them into a submenu.
|
||||
The menu group component allows a single menu installer to install multiple menu items without grouping them into a submenu.
|
||||
It is primarily intended as an internal component for use when converting expressions menus.
|
||||
|
||||
![Menu Group](menu-group.png)
|
||||
|
@ -34,12 +34,10 @@ In order to define where a menu item will go in the menu, another component will
|
||||
* The menu item can be on the same game object as a [Menu Installer](menu-installer) component.
|
||||
* The menu item can be the child of a [Menu Group](menu-group) object (which would typically be on a game object with a Menu Installer component)
|
||||
|
||||
Unbound menu items have no effect
|
||||
Unbound menu items have no effect.
|
||||
|
||||
### Using with actions
|
||||
|
||||
If an [action component](action-toggle-object) is on the same object as the menu item, the menu item will be configured to control this action component, instead of controlling an arbitrary parameter. See the action component documentation for details.
|
||||
|
||||
When an action component is present on the same object, you can no longer select the parameter name for the menu item; Modular Avatar will automatically assign a parameter at build time. By default, a boolean parameter will be created; if you attach a [control group](control-group) to the menu item, an int parameter will be used instead.
|
||||
|
||||
When a control group is attached, you can select a single menu item to be the "Group Default". When this is done, this menu item will be set to be initially selected; additionally, for certain types of actions (notably, [Toggle Object](action-toggle-object) actions), when _other_ menu items are selected, the action of this default item will be negated (so any objects this action toggles on, will be off by default in other states).
|
||||
When an action component is present on the same object, you can no longer select the parameter name for the menu item; Modular Avatar will automatically assign a parameter at build time. By default, a boolean parameter will be created; if you attach a [control group](control-group) to the menu item, an int parameter will be used instead.
|
@ -0,0 +1,19 @@
|
||||
# Action: Toggle Object
|
||||
|
||||
Action Toggle Objectコンポーネントでは、特定のゲームオブジェクトをオンまたはオフに切り替えるようにメニュー項目を設定できます。
|
||||
|
||||
![Action Toggle Object](action-toggle-object.png)
|
||||
|
||||
## いつ使うもの?
|
||||
|
||||
丸メニュー(Expressions Menu)の選択に応じて、特定のゲームオブジェクトをON/OFFしたいとき。
|
||||
|
||||
## 使い方
|
||||
|
||||
[Menu Item](menu-item)コンポーネントのあるゲームオブジェクトにAction Toggle Objectを追加しましょう。
|
||||
そのあと、トグルしたいゲームオブジェクトをリストにドラッグアンドドロップして、非表示にしたい場合はチェックを外しましょう。
|
||||
|
||||
## 制限
|
||||
|
||||
* 特定のオブジェクトには、一つのコントロールグループ(またはグループが設定されてないMenu Item)しか操作できません。
|
||||
* 通常のFXアニメーションがAction Toggle Objectより優先されます。逆に、FX以外のレイヤーだとAction Toggle Objectが優先される場合があります。
|
Binary file not shown.
After Width: | Height: | Size: 58 KiB |
@ -0,0 +1,33 @@
|
||||
# Control Group
|
||||
|
||||
Control Groupコンポーネントでは、複数のトグルをグループ化して、一度に1つだけが選択されるようにできます。
|
||||
|
||||
![Control Group](control-group.png)
|
||||
|
||||
## いつ使うの?
|
||||
|
||||
衣装変更スイッチなど、複数の状態から1つを選択できるオプションを作成する場合に使用します。
|
||||
|
||||
## どう使うの?
|
||||
|
||||
まずはGame ObjectにControl Groupを追加して、[Menu Item](menu-item.md)コンポーネントをControl Groupに向けてください。
|
||||
Control Groupは、アバター内にある任意のGame Objectに追加できますが、他のMA Menu Itemと同じオブジェクトには追加できません。
|
||||
わかりやすい場所に追加してください。
|
||||
|
||||
コントロールグループには以下の設定があります。
|
||||
|
||||
* 「保存する」 このオプションを有効にすると、ワールド移動やアバター変更時に、関連するトグルの現在の設定が保存されます。
|
||||
* 「同期する」 このオプションを有効にすると、選択が他のプレイヤーにも同期されます。
|
||||
* 「初期値」このコントロールグループの初期設定です。 「(どれも選択されない)」を選択すると、デフォルトではトグルが選択されていない状態になります。
|
||||
それ以外の場合、指定したトグルがデフォルトで選択されます。 ただし、デフォルトのトグルを設定した場合、すべてのトグルを選択解除することはできません。
|
||||
|
||||
「関連付けされたメニューアイテム」には、このコントロールグループにリンクされているすべてのメニュー項目を確認できます。
|
||||
|
||||
なお、Control Groupは、[action components](action-toggle-object.md)を使用しているメニュー項目とのみ使用されます。
|
||||
アニメーターパラメーターを駆動する通常のトグルの場合は、単にそれらのトグルを同じパラメーター名に設定してください。
|
||||
|
||||
### コントロールグループにアクションを追加
|
||||
|
||||
コントロールグループに[Action Toggle Object](action-toggle-object.md)などのアクションを追加できます。
|
||||
これらのアクションは、特定のオブジェクトに対して何を行うかを指定しないメニュー項目を選択したときに、デフォルトとして適用されます。
|
||||
例えば、衣装選択で最初の衣装をオフにすることで、それぞれの代替衣装にデフォルト衣装消し設定をいちいち追加する必要がなくなります。
|
Binary file not shown.
After Width: | Height: | Size: 90 KiB |
@ -0,0 +1,14 @@
|
||||
# Menu Group
|
||||
|
||||
Menu Groupコンポーネントは、単一のメニューインストーラーを使用して、複数のメニュー項目をサブメニューにグループ化せずにインストールできるようにします。
|
||||
|
||||
![Menu Group](menu-group.png)
|
||||
|
||||
## いつ使うの?
|
||||
|
||||
サブメニューに入れずに、複数のメニュー項目をインストールしたいときに使います。
|
||||
|
||||
## 使い方
|
||||
|
||||
デフォルトでは、Menu Groupコンポーネントが配置されているゲームオブジェクトの直下のすべてのMenu Itemを含みます。
|
||||
Menu Itemのサブメニュー/子モードと同様に、ソースオブジェクトのオーバーライドを設定して、ほかの引用元オブジェクトを選択できます。
|
Binary file not shown.
After Width: | Height: | Size: 136 KiB |
@ -0,0 +1,16 @@
|
||||
# Menu Install Target
|
||||
|
||||
Menu Install Targetコンポーネントは、[MA Menu Installer](menu-installer)コンポーネントの「メニューを選択」ボタンを実装するために使用されるコンポーネントです。
|
||||
MA Menu Installerコンポーネントからメニューを「引っ張り」、自分の位置にインストールします。
|
||||
|
||||
![Menu Install Target](menu-install-target.png)
|
||||
|
||||
## いつ使うの?
|
||||
|
||||
[MA Menu Installer](menu-installer)コンポーネントの「メニューを選択」ボタンを使用すると、必要に応じてこのコンポーネントが作成されます。
|
||||
ほとんどの場合、手動で作成する必要はありません。
|
||||
|
||||
## 何をするもの?
|
||||
|
||||
このコンポーネントは、選択されたメニューインストーラーの「インストール先」設定を上書きし、Menu Install Targetの位置にインストールさせます。
|
||||
これでMenu Installerを仕様したアセットを[オブジェクト型メニューシステム](../tutorials/menu)に併用できるようになります。
|
Binary file not shown.
After Width: | Height: | Size: 34 KiB |
@ -0,0 +1,49 @@
|
||||
# Menu Item
|
||||
|
||||
MA Menu Itemコンポーネントは、Unityのヒエラルキー内でExpressions Menuのメニュー項目を定義できるようにします。
|
||||
|
||||
![Menu Item](menu-item.png)
|
||||
|
||||
## いつ使うの?
|
||||
|
||||
このコンポーネントを使うことで、VRC Expressions Menuアセットで定義するよりも簡単にメニュー項目を定義できます。
|
||||
ヒエラルキー内でメニュー項目をドラッグアンドドロップすることで、移動できたり、[MA Parameters](parameters)コンポーネントで定義されたパラメーター名を意識したエディターUIを提供します。
|
||||
[アクションコンポーネント](action-toggle-object)と組み合わせることで、アニメーションやアニメーターを作成することなく、オブジェクトのトグルを定義することもできます。
|
||||
|
||||
## どう使うの?
|
||||
|
||||
:::tip
|
||||
|
||||
メニューエディターの使い方については、[こちらのチュートリアル](../tutorials/menu)をご覧ください。
|
||||
|
||||
:::
|
||||
|
||||
メニューアイテムコンポーネントは、メニュー内の単一の項目を定義します。
|
||||
アイコン、メニュータイプ、[コントロールグループ](control-group)、パラメーターなどを設定できます。
|
||||
メニュー項目の名前は、ゲームオブジェクトの名前から取得されます。これでヒエラルキーからメニュー項目の名前を確認したり、名前を変更したりできます。
|
||||
|
||||
### サブメニューについて
|
||||
|
||||
メニュー項目をサブメニューとして設定すると、サブメニューの内容をどこから取得するかを設定できます。
|
||||
サブメニューの引用元を「Expressions Menu アセットを指定」に設定し、通常のVRC Expressions Menuアセットを参照するか、
|
||||
サブメニューの引用元を「子オブジェクトから生成」に設定し、このメニュー項目の直下にあるメニュー項目をサブメニューとして使用することができます。
|
||||
|
||||
サブメニューの項目数がVRCメニューの最大項目数を超える場合、自動的に「次へ」項目が作成され、メニューが分割されます。
|
||||
|
||||
サブメニューの引用元を「子オブジェクトから生成」に設定した場合、「引用元オブジェクト」を指定することもできます。指定する場合は、Menu Itemが追加されてるオブジェクトの子ではなく、指定したオブジェクトの子オブジェクトが使用されます。
|
||||
|
||||
### メニューの配置
|
||||
|
||||
メニュー項目をどこに配置するかを定義するために、他のコンポーネントを使用して配置させる必要があります。これは3つの方法で行うことができます。
|
||||
|
||||
* 「子オブジェクトから生成」モードでサブメニューを設定したメニュー項目の子に配置する。
|
||||
* [Menu Installer](menu-installer)コンポーネントがあるゲームオブジェクトにメニュー項目を配置する。
|
||||
* メニュー項目を[Menu Group](menu-group)オブジェクトの子に配置する(Menu Installerコンポーネントがあるゲームオブジェクトに配置される場合が多い)。
|
||||
|
||||
配置されないメニュー項目は効果がありません。
|
||||
|
||||
### Actionと併用
|
||||
|
||||
メニュー項目と同じオブジェクトに[アクションコンポーネント](action-toggle-object)がある場合、メニュー項目は任意のパラメーターを制御するのではなく、このアクションコンポーネントを制御するように設定されます。詳細については、[アクションコンポーネントのドキュメント](action-toggle-object)を参照してください。
|
||||
|
||||
同じオブジェクトにアクションコンポーネントがある場合、メニュー項目のパラメーター名を選択できなくなります。その代わりに、Modular Avatarはビルド時にパラメーターを自動的に割り当てます。デフォルトでは、ブールパラメーターが作成されます。メニュー項目に[コントロールグループ](control-group)をアタッチすると、intパラメーターが使用されます。
|
Binary file not shown.
After Width: | Height: | Size: 231 KiB |
Loading…
Reference in New Issue
Block a user