Well my game dev twitter got banned for having T-Posing fox girls in the banner. That's about 6 years of game milestone history blocked off. Oof. So here's the gist.
Even 8 years later, game engines still suck.
The humans just don't look right when they move. They're just empty shells of polygons shifted around by an "armature".
But real life humans are 70% water, big squishy bags of meat that jiggle like jello in slow motion- even muscle. And that lack of movement and subtly ruins it. Bio had shown up to help me mod that demo into a full game (and to get their slime girls into it =3 ), but as I tried to design better jiggle the limitations of conventional armature animation became all too clear...
So, 2 years of on and off research and experimenting into how to solve the problem lead us to this.
"Shape matching". A complex bit of math to simulate "soft bodies", without computationally expensive masses of FEM springs, that can be even further optimized via "Fast Lattice Shape Matching" (ie by sort of grouping all the soft little pieces into giant, overlapping, stiffer pieces).
So, it's simple, right? Just write a quick FLSM sim to attach the flesh to physical bones in a more jiggly way, and there's your perfect porn engine!
I penciled that in for 4 to 8 weeks on my burndown chart.
Well 8 years, over 2000 hours and 2 game engines later we're still working on it. Turns out it's harder than I expected.
You can read more about the early years and motivation in this 2018 summary; why this is the only option in my mind for making the high quality TF content that I want to see, how all the other animation methods I tried first came up short, etc. And how when VR came around it kicked this need into overdrive.
I'll make another retrospective to cover the lost tweets, but for now... Here's what 6 years of working on that bouncy cube looks like:
If you're interested in chatting and watching progress, feel free to drop by the discord. Thankfully that dev history (and its hundreds and hundreds of GIFs) is still intact =)
No comments:
Post a Comment