Some may remember F-clone from about three years ago. It’s “expression capture” software that outputs to the DAZ/Poser .PZ2 file format. When last seen F-clone was in an over-priced $199 version 1.0, and the results were apparently a little basic.
Now it’s in 1.12, has a free trial, and is currently on sale for $33 for personal use. It’s nothing to do with iClone, despite the name.
I got it working with an 2008 HD (1280px) Microsoft zoom-able webcam I picked up in a sale way back. I was pleased to find there are now Windows 8 drivers for the cam at last, yay! So it was worth keeping it in a drawer all these years. Seems to work best when the highest res in the webcam is selected, and the initial calibration is good.
Even in poor lighting conditions F-clone gave me results. However, once the facial data was captured the “Video processing…” then took so long, even on a mere 20 second clip, that I gave up on it for a few hours. Possibly it doesn’t like also capturing audio as well as video, though it appears to have this capability.
But returning to it after a PC reboot solved these problems instantly, and another 17 second capture resulted in a near-instant saving out of the finished .PZ2 animation to the desktop.
I then dragged and dropped the animation into DAZ Studio and onto a Genesis 2 base figure. I left “Limits on” for the figure and got a nice subtle idle animation. I then tried a G3F and turned “Limits off” on import of the animation, and got a much more expressive animation. G8F also took the animation, and the movement was quite nice. But the best was the G3F. Apparently G3 was the first Genesis to have facial bones, and the F-clone software is obviously targeted on those. The clue here is in the name of its file output: F_Clone_Daz_Genesis3_0.pz2
In Poser there was very little success, obviously because the animation process was targeting Genesis 3 which is a DAZ figure. Though Star and Doctor Pitterbill took head and eye movements quite well, but not the mouth movements. But for some that may actually be a feature, since it would allow you to lay in another “track” of mouth animation (e.g. from the Talk Designer in Poser) and another for blinks. That was about the limit of the success in Poser, with limited testing on A3, V4 and M4, and La Femme. Note that for Poser you have to add enough frames first (i.e. 3000) otherwise the .PZ2 will only animate the default ‘first 30 frames’ and you will likely get a ‘nodding dog’.
So… I was idly expecting F-clone to only target the older DAZ/Poser characters, but I found the reverse. It works on Genesis 3 to 8. The Star 2.0 toon figure (G3) also works very well.
Add eye-blinks to G3 with the free EyeBlink Plugin which writes a timeline for them.
For $33 and with very easy .PZ2 output, it may be worth trying the free trial if you need to make long facial animations for your G3-G8. It also has sliders for smoothing and boosting, and for targeting of “toony faced” characters. With better light, in a proper mini-studio, and with calibration, you may find it has value for more expressive / subtle animations too. Perhaps even lipsync, though there are likely better tools for that if you’re serious about story-and-dialogue movie-making.
The .PZ2 files are human-readable text, so a little converter utility seems possible.
Incidentally, it seems there’s no cheap/free software that can input any still picture or short video clip of an expressive face, and then pop out a .BVH which can be dropped onto a 3D character so that they take the same expression(s). Perhaps there should be? Unless perhaps it’s actually in F-clone and I just haven’t found that feature yet?
Update: Tested on Windows 7 with the same webcam using older Lifecam 3.22 drivers (possibly geared to Win 7?). Seems to work much better even in low light. Note also that F-clone will only launch from the C: drive, so if you have problems launching that may be it.
Update: If anyone was thinking of making a converter script, here are the actor labels that are in the .PZ2 file. Here we see why mouth is not affected when applied to a Poser figure. All the action is going on in the lips and jaw.
actor head
actor lowerJaw
actor lowerFaceRig
actor lNasolabialLower
actor rNasolabialLower
actor lNasolabialMouthCorner
actor rNasolabialMouthCorner
actor lLipCorner
actor lLipLowerOuter
actor lLipLowerInner
actor LipLowerMiddle
actor rLipLowerInner
actor rLipLowerOuter
actor rLipCorner
actor LipBelow
actor Chin
actor lCheekLower
actor rCheekLower
actor BelowJaw
actor lJawClench
actor rJawClench
actor upperFaceRig
actor rBrowInner
actor rBrowMid
actor rBrowOuter
actor lBrowInner
actor lBrowMid
actor lBrowOuter
actor CenterBrow
actor MidNoseBridge
actor lEyelidInner
actor lEyelidUpperInner
actor lEyelidUpper
actor lEyelidUpperOuter
actor lEyelidOuter
actor lEyelidLowerOuter
actor lEyelidLower
actor lEyelidLowerInner
actor rEyelidInner
actor rEyelidUpperInner
actor rEyelidUpper
actor rEyelidUpperOuter
actor rEyelidOuter
actor rEyelidLowerOuter
actor rEyelidLower
actor rEyelidLowerInner
actor lSquintInner
actor lSquintOuter
actor rSquintInner
actor rSquintOuter
actor lCheekUpper
actor rCheekUpper
actor Nose
actor lNostril
actor rNostril
actor lLipBelowNose
actor rLipBelowNose
actor lLipUpperOuter
actor lLipUpperInner
actor LipUpperMiddle
actor rLipUpperInner
actor rLipUpperOuter
actor lLipNasolabialCrease
actor rLipNasolabialCrease
actor lNasolabialUpper
actor rNasolabialUpper
actor lNasolabialMiddle
actor rNasolabialMiddle
actor lEye
actor rEye
However, f-Clone can live-broadcast the following data via a websocket…
Head rotation X
Head rotation Y
Head rotation Z
Brow Left UP
Brow Left Down
Brow Right UP
Brow Right Down
Brow Centering
Brow outer left down
Brow outer right down
Eye Close Left
Eye Close Right
Mouse Open [he means mouth]
Mouse Left Smile
Mouse Right Smile
Mouse Left Spread
Mouse Right Spread
Mouse Left Frawn [he means frown]
Mouse Right Frawn
Mouse Left Centering
Mouse Right Centering
Cheek Left UP
Cheek Right UP
Left Eye Rotation X
Left Eye Rotation Y
Left Eye Rotation Z
Right Eye Rotation X
Right Eye Rotation Y
Right Eye Rotation Z
The .CSV output also has the same labels, though the .FBX appears to have the Genesis 3 labels. Thus it may be possible to make a .CSV to Poser .PZ2 converter. There is a csv_to_bvh.py for Blender which looks a promising converter template, though it fails in Poser 11 and VSC – it appears it can only run from Blender due to its need for the import BYP module. There is also a csv.to.bvh converter script, which seems to be in the R language?
But since there are now Websocket clients for Python the F-clone software could be a way of driving a Poser face in real-time in the viewport. f-Clone can output a real-time mo-cap stream via a websocket.