Godot 4.3
How would I approach animating an eye of a cartoon character?
I want to make my characters look similar to older cartoon characters like Tom and Jerry or Bugs Bunny who have long eyes that are not perfect spheres. How would I animate their eyes to look up and down and to the sides?
My current idea is to make a texture that is just a pupil in a white background then to move the UV mapping around to make the eyes look like it is moving. Would this work or is there a better solution?
old animation is subjective, you can’t create a 3D model of it because it depends on the camera, angle and scene. this works in cinema because the model can be morphed in front of the camera, but in a videogame you have to look at your model from more angles.
so a compromise has to be reached between complexity, angles and style.
this results in most modern styles, and this can be seen specially in anime and animation that uses 3D models instead of drawing. drawn animation is more subjective and alive.
so to answer your question, there are three ways I’ve seen this done:
1 - hollow semi-sphere. the eye is a hollow semi-sphere that is part of the head and goes in. the pupil is a floating sphere. the rest needs a proper shader.
this is good for models that need to be seen from multiple angles, like in a platformer.
2 - blob eye. take a toy and model it. toys are 3D models and the eyes are made googly, protruding outwards. this works for models that can be seen from some angles and is compatible with more shading methods, but certain angles can look bad.
3 - floating eye. the eye is a 2D or semi-2D shape that can be swapped with other shapes. this can be used when the camera is more fixed, like in a side-scroller, or when the model is stationary. this can be easier to set-up and lead to better communication of the character’s face, if the artist is talented enough.
a variant of this was used in games like Ocarina of time, where the faces where painted on the low poly heads and the texture was swapped.
the way to animate a 3D model is with bones. but faces, and more complex faces, can take advantage of shapekeys to create more complex facial animations.