-
-
Notifications
You must be signed in to change notification settings - Fork 36.1k
Description
Is your feature request related to a problem? Please describe.
High fidelity facial animation requires a lot of blend shapes. For example, here is a standard blend shape set from Apple for facial animation that they can extract from their cameras. It has 57 blend shapes.
https://developer.apple.com/documentation/arkit/arfaceanchor/blendshapelocation
It was utilized in this demo that drove a ReadyPlayerMe avatar in Three.js via the Apple ARFaceAnchor blend shapes:
https://twitter.com/seflless/status/1381313468926676997
You can see here that Three.js currently limits morphTargets (a less common name for blend shapes) to just 4:
Describe the solution you'd like
It would probably be best to look are removing a hard upper limit to the number of blend shapes, or to bring it to 64 (which seems like a safe number.)
Describe alternatives you've considered
We have currently implemented unlimited blend shapes via the CPU rather than the GPU. This allows for unlimited number of blend shapes but it is significantly slower.
Additional context
I've asked @selfless to join this conversation to describe how he implemented it so his approach could inform how this will become standard in the library.