FAQ - anticto/Mutable-Documentation GitHub Wiki

Is it right for my project?

Many projects can get away with a system of interchangeable parts + shader effects for their customizations. For those projects, Mutable is not necessary at all. Mutable aims more at solving the case for games where deeper customisation is required, and performance is critical.

What features does Mutable offer?

Deep Dive into Customizations offers a quick overview of most of the features Mutable offers.

Does it include assets I can use in my games?

No. Mutable does not provide any assets; you still need to provide your own. Mutable lets you create the logic on how those assets will be combined. If you do not have custom assets, MetaHuman assets are a great source of high-quality assets.

Is there a demo where I can see Mutable working?

Yes! Check out the Mutable Sample.

What is the idea behind the node system?

The idea is to maximize expressiveness with no pre-defined customization templates. It also allows non-programmers to design and implement complex customizations.

What kind of assets does Mutable create for its customizations? Are they custom?

Mutable primarily creates standard Skeletal Meshes and Textures, although we are constantly adding support for new asset types. Once generated, they are completely equivalent, as if an artist had created them.

What is the core structure of the Skeleton, is it based on the UE Mannequin for example?

Mutable does not have a pre-defined Skeleton. At generation time, Mutable merges Skeletons from the different parts (as long as they are compatible). Just use your own Skeleton, and create humanoids, animals, vehicles...

Can Mutable adapt animations?

No. Currently Mutable does not modify animations or interact with any animation system. Having said that, Mutable allows you to attach custom data during a customization (like Asset User Data) which then you can use to tune the animations.

Does Mutable provide a crowd system?

No. Mutable used to provide a plugin called Mutable Populations. Due to development constraints it has been discontinued. In any case, we encourage you to implement your own crowd system using Mutable!

Is it possible to connect the solution to any Navigation System, IK solver, and Crowd System?

Mutable just generates standard assets. If these systems work with non-Mutable assets, Mutable generated assets will also work out of the box.

How live is the decal system? Is it limited in what kind of customization we can add if we use that system?

Decals are baked into Textures during generation. Artists can use them in the editor as part of their art pipeline, or players can change the position of decals and tattoos in-game, at realtime. For realtime editing, it's recommended to use States.

Does it include a Dynamic System (Hair, Cloth etc)?

Mutable does not provide any additional dynamic system on top of what the Unreal Engine provides. Some hair and cloth systems are supported (see other questions in this FAQ).

Does Mutable support the Hair Grooms and Hair Rendering system released in Unreal Engine?

There is experimental support for Unreal Engine's Grooms.

Does Mutable support morphs?

Yes! Either pass morph data to generated Skeletal Meshes or bake them directly into vertex positions.

Can Mutable simulate the aging of characters?

Yes, morphs and normal map texture operations can be used to achieve that effect. In fact, it's used in the "Cyborg" character from the Mutable Sample.

Does it support facial animation?

Yes, Mutable has always supported bone-based animation, morphs and MetaHuman DNA.

Does it support Anim dynamics?

Yes!

Can I change the height of a Skeletal Mesh using morphs?

One of the limitations one can find when using morphs with Skeletal Meshes is that skinning may break. Since bones are not affected by morphs, after the morph is applied, vertices in the mesh could end up in a position where the bones aren't correct and cause unwanted deformations. Changing the height of a character using morph targets is a case where this limitation will probably be encountered, so its use is discouraged. A better option would be to use the Skeletal Mesh Reshape Node, or Bone Transforms after Mutable generates the assets.

How does Mutable handle content updates and binary differences?

All data compiled by Mutable is stored in BulkData files, similar to the way textures and meshes store their cooked data. Compiled resources are organized by resource type and source asset, ensuring a stable ordering across builds. This helps minimize binary differences between builds and reduces patch churn.

Skeletal Meshes, Textures, and Material Parameters are not stored in a Mutable-specific format. Instead, they follow Unreal Engine's standard cooking and serialization rules, allowing them to benefit from the existing asset pipeline and patching behavior.

Can I examine or debug Mutable characters? What if something doesn't work the way I expect?

Mutable will output error messages to the message/output log during editor sessions and in-game. Mutable also provides some debug tools but they are quite advanced. For most cases we recommend simplifying the graph until the issue is found.