Y2k is an upcoming third-person JRPG inspired by Final Fantasy, Earthbound, and Haruki Murakami. It follows the misadventures of bearded college graduate named Alex Eggleston as he hunts through a '90s message board for information on the mysterious "Death Cab." Y2K also contains weaponized panda plushies and killer alpacas. This is the dev blog you are looking for.
Crossposted from Ackkstudios' devlog.
Let’s talk about expressions…facial expressions….
The animation in Y2K is a hybrid of “traditional” game animation and stop motion/replacement animation.
traditionally a game will either use blend shapes or texture changes to animate facial expressions for characters. I have always liked the look of the texture change technique(*great examples of this technique can be found in both Gravity Rush and Mega Man legends*).
I like the technique, but it doesn’t really allow for changes in silhouette like with the blend shape technique.
Blend shapes allow you to morph the shape of a piece of geometry to match that of another; however, Blend shapes require that the geometry not change vertex count/vertex order.
This means that you can change the shape of a piece of geometry, but not add anything new/remove anything to it.
Because of the simplified design of our characters, I decided that blend shapes are unnecessary and restrictive.
I took inspiration from the stop motion technique of replacement animation:
since George Pal is the earliest animator that I know of who used this technique, I will link to an example of his:
In the work of George Pal, each face is a different sculpture (although in his case, I believe each frame of an entire figure was often a different sculpture).
The same idea applies to the facial animation in Y2K:
This is the inspector view of the face expression script:
This script is two parts: The first part is the “Facial Expression” script.
This script holds all of the names of the expressions used by the actor in a battle scene.
These can be filled in with the name of the desired animation.
The second part is the “Stop Motion Animation” script.
this holds the animation information referenced in the Facial Expression script.
It holds a reference to each frame and settings for how the animation should play.
The expression is changed via a 3rd script called “Animation From Actions”.
That script basically tells an actor how to animate in battle depending on what other scripts ask the actor to do.
a small example method:
This method tells the actor to change the face expression to the expression selected in the VictoryDraw property( configurable via the unity editor).
it also asks it to play an animation using 1 of 2 animation types.
Here is the setup in action:
Now let’s see an example of the outcome:
Because I don’t need to make the vertex counts match for each change in expression I can really push the facial animation.
It also has the benefit of looking more “hand made”.
Thanks for reading!
AckkStudios is the collective name for the genius minds behind GBA love letter Two Brothers/Chromophone. They're current working on Y2K, the JRPG hipsters everywhere are waiting for.
We're Ysbryd Games, the plucky publishing outfit with a big heart and the name that makes you go, "Gesundheit!" Based in Southeast Asia, we're a tiny operation looking to bring more narrative-driven goodness to the big, beautiful world. Our website is still under construction, damn it.