Mutable - How to make a dropdown menu that has specifically the selected item mesh's variant materials?

How can i make it so i can select a mesh, then select the corresponding materials that are linked to that mesh? The variant materials specific to that mesh?

So basically, for the meshes SK_Sneaker_A01 and SK_Boots_A01, how do i make a dropdown menu that has either MI_Sneaker_A01, MI_Sneaker_A02, MI_Sneaker_A03, or, MI_Boots_A01, MI_Boots_A02, MI_Boots_A03, MI_Boots_A04, depending on the SK chosen from another dropdown menu?

An option i had thought of would be to use a Datatable with 1 mesh and multiple materials inputs of that mesh? So a struct within a struct?

But arrays are not supported in datatable for mutable. Only single references.

Since i seem to be having issues uploading this question with the bullet points, i’ll add pictures of what i mean:

[Image Removed]

And then in mutable we’d end up with a dropdown menu below the skeletal meshes that decide the above SK’s material variant if datatable with arrays were supported

Then, if we have a mesh that has multiple material IDs, we can end up with the option to put more arrays in the material Array, so array of material arrays

Either like this:

[Image Removed]

Or put it in a simple function where it decides the variant for each :

[Image Removed]

I’m unsure how to go about it but the long and short of it is i’d like to make a dropdown menu that has only the specific mesh’s materials, but avoid having to make a datatable for every single skeletal mesh of the project.

Thanks in advance!

[Attachment Removed]

Hey there.

You have a couple of options to handle this. I’ll talk through them all and show screenshots. But ultimately, for dropdowns, you’ll be looking at two nodes: Tables and Material Switch.

  1. Tables - You’ve already been exploring this, but you’ve found some limitations.
  2. Material Switch - This would be a static but controllable approach, and used in conjunction with ObjectGroups, allows you to segment your work quite nicely. The num parameter that connects to the node is what creates the dropdown. [Image Removed]

Then, for non-dropdown approaches.

  1. Mesh Variation - this uses active tags to drive what choices it uses, probably not good for your use case, but important to know about. [Image Removed]
  2. Material Parameters - This is apart of the dataless approach, allowing you to put whatever material into the system using the normal picker tools. You could then build whatever UX you want to drive that system external to the Customizable Object System. [Image Removed]

For your use case, I would recommend a combination of ChildObjects and either data tables (using Python to generate your tables) or Material Switches.

Dustin

[Attachment Removed]