- Home /
Does Unity support the muscle system of Maya?
Good morning.
I'm curious if unity supports the muscle system of Maya. Since I need to make a presentation of a human arm with scalable muscles, the question is, if I need to do it with some maya script or it is possible to do it with Unity.
I would prefer Unity, but therefore I need to know, if it is possible to scale muscles from an imported object (including muscles from the maya muscle system) via script.
So, summarized, the question is if it is possible to control muscles from the maya muscle system in Unity with similar deformation results (thus, any effects from the imported muscles onto the model).
Thank you very much in advance. :)
Answer by Owen-Reynolds · Jul 30, 2014 at 01:50 PM
Probably no.
Unity imports through FBXs, which only support FK animation. You can often bake stuff into FK. But, of course, that means it's baked -- no sub-part scaling, or tweaks ... .
Maybe there are some Unity scripts to run Maya muscles (I doubt it.) But there's no export format to send all your Maya muscle data to Unity. More likely is that someone has a project that is kind of like Maya muscles, but more real-time friendly, and fully in Unity.
Thank you for your answer.
So, the only possibility with this limitations would be creating an animation of the muscle mass in $$anonymous$$aya, from $$anonymous$$imum to maximum with let's say 100 frames. And, in Unity, then try to define the muscle mass with an UI element through a percentage, attach a script to it, and take exactly the frame, which equals the percentage.
In this case, there would be no muscles beneath, but at least the deformation would be correct and it would be not even noticable for the end user, that there's a workaround.
So, could this work then? What do you think?
That sounds like a Unity trick right out of the book, so should work. The trick being: ins$$anonymous$$d of thinking of the animation as something you play, think of it as sampling any one pose from a gradient. The legacy animation system has an example of doing this with a "lean left to right" animation.
Unity will always extrapolate between keyframes, even if the animation isn't running. So you can use keyframes as needed. But baking it out to F$$anonymous$$ probably just keyframes every frame(like it does for I$$anonymous$$.)