Show or hide an object between the existing animation frames


I have made a human model with lip-sync successfully. It is animating well. I am facing an issue now after i have done a huge set of frame animations (around 12 k frame animations).

From the starting frame to a particular frame, i’m doing lip-sync speech animation. i.e., 0 - 5000 frames lip-sync is being kept. And then, frames 5000 to 10000, i am having walk animation.
I don’t have any problem with animation, animations are working fine. But,
I added a teeth object in the human mouth recently and joined it with human mouth. So, when human is speaking, we could see his mouth movement very real along-with this teeth added. But, the issue is,
When human is walking in the frames between 5000 to 10000, this Teeth is showing outside of the mouth. Because, i added this teeth later (after animation are all done earlier) and fit it for lip-sync. When the human is walking, teeth is flying outside of the mouth, i want to somehow hide this Teeth object from frames 5000 to 10000 and keep/visible Teeth object inside the mouth from frames 0 - 5000.

Since, i have added all the animations already and don’t want to modify those animations now, i got really doubt, Is it possible to show and hide an object in-between the existing animation frames like this without modifying much in the existing animations? Please help!

Thank you!


Easy fix: Find your teeth object in the Outliner. Go to frame 4999 in the Timeline. Move your mouse cursor over the eye icon in the Outliner, press [I] to insert a keyframe, then over the camera icon and press [I] again. (Make sure both icons are active!) :wink: Go to frame 5000. Click the eye and the camera to make your object neither visible nor renderable. Move your mouse cursor over each icon and press [I] again.

Done! :smiley:

You’re not obliged to animated the visibility. Only the renderability really matters for the final result… but it’s never a bad idea to synchronize what you see and what is rendered.

Hi Kallura, Thank you very much for your suggestions. I couldn’t fix it yet though.

  1. SInce i have attached teeth with the human to stick it at mouth area, i am unable to choose teeth object separately. So, first i went into 4999 frame and separated teeth by using “P” key in edit mode.
  2. Then i selected teeth alone and made it invisible as per your suggestions.
  3. Pressed “I” to create keyframe in Dope sheet
  4. Then, i went back to 1st frame, the teeth is being invisible in this frame too.

I want to show teeth only between 1 - 4998 and hide between 5000 - 10000. Since, i have added all the animations like lip-sync from 1 - 4998 and walk animation from 5000 - 10000 already, Is it possible now to show or hide only teeth object between the frames like my requirement?
I may be missing something, i’ll try your suggestions some more time and update you.

Thank you!


You must have read too quickly. I said to keyframe your teeth as visible on frame 4999 and then invisible on frame 5000. Since there is no other keyframe before frame 4999, Blender will keep your object as visible until frame 5000 where the second keyframe tells it to change.

If you add only one keyframe on the timelime, Blender will apply it to the whole timelime. You need 2 keyframes to record a change of state. “Before” and “After”. :wink:

And I read you too quickly too… :wink: I totally ignored the fact that you joined the teeth to the rest of the mesh. I would know how to deal with such a situation (in Cycles where it’s super easy) but I wouldn’t recommend it. (Total waste of computer power.) It’s much better to have a separate object. If it’s not “there” any more, Blender won’t waste any time to render it.

Now, I don’t understand how the teeth can show up if you don’t animate the lips during the walk. Is there some strong wind in your scene, pushing the face of your character into his/her skull? :smiley:

I didn’t said that i have no keyframes before 4999. I said there are lipsync frames between 0 - 4999 and reset of them for walk animation frames.

I have just uploaded my actual blend file here->
I said the frame 5000 and all earlier is just for example. If possible and able to download this blend, you could see starting frames lipsync from “0 - 7360” teeth is placed inside the mouth correctly and then from frame “12119.0” onwards the teeth will be out of the mouth area, which is not expected and giving issues for me now when i’m running this file in my apps. If the teeth is always inside the mouth area, even when this human rotates, walk etc. then its very fine. I really don’t know how to fix this directly. So, i’m looking for work around like, how we can visible and invisible teeth between frames.

Thanks for your help and Please give your advise!


Alright… I’m going to be direct. Your blend file is a bit of a mess. The teeth aren’t in the mouth by default. No wonder they show up. The mesh is next to the armature. That’s not a major problem… except that you forgot to disable the influence of the armature on the mesh when you added the teeth. (The eye in the modifier.) BTW, remove the ton of useless armature modifiers.

Disable the auto-keying. (It only creates more mess.)

The real problem is that you animated the mesh. Remove all the keyframes on l’uomo and delete the Armature object too. (No use.) Things will improve a lot.

Next, disable the influence of the facial_Rig armature. Edit l’uomo, select the teeth and assign them to the vertex group “Testa” with a weight of 1.0. This way, the they will follow correctly. Move the teeth in the mouth where they belong.

Finally, you can redo the movements (in space) of the character by moving and rotating the armature. Not the mesh!

Have as much fun as I had debugging your blend file. :wink: