Animation Bootcamp: An Indie Approach to Procedural Animation

Поделиться
HTML-код
  • Опубликовано: 2 фев 2025

Комментарии • 650

  • @Zeawsomee
    @Zeawsomee 5 лет назад +1682

    The clearest example of working smarter instead of harder

    • @TheGooGaming
      @TheGooGaming 5 лет назад +16

      Seems genius but all these processes make the game run terrible on pretty much any hardware, which is honestly a shame

    • @phynx1756
      @phynx1756 5 лет назад +10

      @@TheGooGaming It's more so optimization. Its a bit more taxing but still.

    • @TheMrTape
      @TheMrTape 5 лет назад +91

      @@TheGooGaming That's simply very far from true. Normal animation is probably more taxing (depending on engine) in that it still needs to grab data from ram and apply it for each frame. You could calculate hundreds of millions of interpolations a second, yet only need about 60 for each instance. I can't think of why it wouldn't take only one CPU instruction to calculate the interpolation value of any given instance.

    • @prooxy1234
      @prooxy1234 5 лет назад +1

      trolln

    • @TheMrTape
      @TheMrTape 5 лет назад +30

      @@BassRukarioGuerrero No not necessarily. An animation consists of a relatively large data set where each frame is dependent on keyframes and the previous frames, so all that data has to be worked on to calculate bone angles for each frame, rather than just interpolating between 2 values according to simple math via one or few instructions.

  • @StormySeb
    @StormySeb 5 лет назад +572

    The fact that I managed to understanding even 50% of this is a testament to how good he was at explaining everything.

    • @mishikokenkebashvili879
      @mishikokenkebashvili879 3 года назад +10

      I watched this one year ago and didn't understand shit but i rewatched it now and I'm proud of myself for understanding it lol

    • @JungoFunko
      @JungoFunko Год назад +1

      ​@@mishikokenkebashvili879me too lol

  • @michaelabildgaard646
    @michaelabildgaard646 6 лет назад +1230

    Ubisoft - Spend 11 years, deitic amounts of money and international divisions developing a billion-dollar franchise around character movement
    David Rosen - "Look what I can do with 13 keyframes"
    I am in awe every time I come back to watch this

    • @BiosElement
      @BiosElement 6 лет назад +31

      Only took em 9 years...

    • @jwadaow
      @jwadaow 5 лет назад +74

      @@BiosElement A lone developer with limited funds.

    • @jeffwells641
      @jeffwells641 4 года назад +45

      I still find Overgrowth's movement to be one of the most satisfying I've ever played. It's just damn fun to run around and jump around in that world. It's not exactly a deep game though, and the jump-kick is infinite cheese, which kind of spoils it after a while. Still, the movement was an absolute blast.

    • @talanock
      @talanock 4 года назад +9

      the way this looks isn't realistic though. there is a cartoony nature to it which is not what you want when you wan realistic, viscual human like movmeent for osmething like assasins creed. This looks more like puppets flaing around, which works for this game, but it's foolish to think one method can fit all.

    • @m3rl1on
      @m3rl1on 4 года назад +30

      @@talanock that's the thing, you can adjust the params for those dampener and animation transition to make it more realistic, and i think thats why this tech is very interesting.

  • @JoshuaReyes
    @JoshuaReyes 7 лет назад +2155

    This is a awesome talk, this guy needs to teach a course on this.

    • @simplyble
      @simplyble 7 лет назад +89

      he would actually make some great courses if he did

    • @mikeluna2026
      @mikeluna2026 7 лет назад +38

      Agreed, I'd really love to have the know how to do such good outstanding animation.

    • @EnriquePage91
      @EnriquePage91 7 лет назад +17

      Yeah this would be a great course but it would certainly be at least 30-40 hours long - not a small topic and particularly when aimed at indies that more often than not do not come from programming backgrounds

    • @EnriquePage91
      @EnriquePage91 7 лет назад +7

      I know I've been researching this topic for over a year at this point

    • @kuurozen1
      @kuurozen1 6 лет назад +3

      Enrique Have you found any other good ones you can recall from your research?

  • @jonathanxdoe
    @jonathanxdoe 7 лет назад +1374

    Incredible how solid it looks compared to a game like assassin's creed with hundreds of animations. The power of code

    • @magnusm4
      @magnusm4 7 лет назад +204

      Fuck animation and graphics, hail gameplay and physics. Doesn't matter if it's not realistic as long as it looks plausible for a game and is fun and fluid

    • @Probable.Orange
      @Probable.Orange 6 лет назад +18

      it looks lifeless tbh

    • @satellite964
      @satellite964 6 лет назад +43

      Power of math.

    • @ryanmartin8060
      @ryanmartin8060 6 лет назад +37

      I agree, the quality really isn't that far off from what we can see in some popular titles. NieR: Automata has super responsive controls, something I'm a huge fan of, and having that responsiveness and fluidity is more important to me now than having a more realistic movement system that drags more and sucks the fluidity out of the controls. Definitely going to try and implement some of the things he's talked about here. I've got a 3rd person game demo that I'm trying to do on my own, and implementing these principles would save soooo much time.

    • @jeffwells641
      @jeffwells641 6 лет назад +34

      To be fair, often times what appears to be a simple, obvious solution is completely non-obvious until it is pointed out. EA would probably* not have spent tens of thousands of man-hours animating each movement of every character in Assassin's Creed (and don't ask me why AC keeps coming up in comparison to this video) if they had known they could get better results with a clever programming trick.
      There are certain realizations here that are pretty brilliant in their simplicity, and while I wouldn't say he's the only one who had such realizations, he's one of only a few. It's also worth noting that these tricks would have been completely unworkable in the Mario days - they require a certain amount of processing power to make them trivial operations that hasn't been around until relatively recently.
      *EA makes some pretty dumb decisions sometimes, so I can't just say they wouldn't go the brute force route even if they know there is a better way.

  • @maya_gameworks
    @maya_gameworks 7 лет назад +375

    Jesus what an INSANE talk! U can literally feel ur brain growing.

  • @tahaelaradi5539
    @tahaelaradi5539 7 лет назад +370

    Dear David, this talk has been by far one of the best GDC talks I've watched for years. Technical yet easy to understand, and your approach is just great. I wish you would have explained a little 'how' whenever you explained 'what' you did to accomplish such interesting results. Wishing you lots of success.

  • @animatrix1490
    @animatrix1490 4 года назад +55

    I really love that basically every single time ragdoll footage plays people laugh. It's kind of adorable

  • @Donotargue
    @Donotargue 7 лет назад +264

    This is amazing. Didn’t know you could get such detailed movement/animations with so little keyframes.

    • @joroc
      @joroc 4 года назад +10

      You and all game producers

  • @ClokworkGremlin
    @ClokworkGremlin 5 лет назад +254

    17:24 most realistic "I've fallen, help!" ragdoll physics I've ever seen, and they're from a tech demo from 4-5 years ago.

    • @LeeAndersonMusic
      @LeeAndersonMusic 4 года назад +18

      The first alphas came out in 2008, which already had pretty much exactly what you see here

    • @flubnub266
      @flubnub266 2 года назад +1

      @@LeeAndersonMusic Can confirm, I was there!

    • @jakes-dev1337
      @jakes-dev1337 9 месяцев назад

      10 years (since the demo, NOT even the game) and this is still my favorite GDC

  • @Twisted_Logic
    @Twisted_Logic 7 лет назад +77

    I remember when he put this talk up on his own channel a couple years ago and it's still brilliant.
    And congratulations to Wolfire on finally bringing Overgrowth into full release!

  • @CubsYT
    @CubsYT 3 года назад +10

    My favorite GDC talk. will never stop rewatching this

    • @80sJoel
      @80sJoel 5 месяцев назад

      Guy is the Jesus of game dev programmers.

  • @DoomRater
    @DoomRater 5 лет назад +8

    Four minutes in and I can't look away. It's so beautiful. Every developer needs to see this.

  • @BigFreakingCacodemon
    @BigFreakingCacodemon 6 лет назад +80

    Well heck, two frames. Even I can do that. I don't need it to be super pretty, but animation felt like it would be a colossal barrier to game development, but this really breaks it down into a much easier, more understandable process. Really cool.

  • @speakingmia7298
    @speakingmia7298 5 лет назад +15

    It’s a video back to 2014 and it still looks unbelievable in 2019.

  • @brianshannahan6983
    @brianshannahan6983 6 лет назад +11

    I know I'm a year late to this, but... damn. This is literally some of the most impressive animation I've ever seen, and all explained in a straightforward, usable way. Awesome work.

    • @MaxRostas
      @MaxRostas 6 лет назад +3

      Brian Shannahan seriously. It's funny how touted the euphoria engine is for gta, yet this guy's falling animations are loads more convincing using the simplest of methods.

  • @zaeche
    @zaeche 7 лет назад +236

    Really enjoyed this talk! I know he keeps saying key-frames, but essentially what David's doing is making strong poses, key-framing them sparsely, then using code/interpolation/what-have-you to make them sit nice, right?
    To me, It makes for reactive controls with pleasantly whippy animations, and what's clever about it is that the previous animation state ends up being the anticipation for the next animation state and so on. Good stuff.

    • @ThePhobiephozee2000
      @ThePhobiephozee2000 7 лет назад +1

      Yes, I agree!

    • @rurzan
      @rurzan 7 лет назад +8

      Yeah, I know little about animation, so was wondering if it boils down to making only the extreme poses (like standing pose and crouching pose), and interpolating in code, rather than creating the in-between poses manually, which would be the more traditional approach. Is that correct?

    • @zaeche
      @zaeche 7 лет назад +16

      (Not an expert but) I believe that is correct! Especially since he's modelling the interpolation on springs (force, damping etc) you get some procedural ease-in and ease-out. I'm _also_ quite sure using material physics lumps on secondary motion. And so on and so forth.
      It really is fascinating--the more you think about it, the more ways you can optimise towards an efficient animation workflow (even if you go back in later with high fidelity animations during polish).

    • @MajkaSrajka
      @MajkaSrajka 7 лет назад +3

      @ruzan
      Yeah I believe so. In the Q&A he gave example about making key-frames for holding large ball, small ball and interpolating between them ( 25:35 ).

    • @EnriquePage91
      @EnriquePage91 6 лет назад +24

      Think of it In this way, I use blender and will explain it with this software but the idea is the same regardless of the software:
      Do your animation as you would in Blender/Maya/etc,
      If you're doing a run cycle...:
      you most probably have a few major poses, not just two. YOU CAN STILL DO THIS!!
      What he did was a very simplified illustration of the process, but ultimately he is just interpolating KEY POSES directly in his GAME ENGINE instead of doing it in Blender. This way he does not have to bake the information into a 250/X - frames animation, and then read all of that information in the Game Engine. He can simply use the KEY POSES to "recalculate" the interpolations necessary for the whole animation. Your 3D Animation software does this already, but it is more powerful if you do so directly on the Game Engine.
      When you animate in your software you define key frames which determine a specific pose of the skeleton in time. Whatever you don't manually "specify" gets "imagined" by the software and recreated by interpolating the positions of EVERY vertex on your mesh from one point in time to another.
      If you export your KEY POSES only, and then complement this by Interpolating in between them IN the GAME ENGINE, then you can control HOW these interpolations happen in realtime.
      If I use unity as an example, when you import a 250 frames animation, each frame has a specific instruction set of how the skeleton is posed, meaning you have 250 different sets of instructions on your animation data that Unity will read when playing the animation.
      Today, computers are so fast that we can do the interpolation in realtime, so we could instead only import an animation that is 7-8 frames long instead, which only contains the KEY POSES of our animation.
      Then in unity, utilizing animation curves, you can CODE how these animations interpolate based on the animation curve you added. These animation curves can then be easily edited in realtime, or in the editor. Ultimately this results offering a lot more controls to the devs on what they can do with animations, and besides that, it is also easier for animators themselves to work with. This way, your animations are shorter (and occupy a substantial amount less of SPACE on the game data side), and more "adjustable".

  • @LeeAndersonMusic
    @LeeAndersonMusic 4 года назад +3

    Man, I remember playing a very early version of Overgrowth many years ago, and especially then it blew my mind. Even with how simple it was I loved how alive the characters felt. Now over a decade later I find this video to explain why. I didn't know Receiver, another favourite, was made by the same developer. Great video

  • @alexmighty693
    @alexmighty693 5 лет назад +5

    This guy is awesome at explaining stuff. You can tell that someone is really good at something when they make it look/sound easy.

  • @Dahxelb
    @Dahxelb 6 лет назад +4

    I am educating myself to become a game developer. I can't work with graphics much at all, but it's really, REALLY impressive to see how good these animations actually are with such little actual graphical work put into the animations. Just a couple of different key poses that you need for the rig, and run smooth transitions between them. This is great and very inspirational.

  • @nmtkawb
    @nmtkawb 7 лет назад +6

    This is definitely one of the best talks on GDC sessions. It was simple, informative, yet entertaining.

  • @Olina-Live2D
    @Olina-Live2D 4 года назад +57

    FYI. After I finished reading 476 comments (=~ 95%), I figured out the speaker did this technique with his own engine. Some people who left the comments with the experimental of Unity, but not implement the entire animation set yet. One commenter executed it with webGL, he also showed the idea on his channel. I am an animator, not a coder, so... I am not sure I can understand. One commenter posted a github link, which seemed the implement code or result, but it's a fail link... For further research, I arranged some google key words from 476 comments:
    DamagedSplinter: skeletal animation [insert your preferred graphics api] tutorial
    SketchpunkLabs: implimented the idea with webGL
    ruclips.net/video/txQauhLIi4E/видео.html
    ruclips.net/video/ry6Bneu_EWA/видео.html

  • @randomrandom450
    @randomrandom450 5 лет назад +47

    Really cool and interesting. I used to work in AAA companies for about 12 years, as a gameplay programmer and animation programmer. The procedural animations I was making was always to make something precises, like foot IK, spine tracking, head tracking, ropes and tentacles. But 2 years ago, I made the leap to indie, we are very few and everybody lacks time, so I started to use procedural animation to save animators time. Not because our animators are lazy, but we have multiple characters, so making something a blend of like 8 animations, instead of being procedural, might mean that we just wont do it, since it means 8 animations times the number of characters, while procedural animation can be applied "automatically" to all characters.
    It might be just a bias because I know about it, but like the speaker said, it is not that hard, it's just a bit of math and I feel the best way to learn anything, including math, is doing something cool with it. I first though it was scary, now I love making procedural animation.

    • @LuisCassih
      @LuisCassih 4 года назад +1

      but how does affect on the perfomance to do these calculations for multiple characters? are the differences huge enough to not be worthy?

    • @-BRODEN
      @-BRODEN 4 года назад +5

      ​@@LuisCassih I am not an expert, or incredibly experienced, but what I do know is that modern computers are incredibly fast, and can process an INSANE amount of data. Interpolation and blending is fairly simple for a computer to do, as it is just simple math (adding/subtracting and multiplying/dividing). Keyframed animation still has an edge over procedural in terms of performance, but not by a lot. For the modern machine, procedural shouldn't be a problem.
      If you'd like a deeper dive into the subject, I found an article called "Comparing Traditional Key Frame Animation Approach and Hybrid Animation Approach of Humanoid Characters". It goes into performance about 22 pages in.

  • @kingenidjingeln
    @kingenidjingeln 5 лет назад +5

    This guy is a great speaker, I was clued to the talk even though I'm not a game designer.

  • @muffinberg7960
    @muffinberg7960 3 года назад +2

    this guy is a legend. I remember playing his first lugaro game as a demo from a pc magazine. This was at least 15 years ago maybe more when I was around 10.

  • @prettyskeasy
    @prettyskeasy 2 года назад +1

    I have seen this a few weeks ago and keep remembering it. Its just amazing for me. If I would sit in the audience I couldnt stop cheering.

  • @ClayMann
    @ClayMann 7 лет назад +372

    Super super interesting. I love the methodical breaking down of what is at first glance a horrendously difficult thing to do in games.
    Now I wonder if this kind of approach could solve the armor problem where armor is getting more and more elaborate in games but the intersecting of different armor bits is getting worse and worse. I can't tell you how much it grates on me when I see a shoulder pad glitch straight through a characters head when they reach forward or watching hugely elaborate armors just go into intersecting madness not giving too shits about physics. I haven't seen anyone trying to solve it so it must be a tough cookie to take on. I think I know a guy that could help!

    • @fappylp2574
      @fappylp2574 7 лет назад +58

      Realistically you'd need to inhibit a character's motion range depending on the armor worn. Perhaps one could define a set of maximum angular ranges for each piece of armor and then have the animation somehow be procedurally limited to these constraints. An immediate problem I see here is that for instance very cumbersome armor will lead to shorter maximum step sizes, which in turn needs to slow the actual forward movement of the character. This breaks the rule of the animation not affecting the actual motion, but maybe a compromise can be found.

    • @ZEGTHEFISH
      @ZEGTHEFISH 6 лет назад +64

      You could actually turn the inhibiting factor into a gameplay mechanic for more clumsy armour being perhaps more protective but less motile

    • @philsburydoboy
      @philsburydoboy 6 лет назад +19

      With this you could solve that pretty easily. Just like he said with the spear, for each new item you do a new set of keyframes. Because there are an extremely small number of keyframes to make, you can customize animations to any in-game item very easily.
      The only issue I could see is if you allow complex combinations of items, because then you would have to procedurally generate keyframes for the whole body based on what is worn/held on each part of the body.
      For example: I am wearing chainmail pants, a steel chest plate, a giant pointy helmet, carrying a spear, and have rigid boots.
      This would require his system plus some sort of procedural priority system to choose parts of the different animation sets. The helmet will VERY seriously affect rolling animations while the boots will affect all animations, and the spear will have even more effects on rolling, jumping, and anything close to a wall.
      Very doable, but this changes from a few months for his sustem to almost a year, maybe more, for a procedural version

    • @spartanwar1185
      @spartanwar1185 6 лет назад +27

      Either inhibit movement or make a good PRACTICAL armor design

    • @tiagodarkpeasant
      @tiagodarkpeasant 6 лет назад +10

      yeah make most armor practical, and if there is an impractical one, it is a full set, so all motions are limited, like a power armor, it restrain you movements but increase the strenght a lot, and only makes sense to use full armor

  • @soooooooph
    @soooooooph 6 лет назад +2

    Character animation always seems so daunting to me, but this was so clear and so enlightening, it blew my mind.

  • @mildpass
    @mildpass 5 лет назад +4

    Great talk. Played an overgrowth alpha a while ago and recall being very impressed with its animations. Now I know why. Was really impressed with the usage of interpolation methods to animation.

  • @firehot006
    @firehot006 3 года назад

    I bet when he was giving the talk he didn't think that hundreds of thousands of people would end up watching this. Amazing talk and incredible work!!

  • @huh_wtf
    @huh_wtf 2 года назад

    This is simply brilliant. The movement looked so organic, specially the ragdoll is surreal. Incredible genius my man. In awe completely.

  • @MikeCroswell
    @MikeCroswell 5 лет назад +1

    Still valid almost six years later. One of the best talks on procedural animation at GDC!

  • @wessmall7957
    @wessmall7957 5 лет назад +1

    The amount of information in this 26 minute talk is amazing.

  • @tomascampo2283
    @tomascampo2283 10 месяцев назад +2

    man, overgrowth is an amazing game, you did a fantastic job

  • @RazaButt94
    @RazaButt94 6 лет назад +2

    To see this talk is from 2014, it simply blows my mind just how much he would have progressed since then! :D

  • @Breadman-k6d
    @Breadman-k6d 4 года назад +1

    Immediately recognized "Receiver", which I have played for 17 hours, and thought: oh how cool that he has taken inspiration from that game - until he moments later revealed that he was the creator of it. Mindblown

  • @Icewind007
    @Icewind007 5 лет назад +1

    Holy moly, I am a new game developer and this is going to directly affect how I am about to do a lot of things. I am so glad I watched this.

  • @kerynadcock2226
    @kerynadcock2226 4 года назад +2

    Dare I say: You're a genius young man! Thank you for sharing your innovative approaches.

  • @demetresaghliani9048
    @demetresaghliani9048 6 лет назад +46

    As a beginner, how would I go about doing this? Do I need to create keyframes in, say, Blender, and then import those into, say, Unity, and interpolate between the keyframes however necessary within the game engine, or do I create the animation inside Blender and then choose which frame to scroll to in Unity?

    • @Ertie
      @Ertie 6 лет назад +44

      Keyframes in blender, then logic and physics and math and stuff in the engine

    • @arthurfacredyn
      @arthurfacredyn 4 года назад +6

      I say, contact the dude, his info is at the end of the vid

  • @TheSssarasss
    @TheSssarasss 3 года назад

    he's an expert on this he worked on this game for many years I played the game is amazing and you can see how much love is put in this game, those people are pure artists

  • @Bloodywasher
    @Bloodywasher 3 года назад +2

    I have admired overgrowth for years and been waiting for it to be complete. It's soooo good and inspires me to meet my goal of a 1 man dev team. I know i'm gonna have to cut a lot of corners while mastering the basics but, it's working so far especially with people like this fine genlteman out there.

    • @Bloodywasher
      @Bloodywasher 3 года назад

      Physics and mechanics in games have always inspired awe in me

  • @kenneydude14
    @kenneydude14 4 года назад

    i played the psychic bodyguard game many years back, and have been searching every now and then for years to find it and suddenly i see a gdc talk and there it is, presented by its creator. glorious

  • @gimmemovieth
    @gimmemovieth 3 года назад +1

    This is the most inspiring GDC talk I have ever watched.

  • @TheAmbientWarrior
    @TheAmbientWarrior 6 лет назад +2

    Wow I think this just became my favorite GDC talk.

  • @Marcos10PT
    @Marcos10PT 3 года назад

    I am grateful to witness such a manifestation of ingenuity. This guy is in his own league, one of the greats among us. Much to learn from him!!

  • @MrSonny6155
    @MrSonny6155 5 лет назад +1

    I saw when this game first became a hit and played the demo right away. It was legit epic, super fun. Now that I understand all of this magic, I'm somehow even more impressed

  • @FrancoSciaraffia
    @FrancoSciaraffia 7 лет назад +43

    Oh man, i need to rethink my entire life now... Loved this talk!

    • @CherPsKy
      @CherPsKy 6 лет назад +4

      Sargas Evigmae How did it go?

    • @Gurem
      @Gurem 5 лет назад +6

      Seems he's still rethinking.

    • @catinwall4256
      @catinwall4256 4 года назад +1

      @@Gurem I hope he has a rethinked life now.

  • @Cedar77
    @Cedar77 6 лет назад +1

    You can see how excited he is about his work and the work of others!
    He got a passion! :)

  • @LouisHong97
    @LouisHong97 7 лет назад +72

    what a great talk. extremely engaging throughout

  • @cloudshaifr
    @cloudshaifr 3 года назад +1

    a game i dont see mentioned enough that had a very great animation system was [prototype] while i assume it was adapted from a combination of hulk and spiderman, it still had a very unique way of animating the character, and i would endlessely play just to see the various animations that existed, such as how he handled maneuvering over cars and one big thing I enjoyed that no longer exists even in the miles morales game(latest spiderman i played) is the feeling of building momentum and maintaining it while the animations kept up.
    very insightful video and a like and subscribe as well for all designers wanting insight into the beauty of animations.

  • @LouSaydus
    @LouSaydus 6 лет назад +3

    I've done a lot of work in CSS animations and transition curve have been absolutely essential, and awesome, to getting clean looking animations. I've always wondered why games use complex animations with tons of data in them instead of relying more on transitional curves. Now I know that not everyone is taking that classical approach. I hope more developers pick up on this and start using these techniques, they produce excellent results when only a single person is working on them who has no professional experience or teaching on the subject. Imagine what would be possible if you had experienced, professional artists doing this kinda work.

  • @Lyno_0-q4e
    @Lyno_0-q4e Год назад +2

    Been looking for a video like this for a whole time, this is truly inspiring and cool to watch. I always wanted to learn more about making a character controller like this.

  • @puetsuaworkshop
    @puetsuaworkshop 4 года назад

    I like how he basically know how animation works, so he knows how to program those and make it looks fluid and interesting.

  • @Chris-pv2my
    @Chris-pv2my 6 лет назад +3

    I watch a lot of Game Dev videos, from what's new in a game engine to the animation process, to coding but I don't necessarily grasp everything the person/teacher/video maker is saying (sadly more often then not). This guy makes complete sense and I understood every word he said. Maybe it was how he presented his information, maybe his brain just works similarly to mine in reasoning, I dunno. BUT it was excellent video and I enjoyed the talk and presentation on animation very much.

  • @MiRoDevYT
    @MiRoDevYT 6 лет назад +35

    Is there a way to learn this technic? Any courses maybe or articles explaining this in more detail it’s very fascinating, and could really use it to speed up my workflow

  • @rumfordc
    @rumfordc 7 лет назад +12

    this is one of the most helpful videos i've watched

  • @CloudlessStudio
    @CloudlessStudio 4 месяца назад +1

    If you are making a platformer this is a must watch

  • @Codethe_Road
    @Codethe_Road 5 лет назад +6

    I miss Dave's voice from his updates. Haha. Brings me back to the good ole days.

  • @xthe_nojx5820
    @xthe_nojx5820 4 года назад

    This is absolutely fascinating. I don't understand much beyond the most basic principles of animation and almost _all_ the math goes over my head, but it's cool af. I'll gladly give my money in support of this.

  • @spartanwar1185
    @spartanwar1185 6 лет назад

    This is why Overgrowth has such fantastic movement
    And i've never played it
    But i can feel how the game would move from seeing the lively-ness AND responsiveness of the animation

  • @James-wd9ib
    @James-wd9ib 4 года назад

    I've been following Overgrowth on and off, and this is the first time I've seen the developer and the backend.

  • @_fudgepop01
    @_fudgepop01 4 года назад +2

    hearing that this guy starting humble bundle is like hearing the guy who started patreon say he's the guy that started this small project called patreon. That alone is awesome!

  • @strum007
    @strum007 6 лет назад +1

    My favourite talk on GDC so far.

  • @markemerson98
    @markemerson98 6 лет назад +2

    love simple systems that give complex looking results - bravo

  • @MondoMurderface
    @MondoMurderface 6 лет назад +4

    Its amazing but also very simple when you think about it. Traditional animating software uses blends, IKs, Poles, and constraints all the time between key frames. Hes basically built a basic animation assistant into the game engine and simplified the animations into keyframes. Something more engines should have built in for artists and animators in time.

  • @nicocorrao6593
    @nicocorrao6593 7 лет назад

    Every animator that wants to get into games should watch this.

  • @Oxmond
    @Oxmond 4 года назад +1

    Wow! Great video! Really, really cool animation examples! David Rosen is a TRUE animation artist! 👍🤓

  • @SantinoDeluxe
    @SantinoDeluxe 4 года назад

    i only understood some of this but its obviously superior to layer simplicity as a way of creating complexity than to actually plan the complexity. allow things to happen instead of forcing them, this is profound work.

  • @Nekich12
    @Nekich12 7 лет назад +11

    Great talk! Can anyone point me in the direction of some tutorials or guides on how to implement the transitions that David is talking about in this video? Thank you very much.

  • @Dezomm
    @Dezomm 4 года назад

    Wow. Incredible, and very humbling. Just when I think I know a thing or two about gamedev this absolute god comes down and puts me back in my place. But this is so fascinating! This is definitely the next thing I want to learn. Seems like you can get some fantastic looking results from just one person working with the animating.

  • @jtsiomb
    @jtsiomb 7 лет назад +10

    Brilliant idea. I'll definitely try this approach next time.

  • @Roxor128
    @Roxor128 7 лет назад +30

    Hmm... Interesting! You can go from essentially Wolfenstein 3D type framerates to pretty smooth so quickly, just by being smart about using interpolation.

  • @dblackout1107
    @dblackout1107 3 года назад

    I remember I used to mess around in the demo for this. Loved the physics.

  • @falxie_
    @falxie_ 4 года назад

    I love how much applause he got for this, well deserved

  • @SketchpunkLabs
    @SketchpunkLabs 5 лет назад +4

    At the 6:49 mark, he talks about Linear Interpolation and has 4 points connected. How is that curve applied on the poses? I dont get how the curve can animate two poses. In my testing, I generate 4 keyframes out of the two poses and I can easily lerp between the frames to start making the animation but I still don't get how to use his curve in the animation. It can't be the curve used between each frame. Is that the curve set for the whole animation? Like how much time is spent moving from one frame to another? Thats the only part of this system I'm having a hard time trying to figure out.

    • @porglezomp7235
      @porglezomp7235 3 года назад

      I know this is two years later so it's not necessarily helpful anymore, but I think those specific points are just purely illustrative. Nonetheless, there *are* actually 4 points in the animation despite only having 2 poses, because those two poses are also used mirrored in the animation cycle.

    • @SketchpunkLabs
      @SketchpunkLabs 3 года назад

      @@porglezomp7235 The pose thing I already figured out, my question was how "curves" handle interpolation between poses really. The 2 poses holding 4 points of animation is kinda right. The idea is like compressing animation data down, so for the two poses the leg animation has 4 points for one cycle. To get the complete cycle of one leg, you have to merge all 4 leg positions in the two poses then mirror two so it works right with one leg, then you can mirror that good set of leg poses to animate the other leg with a 50% cycle offset :)
      I figured out my answer by learning a few different Hermite curves work. The trick was to create the idea of a closed loop Hermite curve, where the first frame reaches to the last as its tangent value and vice versa. This means any sort of hermite-like curve can be used to interpolate any animation loop to smooth out the transitions between frames. I posted the code way back when I got it working. Been meaning to do a tutorial on it but haven't had time.
      sketchpunk.bitbucket.io/src/fungi_v5/008_overgrowth_cubic.html

    • @SketchpunkLabs
      @SketchpunkLabs 3 года назад

      @@porglezomp7235 The one thing I haven't fully grasped is how they used a wheel to control the stride? I get that the arc length can help you determine how much distance to travel, but not sure how the wheel can make the legs move further out or closer together depending on how big the wheel is. If it was an Inverse Kinematics thing, then I think I might get how it works but the video had no reference to IK, so I'm still baffled on that part of their system.

    • @porglezomp7235
      @porglezomp7235 3 года назад

      @@SketchpunkLabs I think that's just based on a blend between the run poses and the walk poses.

    • @SketchpunkLabs
      @SketchpunkLabs 3 года назад

      @@porglezomp7235 Rewatching that section and I now see that he isn't really controlling the stride. Its really two sets of poses, one for walk another for run. I spent alot of time thinking about controlling stride and did it using IK while dynamically changing a curved path.
      Incase your interested. fungi.sketchpunk.com/demo/ik/stride_test.html

  • @jasonargo4459
    @jasonargo4459 3 года назад +1

    I've been struggling with how to incorporate this procedural animation approach to 3D assets rendered as pixel art (similar to Dead Cells approach). My best guess so far is that the asset generation is done in something like Blender (which is what I use) but rigging, animation, and rendering are done all in Unity, as opposed to having all of those tasks done in Blender and the animations imported into Unity 1:1. The reason? Parts of the pixel art assets won't translate well into 3D perspective. Take the eyes for instance. It seems no matter how you shape them across the asset's face, there will be camera perspectives that render the eyes with one pixel hanging off one side. To fix that, I'm thinking that I'll need a fixed perspective camera so that no matter what perspective the player has facing the character, their eyes (and other problematic parts) will look as close as possible to a stylized pixel art look.

  • @Akshaizo
    @Akshaizo 6 лет назад +3

    Excellent talk, David. It's always interesting to look into animation and the various choices that go into animation.

  • @SYBIOTE
    @SYBIOTE 4 года назад

    im in awe of the power of programming to create convincing artificial life and characters , game dev is the best

  • @A1exVance
    @A1exVance 4 года назад

    I saw this speech and I got really inspired to give a go to game development!
    I also tried his game, too bad it's still unfinished but I can see where he was going.

  • @KEEYBLADE
    @KEEYBLADE 6 лет назад

    It actually blew my mind, that you need so few keyframes for a more or less good working animation set.

  • @QuietSnake-xs5vx
    @QuietSnake-xs5vx 7 лет назад +142

    Fkin genius...breakthrough man

  • @ProblemBears
    @ProblemBears 7 лет назад +120

    Wow this is great!

  • @chesusjrist9733
    @chesusjrist9733 4 года назад +2

    This is a fascinating presentation, and well executed to boot.

  • @neolynxer
    @neolynxer 7 лет назад +414

    Better animation flow then assassin's creed. In 13 keyframes. (yeah-yeah, and, like, 15 years of development, but still)

    • @neolynxer
      @neolynxer 7 лет назад +15

      MTRredux, IMO, not something to praise: you should save time to make as good a game as you can. This is not 97. It's like writing your own browser to make a website. I'm sorry to say, but Owergrowth, as a game, was not worth this amount of time in development. Yes, animation system is awesome in it's simplicity and system design and works for anthropomorphic rabbits. No one knows how that would look on a realistic human.

    • @scottcourtney8581
      @scottcourtney8581 7 лет назад +58

      +Lynx Lynxov, I hear what you're saying, but that assertion depends on whether his goal was making a game, or making great technology as a source of personal fulfillment. Ars gratia artis, or art as a product for sale? I make virtual things on a computer, or real things in wood and metal, that I could have purchased, because what I really want is not always the result. Sometimes the real goal is the joy and learning of the craft process.

    • @Twitch375
      @Twitch375 7 лет назад +31

      Markus Glanzer
      I'm not sure but it was one guy working probably less hours than a part time job over 15 years. At 20 hours a week that's 15,600 hours. Even if assassins creed was made with 100 people working full time for one year it come out to 208,000 hours. I can almost guarantee more people are involved for longer than a single year and a good portion will do overtime. But that's comparing the games in total. Knowing how many hours spent on the animation system for either game is kind of impossible.

    • @rafaelr6792
      @rafaelr6792 6 лет назад +3

      Just a question,so am i able to do the same in unity?

    • @alxl.929
      @alxl.929 6 лет назад

      EXACTLLY

  • @WestyFilms
    @WestyFilms 2 года назад

    Five years old and still a great talk.

  • @cheekymeeper
    @cheekymeeper 6 лет назад +1

    Please forgive the potentially simple questions, my background isn't in game development, but I'm incredibly interested. Firstly, is he using any particular engine, or is it all something he's made? I understand many engines support frame interpolation, but some don't give much control over interpolation methods. I'm guessing he also does the sensing of obstacles using some kind of collision sphere surrounding the character which when something enters triggers the interpolation to the safety keyframe/s. Also, I've always wondered, how do games do foot placement for animations? As in, placing a foot correctly on the terrain below, changing step height and even body position dependent on surface. Thanks for any answers :)

  • @mehdisaffar
    @mehdisaffar 7 лет назад +3

    Can someone please help me with the bicubic interpolation part? I don't know how to adapt the blend tree in Unity3D to use bicubic instead of whatever internal interpolation method it uses

  • @sarthakvinchurkar
    @sarthakvinchurkar 5 лет назад +2

    But can anyone explain how exactly can I use interpolation and basically blend two animations smoothly in Unity?
    is there an option in the animator window or something? or what?
    (I've recently begun learning Unity and haven't gone much into animation yet as this is what I was afraid of, that I'd have to create loads of keyframes manually, without mo-cap. But now with interpolation it seems easy, but idk how.
    like after I create the basic keyframes, what/how do I do it?

  • @radioactivegorgon2307
    @radioactivegorgon2307 3 года назад +1

    Conclusion reminds me of the old game "Die by the Sword" which removed the need for attack animations by sorta letting you extend and swing on your own. Was honestly pretty fun and I remember spending hours upon hours in arena mode.

    • @blarghblargh
      @blarghblargh 3 года назад

      Check out "Exanima". Sounds similar!

  • @travisshaffer6623
    @travisshaffer6623 4 года назад +1

    I love Overgrowth it's so cool and fun to make levels in.

  • @MiniMatthias
    @MiniMatthias 5 лет назад +1

    Can't wait to apply this to my animations! I always wondered how to get that good rotation jitter without hand animating the entire thing.

  • @Rayeloy13
    @Rayeloy13 5 лет назад +2

    is there any place where I can learn how exactly he did all the steps? or at least some of them?

  • @flyboypuoi
    @flyboypuoi 6 лет назад

    Recognised David's voice instantly, big fan of Overgrowth!

  • @EnRandomSten
    @EnRandomSten 3 года назад +4

    that could actually be a pretty nifty fighting mechanic. have the character go more and more "into active ragdoll" when taking damage or after preforming heavy attacks as an opportunity for the opponent to punish greedy attacks

  • @xHAZ3Rx
    @xHAZ3Rx 6 лет назад +1

    Love the stand to crouch spring

  • @seraaron
    @seraaron 3 года назад +2

    Wait, this guy *made* Humble Bundle! Oh wow, that's kinda crazy to think about :0

  • @BrightBitGAMES
    @BrightBitGAMES 3 года назад +1

    At 07:15 doesn't he mean cubic interpolation? Otherwise the previous linear interpolation should have been a bilinear interpolation, shouldn't it?

  • @jakeb4026
    @jakeb4026 4 года назад +2

    I'd love to see a tutorial on the acceleration tilt and squash n stretch
    sphere

  • @pawpotsRS
    @pawpotsRS 5 лет назад

    I never thought of just two key frames will work using linear interpolation wow. btw I'm really new to rig+anims. he is amazing!!!

  • @VinWeasel113
    @VinWeasel113 6 лет назад +4

    This is so good!
    I can't stop watching this egg become a flipping wall running humanoid rabbit.