How can I have a single keyframe as the default state
Stumped again I'm afraid,
My problem this time is how to have a single keyframe as the default setting for a character without it interfering with other keyframes later on.
I have a selection of mouth shapes attached to a puppet all of which can be seen one at a time as the timeline plays giving the illusion of speech. I have used these phonemes/mouth shape keyframes to painstakingly lipsync a character but now I'm experimenting with having them play one after the other in a timeline triggered by pressing a button on the controller...
.. The trouble is that all the mouth shapes are visible at once when they are not playing in a timeline and sit like a bunch of mangled sausages on the face. So what I want is to have the 'closed mouth' shape playing when I'm not pressing the button that plays the talking sequence.
I have tried having a second timeline with the single closed mouth shape keyframe playing but when I press the talk button all the mouth shapes that should be playing are invisible.
I also tried using a randomizer to play the closed mouth shape followed by the talking timeline hoping it would return to the closed mouth shape at the top of the list but before it does it returns to the visible sausage look, also it plays the talking timeline in full which is no good as I'd like it to stop and go back to the closed mouth shape when I lift my finger off the button.
Can anyone help? I'm so close to getting a great character animation rig going which will be so reusable for multiple characters and sketches
Cheers
Dreeko
-
Without being able to see how you did things, I can only assume here: you'd want to think of a condition that has to be met for your mouth shapes to not show. Since you use separate timelines you might try and use the "is playing" output, negate it and hook it up to the power node in each shape. When the timeline is not playing, that means we're in base state and want to turn visibility off. Correct? I hope I'm not imagining there being an "is playing" output.
If you want to then hide the default state, you'd have to use an OR-gate and put all the "is playing"s of your other phoneme-timelines into the power node: regardless of what shape is currently playing, we don't want the default state to show.
If you show us more, I'd be able to offer more specific help. This should help at least a bit though. -
Hi Dreeko.
As I understood, you have all Keyframes in the same Timeline. You want it to playback when pressing a button, and when releasing the button the Timeline should go back to the start. Correct me if I'm wrong.
From what you describe it seems you need to address several problems.
1- The mouth shapes are all visible at once.
One solution is to make them invisible by default, that is, while there's no Keyframe recording, switch OFF their Visibility from their Tweak Menu. Now create a Keyframe for each mouth shape that switches their visibility back ON.
This way the shapes won't be visible unless their respective Keyframe is powered ON, by the Timeline's Playhead or else.
2- To make the Timeline play and go back to the start:
Stamp a Timer. Wire the Timer's Output port into the Playhead. This can be done while the Timeline is open -when grabbing the wire a port at the bottom of the Playhead will appear.
Now tweak the Timer's duration to be equal to the Timeline's, and set it to be Positional. Wire the Controller Sensor output into the "Start Timer" port.
This method will keep the Timeline powered when no button is pressed, in turn powering ON the closed mouth Keyframe. -
However, imagine you want several Timelines, with several lip syncs. You can't have the default mouth in every Timeline, you need a different workflow.
You could have the default mouth's Keyframe outside any Timeline, and it could get powered OFF when pressing a button:
Make the closed mouth shape invisible by default. Now stamp a Keyframe that makes it visible on a Microchip next to the Controller Sensor. Wire it to the Controller Sensor output that corresponds with the button pressed for talking, but use a NOT Gate to invert the signal, so the mouth is visible when not pressing anything.
For the Lip Sync Timelines, you could use the workflow with Timers I mentioned before.
Hope all this helps!
Pablo -
Thanks folks I'll give it a try later ?
Zaloguj się, aby dodać komentarz.