I'm trying to create a character that has stick-on googly eyes
I would like the pupils to have a little jiggle like real googly eyes
It seems that physics has no effect on a pupil
(I cannot get anything to work)
Any suggestions on what to try?
I assume you still want the eye movements to work (e.g. following web cam or arrow keys etc). So here is my thinking (I have not tried any of this yet).
- Keep the current pupils but make them transparent so they cannot be seen. (Or make them smaller so hidden behind everything else.)
- I assume you don't want the visible pupils to stretch, so that implies we need another nested independent layer for the real visible pupils. So the current pupils will need to be replaced by a group with the current artwork and some new stuff.
- If we attack the new visible pupils to the old invisible pupils, you wont get the bouncing around effect - really want something like a spring. So I am thinking we need to insert Another independent layer between the two pupils. This can be invisible too. Add a dangle to this one though, maybe a Physics behavior so you can adjust the stretch and bounce etc.
So instead of
+Left Pupil (artwork)
you would have something like (!!!)
+Left Pupil Group
. Left Pupil Artwork (the old artwork, but made transparent)
. . Spring Artwork - could be another copy of Left Pupil Artwork above. Make it hidden too.
. . +Real Pupil Artwork - this is the visible pupil
Then attach Spring Artwork near the top edge to Left Pupil Artwork and attach Real Pupil Artwork to Spring Artwork (near the bottom edge). Then put a Dangle on Spring Artwork near the bottom edge. You might also put a PhysicsBehavior on "+Spring Group" so you can experiment with different gravity, spring strength etc.
My hope is the original pupils will track the webcam etc as before, the spring layer (not visible) will stretch and bounce (as long as the attach points to the parent and child layers are far enough apart so there is something to stretch), and the deepest layer of visible pupil will follow the end of the "spring" and bounce around without distorting itself.
If not enough spring, try some different shapes for the spring layer - e.g. try a ">" shape where you attach to the top and bottom, or a spiral. But I think changing the physics setting will do. I suspect you want to adjust the springiness rather than gravity - gravity will pull the eyes down - you may want to set it to zero.
If it works, please share the results!!!
Oh, if you don't need to control the position of the pupils, you may be able to do something different. Put some sticks (invisible) tagged with "collide" around the eyes. Then mark the pupils as dynamic and collide. You might need to play with friction and bounc (with zero gravity again). My hope is as soon as the puppet moves the eyes will start bouncing around at random within the borders you added around the eyes. But my guess is the previous approach will look better.