Face Rig Morph Targets

I’m working on a project that requires full facial expressions for a character. The face requires more fidelity than can be done with a couple bones so I am trying to use morph targets. However I can’t get morph targets to export properly. I know the morph animation exists in the exported FBX because I can import it into a new Max scene and the morphs animate just fine. When I bring that same FBX into Unity, only the bone animation for the body exists, not the vert animation.

Has anyone successfully exported animated morph targets from Max into Unity?

Would morph targets be less performance heavy than 20+ bones in the face?

I don’t believe Unity supports animation with morph targets, only bone animation.

That’s good, because it’s true, at least at present.

As Ken and Jessy have pointed out, Unity doesn’t import morph targets, so the only way to do them currently is with a mesh combine-type operation in a script. There’s an old demo project on the wiki for Unity desktop if you’re curious, but I wouldn’t guess it’s very practical on the iPhone.

The bones are probably your best bet.

It isn’t uncommon to have 20+ bones in a face rig :slight_smile:

On an iphone though…

Thanks for the info everyone.

To be fair, the character and a backdrop are going to be the only thing on the screen. It’s not like he’s going to be running around a 3D environment. I’ve done performance tests with the character, pre-facial bones, and I get about 28 fps on a 3g.

28fps with nothing?
sounds like you have a massive amount of polys …

There’s nothing wrong with that if that’s all he’s going to have onscreen… I personally would prefer 30+ on a 3G though :slight_smile:

28 fps for an animated character, backdrop, and a whole lotta GUI (using GUIManager). The character is definitely the most expensive thing in the scene, but he fills over half the screen and is obviously the center of attention.

Character stats:
2159 polys
4282 tris
2258 verts
48 bones (no face yet)
max bone influences: 2
1 texture map at 512x512

I know this could use some serious optimizing under normal circumstances and in 99% of games this character would be waaaay to expensive, but the point of this project is to push a character as far as possible in the iphone.

Ah I see with that many bones its fine.

Assumed there were no bones due to your posting with the no bones and for static you would need 12k++ polys to dip that far down.

by the way: Polygon in Unity means triangles. Realtime Rendering does not support anything but Triangles.

I do iPhone bobbleheads with about the same poly count but far fewer bones. The performance is fine on 3g phones.

The last one I did had about 12 bones in the face. The latest will have more.

You can see some of my bobbles at:
http://www.digitalcodeworks.com

One of my hobbies is synthetic speech and I’ve written some text to speech software for embedded devices. I’m using that technology to do automatic lipsync for audio.

Does the newer version of Unity now support more than just bones for facial rigging on iOS?