Since all of the free syncing methods have failed me, I decided to try out Rogo LipSync (Lite version in this case as it just supports phonemes). However, despite the clip preview showing the syncing working correctly on the model, it doesn't play when running. I've named all the files as the speech manager requires, tried exporting the .asset file as a .txt instead, tried disabling auto-naming and just plugging the audio and sync data directly, and nothing seems to work. Is there a certain way the LipSync component needs to be configured or am I missing something else?
Comments
If you already tried it with .asset, did you manually assign the files in the Speech Manager when auto-naming was unchecked?
What version numbers of AC, LipSync and Unity?
If you check auto-name, you should be getting an additional error of the form:
"No lipsync file found. Looking for 'Resources/(file name')"
Were they appearing as well with the same filepath as you'd placed the files in?
Try using the 3D Demo as I did above:
- Load the 3D Demo via the link in the top toolbar
- Drag TinPot (from /AdventureCreator/Demo/Resources) into the scene Hierarchy
- Attach the LipSync component to TinPot's base, but don't configure it
- View the Speech Manager and uncheck Auto-name speech audio files?
- Set Lip Syncing to Rogo Lip Sync
- In the list of "Game text", find a speech line to test with (e.g. the "I can't cut that" line that plays when you use inventory on an unhandled Hotspot), and assign the "Gettysburg" asset in the Lipsync file field
- Run the demo scene (unpausing when LipSync throughs a "No BlendSystem Set" error) and get that line to play
In my testing, the lip-sync won't run (because the LipSync component is unconfigured) but the Console won't report it as missing. What happens for you?RogoDigital.Lipsync.BlendSystemUser.OnDestroy ()
The audio+animation will play on Tin Pot because its already set in the 3D Demo Managers (the animation is done with a separate script, not the standard LipSync tools).
The "No BlendSystem set" is the error I warned about in 7, and can be ignored for testing purposes (just getting AC to recognise the file).
You'd need to use Sprites Unity Complex animation because you'll need separate control over the head. I think the best way to do it is to have a separate head sprite for each facing direction (Head_L, Head_D, etc), and then animate the SpriteRenderer's enabled state, instead of changing the sprite of a single object. That way, you can place a LipSync component on each head, and they'll all be played with each line of speech.