Your First Menu
After reading this page, you will be able to attach the component to an avatar root, apply a preset, and confirm the menu all the way through to the build clone.
Before You Start
You need to have finished Installation. That is: VRChat Avatars SDK 3.x and NDMF 1.x are in the project, the target avatar carries MingToon materials, and the Console has no compile errors.
The work in this document is done on an avatar placed in the scene. With a prefab asset selected in the Project window, the component menu item does not open.
Across the seven steps below, the only thing actually added to the authored avatar is one settings component. The menu, Expression Parameters, animation clips, and FX controller are created solely on the disposable clone that Play Mode and the upload build produce.
1. Add the Component to the Avatar Root
- Select the avatar root in the Hierarchy.
- Run
GameObject > Studio Raming > Ming Light Controller > Add or Configure Component.
Choosing Studio Raming > Ming Light Controller from the Add Component button gives the same result. Only one component is attached per object.
This is correct. One component is attached to the avatar root, and at the top of the Inspector you see the product name, the Language dropdown, and the following notice below them.
This component stores settings for this avatar only. It does not modify authored FX, menus, parameters, or materials; actual MLC setup is created only on a Play Mode or upload build clone.
If the menu item is greyed out, it is one of the following.
| State | What to do |
|---|---|
| Play Mode is running | Leave Play Mode and run it again |
| A child object rather than the avatar root is selected | Select the root |
| A prefab asset in the Project window is selected | Select the avatar placed in the scene |
2. Apply a Starting Preset
The Quick Start card at the top of the Inspector spells out the workflow.
- Choose a starting preset. 2. Enable features in the menu tree. 3. Review budget and validation. 4. Fine-tune one selected item only when needed.
- Choose an entry from the
Starting Presetdropdown in theQuick Startcard. On your first run, leave it onRecommended. - Leave
Profile, right below it, onAuto. - Press the
Applybutton. - Press
Applyin the "Replace the current feature settings with the selected preset? You can undo this change." dialog.
This is correct. The menu tree is redrawn with that preset's layout, and the numbers in the Budget & Validation card update for the new configuration. If you pressed it by mistake, Ctrl+Z takes it back.
The component you just attached already matches Recommended, so you can skip this step if that is what you plan to use. What each of the five presets turns on and off is in Starting Presets.
3. Check the Menu Layout
Use the Menu Layout card to review what goes into the final menu.
- The
Rootline near the top of the card shows the current number of top-level items. In theRecommendedstate it readsRoot (7 / 8). - The checkbox on each row decides whether that item is dropped from the final menu and its parameter cost. Unchecking a folder drops everything inside it as well.
- Drag the
≡handle on the left to reorder an item or move it into another folder. - To add more items, press the
+ Itembutton and choose betweenFolder,Feature,Material Group, andCommand.
This is correct. An unchecked item does not disappear from the list, but the Enabled Features count and the Synced Bits value in step 4 go down accordingly.
The 8 in Root (7 / 8) is the number of slots on one page of the VRChat Expressions Menu. Group items into folders so the top level never exceeds eight.
4. Check the Budget & Validation Card
The Budget & Validation card shows four lines.
| Line | How to read it |
|---|---|
Synced Bits | The synced bits the current configuration costs as Smooth and as Compact, plus the budget in parentheses |
Avatar Total | The bits and entries the existing non-MLC parameters already use, plus the targets you set |
Selected | The profile actually selected and its cost |
Enabled Features | Enabled features / total features in the catalog |
This is correct. Selected shows a profile name and a cost.
If Selected reads "Over budget / cannot generate", or a red error box appears, you are over budget. Drop features in the menu layout, or turn Synced off for some features in Selected Item Settings to make them local-only. When both profiles are over budget, this notice appears.
Both profiles exceed the synced budget. Disable features or make some local-only by turning Synced off.
With the whole default catalog enabled, Smooth costs 84 synced bits and 22 parameter entries, while Compact costs 41 synced bits and 51 parameter entries. Disabling features reduces both. The details are in Profiles and the Parameter Budget.
5. Validate the Settings
- Press the
Validate Settings (No Source Changes)button in the inner box of theBudget & Validationcard. - Read the result dialog and press
OK.
This is correct. The dialog shows a validation result message and nothing about the avatar changes. As the name says, this button validates only.
This card validates settings and budget only. It leaves no generated assets, Modular Avatar host, or descriptor changes on the authored avatar; setup is composed on a temporary clone only for Play Mode preview and upload.
If Attachment is explicitly set to VRCFury while that integration is not installed, the button is disabled and the following warning appears with it.
The VRCFury provider is not installed. Install VRCFury or choose another build backend.
At the bottom of the same box, the Play Mode Preview line shows the current value as Enabled or Off. That line is read-only; the value itself is changed in Advanced Options.
6. Play Mode Preview
- Expand
Advanced Optionsand check thatPlay Mode Previewis on. It is on by default. - Press the Play button to enter Play Mode.
- Open the avatar menu in a preview tool that runs through the NDMF pipeline.
This is correct. The menu carries exactly the items you reviewed in step 3, and leaving Play Mode returns the avatar to its original state.
Turning Play Mode Preview off means no MLC controls are created on the Play Mode clone. That only disables the preview; it has no effect on the upload build.
7. Upload
- Check that
Allow Build Clone PreparationinAdvanced Optionsis on. It is on by default. - Build and upload the avatar from the VRChat SDK window as usual.
This is correct. The upload succeeds and the MLC items appear in the in-game Expressions menu. The project's authored avatar and its FX, menu, and parameter assets are identical before and after the upload.
Turning Allow Build Clone Preparation off means only the settings component is removed from the clone and no menu is attached. Build with every MLC feature turned off and the build simply succeeds, with no runtime setup created and nothing attached.
MLC has no fallback path that leaves files in the project. Called without an NDMF asset save path, it reports a diagnostic and fails instead of creating a folder.
Next Steps
| Page | When to read it |
|---|---|
| Component Inspector | Checking what each field on each card changes |
| Starting Presets | Trying a different starting point |
| Profiles and the Parameter Budget | Running short on synced bits or parameter entries |