This plugin requires VAM 1.22.0.0 or later!
If you're still using
VAM 1.21.1.0 or older (like VAM 1.20.77) download the older plugin version v.17 from the history tab instead or you will get the following error:

Type `SuperController' does not contain a definition for `MainHUDVisible' and no extension method `MainHUDVisible' of type `SuperController' could be found. Are you missing an assembly reference?


CUAManager by Blazedust (v.1.21)


Plugin to automatically load character details such as linked CustomUnityAssets when changing appearance.

* This session plugin can create presets from linked/connected CustomUnityAssets to a person similar to clothing presets. Those presets can contain character details such as hair, nails, accessories, earrings, wings, horns, tails, glasses, etc... whether it being linked CustomUnityAssets or clothing items. No more fiddling around trying to re-attach CustomUnityAssets when changing appearance in a scene or re-enabling certain clothing details when changing clothing. With auto load triggers you can bind a morph to automatically load selected presets, making it all automatic. Auto load triggers can also load plugin presets.

This plugin does NOT save appearance presets as it's already a native feature within VAM. ALWAYS save your look as an appearance preset first! This plugin handles connected CustomUnityAssets as a CUAManager preset that can be applied at a later time in other scenes! I assume you already know how to create appearance presets and how to apply them in another scene before using this plugin!


Plugin Features:
* Save and Load character detail presets with linked CustomUnityAssets just like clothing presets.

* Auto load presets based on an active morph on the person. This allows automatically to load presets (hair, nails or other character details including plugin presets) automatically when changing appearance.

* Quick buttons. Quickly access VAM's appearance preset, clothing preset, plugin preset and CUAManager's Append/Replace/Remove actions for the selected person while in Edit mode.

* Adjust position and rotation for a linked atom asset relative to the linked body controller for a person. Now you can align and center linked atoms perfectly.

* Easily add blank assets linked to a predefined rigidbody on a person, including head, neck, chest, abdomen, hip, pelvis and many more.

* Supports plugin scripts attached to the linked atoms when saving the preset so it will be loaded back up again. The ParentHoldLink on a CustomUnityAsset is designed to work with this plugin.

* Can handle different atom types, not just CustomUnityAsset type atoms (additional atom types to handle can be added in the options - SubScene atoms for example).

* Presets are stored in the plugin data folder (Custom/Saves/Blazedust/CUAManager/presets/).



Instructions/Installation

* 0.0 ("Installation")

  • Place the downloaded .var file in your VAM/AddonPackages folder.
    • If you have VAM running, restart VAM in order to detect any new .var packages.
  • Add this plugin as a session plugin (select ADD_ME.cslist in the .var package). (Do not add as a scene plugin!)
If you want your session plugins to boot automatically each time you start VAM go into the "Session Plugin Presets" -> "Change User Defaults..." -> "Set Current As User Defaults" after adding the CUAManager plugin as one of your session plugins. Now this plugin will run every time you start VAM. A session plugin will be active across all scenes. Redo this each time you download a new version of a session plugin!
CUAManagerInstallation.gif



* 1.0 Selecting Active Person:
This plugin only operates on the current selected person. This plugin will select whatever person you select in the scene or choose from the 'Active Person' selector. As you edit a character and change appearance you probably already have that person selected.


* 1.1 Saving presets:
You can save two different type of character detail presets, one containing linked atoms (such as linked CustomUnityAssets) and another one containing clothing items.
First type in a unique name for your preset and then press the save preset button.
* 1.1 - Linked atom preset: To save a linked atom preset press the 'Save Linked Atom Preset: Save preset' button. All linked atoms that this plugin is configured to handled will be included in the preset. Make sure you have the presets aligned correctly before saving.

* 1.1 - Clothing preset: To save a clothing preset press the 'Save Clothing Preset: Save preset' button. All enabled clothing items for the active person will be included in the preset. Make sure to remove any clothing items that's not part of the character look (only keep clothing hair, nails, lashes enabled etc...)


Demonstrating creating and loading a CUA preset for CUA Hair (Rigged CUA Item) from

Saving a CUA preset is the same for all kinds of CustomUnityAssets, like glasses, horns, wings, tails etc...

* 1.2 Loading presets:
Press either the Replace or Append button. Replace will remove any existing presets loaded earlier for the active person while append will keep existing presets intact. (Use the quick buttons to avoid going into the plugin interface!)

* 1.3 Auto load triggers:
The strength of this plugin is that it can load character detail presets automatically as you change looks, no need to access this plugin interface afterwards. This is done by setting up auto load triggers.

An auto load trigger will activate based on a morph on the character and load a preset. The idea is that a unique look will have a unique morph. Once configured, changing appearance will automatically load any presets through triggers.

Triggers support loading and unloading the following:
*Linked atom preset (presets creating with CUAManager - see section 1.1)
*Clothing preset (creating with CUAManager - see section 1.1)
*Plugin presets (from your plugin presets folder - save a VAM plugin preset as usual)

* To create an auto load trigger: Go to page "Manage auto load triggers" section.
Select a unique trigger morph for your look and select a preset (CUAManager preset or Plugin preset) and press the 'Add Trigger' button. You can set up multiple triggers for the same trigger morph.

Next time you change appearance all presets set up with auto load triggers with that look will be loaded automatically, whether it being linked CustomUnityAssets, clothing items and plugin presets.

You can use a special morph "CUAM_ReadOtherGenderMorphs" to use load triggers bound to morphs in the other gender morph collection. Useful for female/male conversions when using "Use female morphs on male" and the trigger morph is still in the other gender morph collection.
If you have a male and want to use triggers from the female morphs, you must in the male morph collection activate the "CUAM_ReadOtherGenderMorphs" (not the female) and vice-versa!

More about auto load triggers and plugin presets.
CUAManager triggers will track added plugins by using the plugin's label to mark plugins.
⚠ Plugins that update or modify this label for whatever reason will prevent CUAManager triggers from properly unloading plugins. This means plugins that update script labels are incompatible with CUAManager triggers. ⚠
Scene plugins are not updated through triggers and can use plugin labels without causing problems for CUAManager.

Adding a plugin preset trigger the first time will clear plugins with same pluginUrls as contained within the plugin preset. This is to avoid the plugin trigger adding already added plugins twice during the trigger creation process.

⚠ Plugin presets must be saved to your own "Custom/Atom/Person/Plugins/" folder. It can't be in a .var container! ⚠


⚠ Plugins modifying character material shaders, such as HideCharacter, may not be compatible with other similar plugins. Changing appearances from one look to another using plugins incompatible with each other modifying shaders may result in errors. Restart the scene in such cases! ⚠


AutoLoadTriggersPage.png


If you don't have a unique morph for your look, you can use an empty morph together with your look (I created this package with empty morphs for this use case https://hub.virtamate.com/resources/empty-morph-set.546/). Plugins such as MorphMerger can be used to create unique morphs that you can use with your look and auto load triggers.


Demonstrating triggers using plugin presets from

* 1.4 Quick buttons:
This plugin features some quick buttons to quickly access VAM's appearance preset, clothing preset, plugin presets and CUAManager's Append/Replace/Remove actions for the selected person. The idea is that it should be quick and easy to consume and enjoy scenes with your own appearances, clothing and some plugins without having to navigate into sub-menus. The quick buttons can be found next to the menu by default and you can customize the buttons through in plugin options.
You can adjust the layout and position of the buttons in desktop and VR mode. Adjust it to fit your personal preferences and other plugin interfaces.
You can disable the buttons in the plugin's interface by unchecking the quick-buttons options.

QuickCanvasButtons.png


Shortcuts.png


"Merge Plugin" will always merge plugin presets. Using the "(R)" button does an additional task where it replaces any plugins with the same pluginUrl as contained within the selected plugin preset. Use this when you want to replace plugins to enhance the life of the characters in scenes, such as Glance, Expressions, Gaze, ImprovedPov, Embody or other plugins with your own.

Technically, this *clears* the existing plugins first before adding your selected plugin preset using merge load. This has the benfit of preserving the pluginUids for all other plugins (such as Timeline) which could otherwise destroy scene triggers.

Use case: I usually replace any Glance plugin in scenes with my own plugin preset with Glance with my own settings, making glance behave as I want! This is when I use the "(R)" option to clear any existing Glance plugins, if any.


Other tools to help you with presets:
Resource Extractor by @cotyounoyume :


Changelog v.1.21 (var .21):
* You can now use a special morph "CUAM_ReadOtherGenderMorphs" to use load triggers bound to morphs in the other gender morph collection. Useful for female/male conversions when using "Use female morphs on male" and the trigger morph is still in the other gender morph collection. Morph "CUAM_ReadOtherGenderMorphs" is bundled in this version of the plugin and exist for both male and female.
If you have a male and want to use triggers from the female morphs, you must in the male morph collection activate the "CUAM_ReadOtherGenderMorphs" (not the female) and vice-versa!
* Fixed a bug where multiple triggers loading plugins wouldn't always load all the plugin presets correctly.

Changelog v.1.20 (var .20):

* Added pagination to the trigger list to avoid the list not rendering at all when you have around 200+ triggers.
* Fixed SubScene atoms not loading the subscene properly (requires re-saving SubScene presets).

Changelog v.1.19 (var .19):
* Changed trigger plugin preset load order to happen as soon as loading is over after changing a look but before CUAManager's "Post waiting" is finished. This makes plugin presets load as soon as a look finishes loading, skipping the artifical wait for CustomUnityAssets to load too if the look uses such triggers. A minor quality of life improvement.
Changelog v.1.18 (var .18):
* Updated plugin interface - the interface is split into separete pages for easier navigation and to reduce scrolling.
* New: Auto load trigger can handle plugin presets.
* New: Quick canvas button to merge plugin preset added.
* Quick button to merge clothing is now always in 'compact mode'.
* Fixed a bug where creating new CustomUnityAsset presets didn't show up next time you opened the file browser.
* Person scale is now preserved when you use the quick canvas button to select a new appearance. You can disable this in the options menu. (I found myself often checking the scale of the person before selecting a new appearance preset).

Changelog v.1.17 (var .17):
* Append using the FileBrowser now works (again) in VAM 1.21
Changelog v.1.16 (var .16):
* Assets with plugins using color parameters will now have the color parameters reapplied after 30 frames after creating the atom and loading the preset, fixing colors not being restored/initialized correctly. This makes the UnitAssetVamifier plugin colors work with CUAManager as expected instead of defaulting colors back to white and other plugins using color parameters. (This is a workaround for color parameters that works good enough! Other parameters seem to work just fine when applying plugin presets)

* Suggestions now also grabs the CustomUnityAsset's assetbundle name and parts of the path in various ways, improving name suggestions.
* Fixed a bug in the overwrite prompt being case sensitive instead of case insensitive.
Changelog v.1.15 (var .15):
* Quick canvas buttons now show filters for "All Flattened", "AddonPackages Flattened", "AddonPackages Filtered" and Current Directory.
* Fixed various bugs related to creating and deleting auto load triggers when there're multiple persons in the scene sharing the same trigger(s).
* Fixed "Active Triggers" filtering not updating itself when selecting another person in the scene.

Changelog v.1.14 (var .14):
* Creating a new trigger now pre-selects the trigger.
* Changing sort/filter for the trigger-list will keep selected trigger intact if it's still within the filter.
* Fixed a bug when creating a new trigger not unloading presets as intended, causing the same preset to be loaded on top of existing ones in certain cases.

Changelog v.1.13 (var .13):
* Updated plugin for VAM 1.20.77.* to use new PluginData folder to avoid overwrite confirm dialog when updating options. All presets are still stored and saved to the legacy plugin folder.
* You can now quickly toggle all clothing items controlled by triggers. Click the 'toggle clothing triggers' button in the plugin UI or in the quick buttons. You can enable this as a quick button from the quick button options. Useful if you want to save a clothing preset without including clothing items controlled by triggers.
* New option added to ignore disabled atoms (where On == false) when saving presets. This option is enabled by default.
* Quick canvas buttons for "Replace/Append" and "Remove last/Remove all" now have an option for merging those buttons making the buttons take less space, similar to how the clothing merge button works. You can enable this in the quick canvas options.
* Name suggestion list now always include last loaded preset name (to easier allow overwrite a preset when updating one).
* (Fix) Clothing items will only be controlled by max one trigger now to avoid conflicts over which trigger "owns" it. A message will be shown when a clothing item is ignored for a second trigger. (This fixes a bug where it was impossible to disable a clothing item manually if it was controlled by two triggers.)

Changelog v.1.12 (var .12):
* You can now enable a quick button for merge load clothing preset. Enable this through the options. Press the "(M)" part of the clothing button to use merge load clothing preset.
Changelog v.1.11 (var .11):

* Added quick canvas buttons. Quickly access VAM's appearance preset, clothing preset and CUAManager's Append/Replace/Remove actions for the selected person while in Edit mode.
* Fixed a bug that disabled all auto load triggers using the same morph when removing one auto load trigger using that morph.
Changelog v.1.10 (var .10):
* Browsing presets will clear its cached path so you will see newly saved presets in VaM 1.20.1.5.
* Fixed SubScene atom types not storing creator name in the preset file. Loading SubScene presets should work now even after restarting VaM

Changelog v.1.9 (var .9):
* Remove a left-over debug log message.
Changelog v.1.8 (var .8):

* Fixed auto load triggers using clothing item presets not always working as intended since the 1.7 update (Oops).
* Doubled the time you have to disable an active clothing item tracked by an auto load trigger. This will make it easier to disable those items if you have low FPS.
* Tweaked so you must click the same clothing item tracked by an auto load trigger twice to disable it and not just click any two clothing item tracked by an auto load trigger.

Changelog v.1.7 (var .7):
* Made it easier to manage your auto load triggers. Added possibility to sort and filter the list of your auto load triggers. Easily sort over morph name, preset name or current active triggers (this makes it quicker to find a specific trigger). The auto load triggers can be found in its own section now in the plugin interface.
* Added support for SubScene atoms (and a few other atom types, activate additional atom types in the options).
* Added a feature that reuses existing assetUrls from other loaded CustomUnityAssets when loading a new CustomUnityAssets if the assetUrl uses the same filename for the assetbundle. This is to avoid errors when trying to load the same assetbundle file but from another destination (different .var packages including the same assetbundle for example). This option assumes that same filenames share the same assetbundle file. You can disable this from the options.
* Fixed a bug where triggers wouldn't always activate if they used a morph with the same name as another morph from different .var package or destination (different .var packages including the same morph for example).
* Fixed a bug where multiple triggers wouldn't load multiple presets correctly if the different presets shared same atomUids.
Changelog v.1.6 (var .6):
* The "Post Waiting" time now always ticks while in Play mode.
* If the initial opening of the FileBrowser fails this plugin will try again for a smoother user experience in VaM 1.20.1.4.
Changelog v.1.5 (var .5):
* FileBrowser can be used to browse and select presets (just leave the "Select Preset" selector blank).
* Dropdown selectors updated to filtered dropdowns.
* Saving a preset now prompts you to take a screenshot which will be shown in the FileBrowser.
* Fixed a bug where auto load triggers wouldn't trigger properly when loading another gender.
* Fixed a null-ref when selecting an atom linked to a non-existing parent atom.
Changelog v.1.4 (var .4):
* Updated to work with VaM 1.20.0.9
Changelog v.1.4 (var .2):
* Loading/Creating presets will automatically suggest that preset in the "auto load preset" option.
* Some error handling to improve stability when atoms are removed automatically.
Changelog v.1.4 (var .1):
* Added support to create clothing item presets for character details and keep them enabled if set up with auto load triggers: allowing the character clothing item details to stay enabled even if loading other clothing presets that would normally disable the character clothing item details.
* Plugin only check for changes in Edit Mode by default (you can enable it to run in Play Mode too in the options).
* Minor changes to the GUI interface.

* ⚠Preset folder remains in the same location as before (Custom/Scripts/Blazedust/CUAManager/presets) to be easily backwards compatible with older versions that wasn't a .var package. If you intend to remove the CUAManager v.1.3 in the Custom/Scripts/Blazedust/CUAManager folder just don't remove your presets!

Once everything is set up with triggers, changing appearance is easy - one click.


The following images shows the plugin interface even if it's from the very first versions
( ⚠ GUI interface is similar but not exactly the same):
  • CUAManager15.png
    CUAManager15.png
    290.2 KB · Views: 0
  • 03.png
    03.png
    70.2 KB · Views: 0
  • 07.png
    07.png
    9.1 KB · Views: 0
  • 05v113.png
    05v113.png
    225.3 KB · Views: 0
  • Shortcuts.png
    Shortcuts.png
    40.1 KB · Views: 0
  • CUAManagerCreatePreset.gif
    CUAManagerCreatePreset.gif
    3.9 MB · Views: 0
  • CUAManagerCreateTrigger.gif
    CUAManagerCreateTrigger.gif
    517.6 KB · Views: 0
  • CUADemoBCreateHairPreset.gif
    CUADemoBCreateHairPreset.gif
    1.7 MB · Views: 0
  • CUADemoBCreateTrigger.gif
    CUADemoBCreateTrigger.gif
    4.3 MB · Views: 0
  • CUADemoBLoadPreset.gif
    CUADemoBLoadPreset.gif
    7.3 MB · Views: 0
Author
Blazedust
Downloads
300,364
Views
300,364
Packages
1
Total Size
0.08 MB
Version
21
First release
Last update
Rating
4.76 star(s) 33 ratings

More resources from Blazedust

Latest updates

  1. CUAManager v.1.21

    CUAManager v 21 Still requires VAM 1.22.0.0 or later! * You can now use a special morph...
  2. CUAManager v.1.20

    CUAManager v 20 Still requires VAM 1.22.0.0 or later! * Added pagination to the trigger list...
  3. CUAManager v.1.19

    CUAManager v 19 Requires VAM 1.22.0.0 or later! * Changed trigger plugin preset load order to...

Latest reviews

Essential for some of the more interesting looks.
Upvote 0
very useful
Upvote 0
Extremly useful plugin !
Upvote 0
VAM doesn't even detect the file. Could be something on my end but the downloaded file can't even be added.
Blazedust
Blazedust
Then I assume you didn't download the .var package correctly or you placed it in the wrong place. Maybe you're new to VAM based on your recently created account too and doesn't know how to actually install plugins.

Make sure you have a compatible version of VAM.
Place the downloaded .var file in your VAM/AddonPackages folder.
If you have VAM running, restart VAM in order to detect any new .var packages.
Follow the installation instructions in the description if you did the 2 steps above correctly.
Upvote 1
So useful! thanks for sharing.
Upvote 0
Compensating for the previous low rating and confirm it does work perfectly with the latest VaM version.
Upvote 0
Not working with the most current version of vam.
!> [CS1061]: Type `SuperController' does not contain a definition for `MainHUDVisible' and no extension method `MainHUDVisible' of type `SuperController' could be found. Are you missing an assembly reference? in <Unknown> at [67, 163]
Blazedust
Blazedust
I get this comment all the time.

This plugin requires VAM 1.22.0.0 or later!

If you're still using VaM 1.20.77 download the older version v.17 from the history tab instead or you will get the following error:
"Type `SuperController' does not contain a definition for `MainHUDVisible' and no extension method `MainHUDVisible' of type `SuperController' could be found. Are you missing an assembly reference?"

I added this as the first information on the plugin description page now.
Upvote 0
Must have plugin!
Upvote 0
Must have plugin if you are using any CUAs. Also helps with characters which need plugins to be loaded to work correctly like colliderfix.
Upvote 0
I can't believe it could be better...
Thank you for your service and outstanding skill.
Upvote 0
Back
Top Bottom