Is Procedural Animation Worth it?

69,069
0
Published 2022-02-26
This video is my longest. It gets a bit meta at parts and if you wanted some sort of economic analysis of procedural animation you wont get that here.

My IK Tutorial    • Learn Inverse Kinematics the Simple Way  
My Bird Demo benjaminblodgett.itch.io/procedurally-animated-bir…

Discord discord.gg/4WpA8Ez7FD
Patreon www.patreon.com/BenBlodgett

Codeer youtube.com/c/Codeer
GDC talk    • Animation Bootcamp: An Indie Approach...  

0:00 - Intro
0:25 - Common Misconceptions
3:23 - Disadvantages
5:32 - Scope Creep?
9:03 - Rain World
11:03 - Spore
13:47 - Difference Between Traditional and Procedural
16:23 - Closing Statements

All Comments (21)
  • You know what games would best benefit from this? Parasite games, cosmic horror, biologicla nightmares like The Thing. Those game genres would work amazing with how body parts would just switch bodies and morph or combine in a nightmarish mess. Glorious
  • A thing I would like to point out in the game "Rain World" is that I believe that procedural animation was totally necessary for the game, because in this game you basically are a prey animal in a whole new ecosystem new and alien to what the creature is used to, so the animation makes all the creatures feel ALIVE because they basically move however they want, and it can make for scenarios that make the enemies feel like genuine animals! Like one time, when I was going through an area and then I stumbled upon a MASSIVE tentacular monster which appeared to be blind but not deaf (it is called a "Daddy long legs" in the game), so basically because it was getting towering over the whole room and I wanted to go to the other part of the room, I had to surround him, but here is the catch and why this creature felt alive… as I was trying to hide from it after he spot me below a platform while he was on top of it, this blind octopus knew I was just below him, so instead of going towards me, the idiot just blocked both the exits with it's tentacles and waited for me to just run into it's tentacles. The thing is that if it wasn't procedural, this thing would've just ran towards me since it knew where I was and I could've escaped, but because of the mix of the AI of the creature and the movement of the tentacles, it makes it feel like a genuine predator
  • @pixboi
    I think in case of Rainworld, the procedural anims are a big part of the ghosty aesthetic of the world. People in feedbacks praise story etc. , but underneath the hood, it is the aesthetic that makes everything else work. Player feedback is valuable, but take a grain of salt, because people don't really know how to pinpoint what is it EXACTLY why they like a certain game. It might be something like: "It just feels right", but they can't say why it feels right. It would be quite reductionistic to say that "Rainworld was big because it has a great story", because if Rainworld had been an ASCII art game, I doubt we would be talking about Rainworld. Everything matters!
  • @Gabu_
    A little... correction? Addendum? Inverse Kinematics is widely studied not only by its application in animation, but also because it's essential in building robots - the kind of robot that sustains our post-industrial society.
  • 9:17 ok I am just here to say something… Rainworld is not a metroidvania, like sure, it’s open world (for the most part) but it’s still not a Metroidvania. A Metroidvania has you upgrade and unlock stuff throughout the game that allows you to enter new areas and fight new bosses, and Rainworld doesn’t have those factors to make it a metroidvania. But alas, people can agree and disagree with what makes a game a Metroidvania, but I don’t care what you think or say, you cannot convince me this game is a metriodvania
  • you got a subscriber, nice work I was blown away when I came to know about procedural animation from the game "Rain world" and felt the urge to learn it no matter what but seeing this video made me reconsider the huge task I was going to get myself into , thanks
  • @foptok
    Great video. Clear explanations with good examples. Very informative and entertaining throughout!
  • @ReleeSquirrel
    That was an interesting video. It popped up on a search I did when I was trying to tell someone about the disappointment of Spore's procgen animations being different from what they had shown off previously, and that's kinda historical now. Since I was looking for procedural animation, it brought me to your video and a couple other interesting ones I hadn't seen, and some others I have. It does seem like your point here is more basic, though. There's a lot of things gamedevs new and old will just try to cram in there, without considering the costs or the benefits. Most video games, especially indie games, don't really need a lot of fancy stuff to be fun and look good and tell whatever story you've got. My own interest in procgen animation is the whole 'Make Animators Obsolete' ideal. I don't think that'll ever REALLY happen, but it would be nice if we could make a model, rig it, and have it figure out how it could/should move somewhat on its own. Even if it isn't perfect, that would be enough for a lot of folks, and it could output something tweakable probably. It's also connected to my interest in procgen as a whole. It's always weird when you've got a bunch of copies of the same model for an enemy or whatever, exact same proportions and everything. Then you see a 'humanoid' character with mix-and-match clothes and they look better, even if they have the same proportions. There's also player characters with all sorts of appearance sliders... I would like to see wilder variations on species. If there's a bunch of muscly ogres, I want them to all have different sizes and proportions, and be distinct. I also don't want them all playing the same basic animation like a team of syncronized dancers. Especially since I tend to prefer exaggerated cartoon character types, there's a lot of room for variations that would affect their stride or arm movements. They might not even be symetrical. Anyways thanks for your contributions to procedural animation, and thanks for reading.
  • @orhunb
    great video! thanks for all the explanations and visuals. this made me think again and again if I really want to get into procedural animations and if my reasons are justified, then I realized as you said at the end, I dont actually need justification. I think its cool if applied properly and I just want to have it on my belt for possible future projects. hope you keep making videos, thanks! ^^
  • @marinomusico5768
    His GDC Talk was AMAZING! YOUR VIDEO IS AN AWESOME COMPLEMENTARY❤
  • Great video! It was great hearing your thoughts on this topic, keep it up!
  • @johnterpack3940
    A lot of games would benefit from procedural animation, even if only from the side-effects of it. Something as "simple" as the Sims. It's a bit annoying that all the Sims are the same height. But they have to be the same height so the animations will work on all of them.
  • @JusteTheCoder
    Excellent video! Your channel is definitely underrated.
  • @JustaFloatingEye
    I still think Rain World's procedural animation is very well deserved and the game wouldn't work otherwise. It is fine that people don't mention it in the reviews as the procedural animation still makes the world feel alive as it should, and people definitely see the world as alive.
  • @KroneDev
    Watched this very shortly after watching that GDC video mentioned. Good stuff
  • @schemesmith
    Very helpful video and nice reality check on what my priorities should be - thank you 🙏
  • @TokiSamurai
    this seems like it was for me ive been obsessed with that gdc talk and love all those proc anim games mentioned and i dont have a math background so ive been just unable and tortured by trying to put this into everything so thanks maybe i'll reassess
  • @Sunderbraze
    Hey man, great video. I'm only dipping my toes into theories for a procedural animation system at the moment, but I'd definitely disagree regarding the differences between traditional and procedural. I believe that can be clearly quantified by the amount of runtime code applied to keyframes while the animation plays, as well as how thoroughly 'baked' the keyframes are, if they even exist at all. Peak 'traditional' animation would entail as much 'separation of powers' as possible between engine and interpreter: the engine sets the criteria (mesh, rigging, orientation, timing, etc) and then the interpreter animates it by loading a file without making any other changes; effectively, setting the stage and allowing the animation file to play exactly as predefined. I'd liken it to playing a video file in VLC. Everything is baked to a crisp, like a particularly tough cookie, easy to package and deliver. As soon as the engine starts to apply changes to the animation itself, even if its as simple as layering a different animation over part of the mesh, such as the face or feet, you start venturing out of the 'black' of traditional animation and into shades of gray, which grow lighter as more code is necessary to fully execute the animation, moving towards the 'white' of procedural animation. I'd liken it to playing a video file in VLC with filters and effects applied. Not everything is baked to a crisp, like a softer cookie or chewy brownie, more delicious but messier to package and deliver. Peak 'procedural' animation would, by my reckoning, completely ignore fixed temporal instructions like keyframes in favor of constantly-changing runtime functions that navigate characters through a given environment with as few assumptions as possible. I'm not sure if any of the games you showcased in this video would actually meet that criteria; such code would be horrifically inefficient for interactive gameplay. Something at the absolute pinnacle of 'procedural' animation would probably be difficult to distinguish from a full body simulation, and if it ever tries to employ modern high-poly meshes, it would probably struggle to render one frame every dozen seconds on an average gaming PC. I'd liken it to streaming video to VLC from an AI-generated movie rendering in realtime on local hardware. No baking can even take place, like raw cookie dough, its amorphous and fragile to package and deliver. Sorry — I kinda got carried away with the metaphors. Now I'm hungry lol But yeah, I definitely agree with the brunt of your sentiment — most well-polished 3D games of the past decade would average out to some darker shade of gray on this gradient between traditional and procedural, with some lighter than others. I also believe that for a well-polished, and perhaps more importantly, well-optimized modern 3D game, you ideally want a mixture of both, and you want to pick whichever is most well-suited for the task at hand. Nobody would want a game's engine trying to run fully fleshed-out simulations on every movement of a 3D mesh in its environment — that would be a nightmare for a developer to code and a nightmare for a player to operate. So even the most ambitious procedural animation games will have to make plenty of compromises for the sake of efficiency and playability. Those that don't will just end up becoming memes — like QWOP, but without the self-awareness. I'd argue that this is why so many games that attempt to leverage highly procedural runtimes end up with relatively low polycounts and minimalist stylizing — its not always an aesthetic choice. More often than we realize, it's probably a corner they've developed themselves into, wittingly or not. One of the projects I'm currently theory-crafting starts with a traditional keyframe-based approach, with optimized/packaged files and an engine with an interpreter that reads them, but with a procedural flair where any value of any coordinate in a given keyframe can optionally include variables, which default to zero, but can be updated dynamically at runtime, ideally with data from both the skeleton and mesh itself. For example, consider a simple high-five between two human characters: the animation file wouldn't know or care about skeletal factors like height or appendage length, or mesh morph factors like body weight, but the animator will know that this can differ, so they can include variables in keyframes for parts like the collar, shoulder, forearm, and hand. (Possibly many more, in case you want characters to range from Michael Jordan to Peter Dinklage) Finally, the engine, which has all the data it needs about the mesh and skeleton, calculates the necessary values for these variables — ideally long before the animation is actually loaded — and pipes those values to the animation interpreter, which factors it into its calculations. This should hopefully maintain the optimized workflow and streamlined execution of traditional animation, but with a healthy layer of dynamics when needed, akin to procedural systems.
  • @RictorScale
    hey man this was an awesome video and super inspiring. I want to make the best possible game I can make, I am making a piece of art that shows my love for detail, a game that i dreamed of :D I feel like procedural animation is the future, and once tuned right can offer amazing things. But like you said the time trade off is important. I'm super driven to make this great, and I've learned everything else so far, so this won't stop me. I really appreciate your video. It was truthful, balanced, FUNNY, and high quality. thanks dude, keep it up!