[Music] welcome uh thanks for coming out um I really appreciate it um so you're here to talk or to listen to me talk about Broken Age in the animation style and workflow um let me uh start off by telling you a little bit about Broken Age um if you haven't played the game um it's a pointand click adventure game uh it's a story that deals with a a young boy who is trying to find his own independence and about a girl who is um trying to save her Village uh the way that I'll proceed is I will talk a little bit about my own background just briefly and then I will go into The Inspirations of the Broken Age animation style and then I'll go into sort of the nuts and bolts of how he did it and I'll try to leave uh a little bit of time at the end for some Q&A if anybody has any questions so I have been in the industry
for 14 years um for 14 of those years I've been at Double fine so I have been there uh my entire career um I think in game developer years that equals somewhere around 800 years I would say um I'm the Yoda of the studio uh the hair growing in my ears now and bald head everything um in my time at Double fine uh I've I've had several roles U primarily animation but I've also done rigging um and character modeling as well which came in handy uh during the pre-production of of this game uh just briefly I worked on Psychonauts as an animator Brutal Legend uh Once Upon a Monster I was the lead animator on that game uh Costume Quest did some work on that uh middle manag of Justice which was uh the first time I'd done uh some 2D animation professionally uh and then autonomous which I don't know some of you may have heard of
autonomous um worked on that with Lee Petty and hacken slash um was also 2D so uh having that 2D and 3D experience actually came in handy uh with this with Broken Age so let's go ahead and get started um in 2012 after a 13-year break from the point-and-click adventure game genre Tim Schaefer saw an opportunity through Kickstarter to um return to that genre and and um he ran a successful Kickstarter Campaign which you may have heard of and the game that came out of that uh was Broken Age Tim tapped me early on and asked me if I was interested in coming onto the team and uh lead the animation group and come up and develop uh the animation pipeline now I had worked with Tim on two other games Psychonauts and Brutal Legend um totaling almost 10 years um of my life Tim told me this would be a short game um probably one year long um so we are
now three years uh my relationship with Tim is is I I love him very much but when it comes to working on his projects I feel much like this woman at the end of this ride I'm sure she still loved her son just like I loved Tim at the end of the projects but they can be difficult uh and painful at times but also very rewarding so Tim knew that he wanted the art of the game to be based off of Nathan Staple's art style Nathan had been at the studio for uh even longer than I had um and Tim had always really appreciated his work and uh I was very familiar with it these are actually three just three these are three paintings that hang in my home that he did so I was really excited to be able to come onto a game and actually uh develop an animation system where we'd be able to bring his
style um to life um early on in the process uh we had some studio artists uh lee Petty who is the art director on the game Scott Campbell Nathan Stapley uh Peter Chan they were all doing uh just some character mockups I was not on the project yet and but I was monitoring the forums we have some internal forums and I was keeping an eye on those forums and just seeing what kind of styles they were coming up with um just so that I could start thinking about what type of Animation we'd want to do uh we did know at this point we weren't going to do 3D but that's that's all that we all that we knew uh lee Petty who I mentioned before uh he and I were taking our lunch breaks and we were going into the one of the back rooms and we were doing just um some drawing sessions and for a couple of those sessions we were focusing on um sort of a mid-century modern style a very somewhat limited um but really beautiful designs uh UPA which you may
have heard of as one of the studios that's known for that and then I was also really interested in Charlie Harper at the time the late illustrator Charlie Harper I thought his Silhouettes were really bold a really graphic style but also very expressive um and I thought it could actually work uh if we ended up going with Nathan style which is very painterly I thought it would work with those backgrounds uh then I decided to start doing some animation research started looking at the old uh Lucas Arts adventure games um when I started looking at those I realized though that they were extremely limited back then really beautiful in their own way but most of the animation was probably about five frames per second I knew that we wanted to have more Fidelity than that for this game so at the time I was playing um year
walk as well as uh Machinarium and I really appreciated the um the uh I really appreciated the level of puppetry that those games had but I didn't want it to feel like paper cutouts um Rayman Origins came out around the time that we were starting to develop our pipeline uh I knew that we didn't need it to be that fleshy this was an adventure game it wasn't a platformer it didn't need to have that much squash and stretch but we took a lot of inspiration from the game and from the UB art pipeline uh one of their animators and art directors actually did a talk at GDC couple years back which was uh very inspirational in um in what we did I also looked at Shadow puppetry um I didn't I knew it wouldn't we wouldn't want something as stiff as that but definitely took some inspiration from it eventually I went to Tim and I said
Tim well what you know what do you want to see um in this game and you know I I wanted to get his thoughts and his thoughts were do something cool that's what he that's what he told me um and my response which is typical is throwing an angry Furrow in his Direction but eventually I realized that was the best advice that he could give me um he gave me the opportunity to explore creatively without boxing me in and so I really appreciated that so our discoveries uh the art styles had expanded quite a bit I knew we' need lots of expression and Fidelity in this game we wanted to show off bold Silhouettes it would not be a 3D game so each view had to be have a very nice bold uh silhouette uh it needed to be compat compatible with many of our current tool tools that included
modeling animation and rigging as well as implementation we didn't have the budget or the time to build an entire new uh Suite of tools um we knew we were going to go with 2D planes and then we're going to use Alpha channels uh for the soft edges because we wanted to preserve that look of Nathan's painting style and after talking to the programmers it was decided we should use a runtime joint driven system um we would get huge memory savings a much smaller uh memory footprint it would also give us the Fidelity that we wanted uh knowing that we were going to get lots of dialogue that we would be animating too so my advice listen to the programmers they are probably better at math than you are um they have the numbers to back it up and we would introduce a new system called flip book animation and all that is it's pretty simple it's key able
texture planes that you can just you can just turn the visibility on and off so we'd go with a hybrid approach which we call 2.5d that can mean different things at different Studios but what it meant at our studio was flat layer texture planes with transparency and they're they're bound to Joint chains um and each piece of geometry could be turned on and off the visibility could be turned on and off next we need to decide how many views we would need for each character to get the desired Fidelity so this was an early test when Tim did the kickstarter he didn't have a story he didn't have a design he didn't have any treatment he wanted the backers to experience um building a game from the very beginning even before there was an idea and so we couldn't just sit idle as a team and so we came up with this scenario which is uh we called the Lumberjack and the Hipster Lumberjack um
actually ended up in the game because the backers loved him so much he went through a little bit of an evolution but this was sort of the first prototype version of hipster Lumberjack it's the first model uh that we built out and it's the first rig initially we thought we were going to need to do three separate rigs for every view uh but ultimately with this test we proved okay we can get away with just one rig and we would just put all the views we'd put the front the side and the back views all on the same rig so you can see here I did this really simple walk um and then I'm just turning the views on and off each each different View and I did very little changes to the actual animation you can see it's a little janky on the ankles and stuff but it did prove out that we could do it um so really quickly so what we have here I decided okay well I I see that we can have a front side and back but how are these going to all work together or
would we be able to overlap the the um the flip books and so I did okay let's do a turn a 180 turn because the head leads and then the body comes along and then the then the legs come along after that and so there's very actually very little joint animation here it's it's almost all um just flip books turning on and off you'll notice though that the arm travels across the body and then just before it gets to the back view it pops back into the position that that it was in before here it is a little bit slower and so the character is in the same view is in the same pose front and back it's just the flip books uh are turning on and off next uh we decided okay we're going to have a lot of dialogue let's do a quick dialogue test uh so I don't know if you know who Chris Remo is you might know him from idle thumbs the podcast he
he was nice enough to do some scratch dialogue for us and uh we ran this test with no sound that's interesting um well it gets the point across um that's just flip book mouth with um joint driven everything else is joint driven except for the the mouth is all flip books hopefully we have sound for the other slide I hope when we get into the cut scenes um okay so front side and back view you'll notice though that we didn't do straight on views we didn't do like a we didn't do a totally front-facing face or a totally profile face or a total straight back view uh and we did that because we didn't want the characters to flatten out against the backgrounds and so it just kept some dimensionality on them all right Char modeling a character with this system super simple uh would
take just a few hours to model a character out so what the 2D artists would do is they would create a character and any piece of the character that needed to be on its own plane they would just break out and so it was this this exploded view and we would take that exploded view and we just bring it into Maya and we would build planes around that view and then we just UV map uh the textures onto those planes so it's very simple uh most of the work was in all the painting um but actually building the the model didn't take very long let's do a little bit of a close-up on how we did the eyes and the face if you look we just did proper Edge loops around the eyes because we knew we wanted to have a lot of expression in the eyes all we're going to have was eyes and mouth for facial expression really um and so we we made to do proper edges just like if you did a 3D
model uh you'll look here um we cut a hole in the eye socket and the reason for that is we wanted the pupils to be able to be obscured by the the skull or the Brows however you want to put it um and then here's the whole face broken up you'll see those are the eyelids and then what that's what we call the eyeball plate and then there's the pupil and then the specularity just sat on top and those are all just separate planes and I like the specularity being separate from the pupil because when the eyeball would move around I didn't want the light of the eye or the specularity of the eye moving I wanted it to stay in the same position as if the light stayed in the same position and the eye would move it just gave a nice round uh wet look to the eye uh rigging a character pretty simple um rigs ended up being about 20 to 60 joints we were asked to hold off to to not go over 50 joints but occasionally
we pushed it pushed it into the 60 range uh what you're seeing there is uh we added it we wanted ik on the legs and we added an extra control up at above the ik leg system so that we could we could pull the legs either out but mostly we could pull the legs in together so if a character went into profile the legs would be close together uh we broke the arms out as separate um they they're not attached to the body but then the clav though let's see if I got into that I can't see it here on my monitor so I have to look up there and the reason we did that is so the arms the shoulders can actually go across the side of the body to give the feeling the character would be turning and then I wanted the clavicles though to still be attached to the Torso and deform just to give it more organic feeling as well as the um spine and then we could do some scaling in the spine as well we could do non-uniform scaling which was really nice we could get some caution stretch
uh and the head was also separate so that we could move it in X Y and Z translation okay so what you're looking here this is uh this is our flipbook system working with the joints you can see when it turns into profile all it is is just flat plane and this character has uh so if you look at the bottom of the of the character not the head but the bottom it's actually just flipping between a front view and a side view and then the top is using three different views which is a a front view a side view and a back view and it gives it almost a 3D look to it here it is with just these are just uh these are just the planes without any texture on it in the First Act of broken AG we actually did not have a very good flipbook system for turning them on and off so you'd have to go and dig through
all these menus in the channel box and you had to manually key it but then for the second act because we found that to be such a pain uh one of our TDS built this system for us this tool for us that would organize all the flip books and um you could filter them if you wanted to and then all you had to do is is just click on them you could even scroll down anytime it goes yellow that means it's turned on if you have auto key set it just automatically turns it on and off and sets a key for you and so actually sped the process up um dramatically okay so let's look at the uh head and facial setup so if you look at these two characters when we rigged the head up we made sure to use World orientation and the reason we did that is because we wanted to scale the character if the character wanted to look from left to right we would just scale everything INX and we would hide that uh the pop
just by adding some squash and some stretch to the to the head you know blink the eyes um and that hid most of that you can see it here this is just with the planes turned on with the textures turned off you can see when the eyes blink there's just a flip book that turns on so it's a pretty simple system but it's effective okay viim yet um so the character the way that the malous worked on the characters is we would just do replacement animation just like you would in certain like stop motion films um we didn't have a lot of you could scale the mouth a little bit because it was bound to um a mouth joint but mostly we just turn the different uh vzims on and to the 2D artist would send us this VM set we would then map that onto just a geometric plane each one separately and then we would bind that
to a mouth joint we ended up only doing front view we thought oh we'd need to side view too because characters talk when they're to this you know when they're facing sideways um but we realized you could just scale the mouth a little bit and that worked just fine and so that saved us quite a bit of time do we have sound Head East there is an extremely territorial snake in the other direction gotcha okay so that's just a test um just showing how the flip book mouthes worked with some dialogue all right animation types so we had kind of three main animation types we had fully animated cutscenes which are all hand animated and vignettes and vignettes were a fully animated cutscene but with no camera the camera was just using the game camera and usually gameplay was still going on but there might be a couple of characters doing something together in the background so we considered those vignettes we did scripted cutscenes um which was
we would build those I'll go through each of these by the way uh those were built using what we called canned animation which is pre-authored animation and I'll show you the huge Time Savings that we had because we used that system and then stance animations which would include any kind of like a breathe also Locomotion we considered stance animation let's talk a little bit about cutscenes and vignettes so this was a 2d game uh everything was flat with the illusion of depth and so what we did is so with our camera we were very limited so we thought of it as a stage our scenes we would try to think of it as a stage but we had a stage with a camera but it was a camera that couldn't be rotated so it could just be moved around like this you know we could rotate the camera like this but there we we're not allowed to rotate the camera um in this direction and so uh so but that worked out great for the most part
but it kind of started getting a little bit stale so we started coming up with some ideas of how we could make the camera a little bit more Dynamic and in this shot I thought you know what it could use a POV shot so I gave it I gave it a try this is the first time we tried it if you watch can't believe she'd leave something this dangerous lying around what's that nothing so was a simple POV shot but it added uh some Dynamics to the scene and um and I thought that it called for it and all he had to do was you would just take Shay and you just drag him out of the way just below the camera and then you just move the camera around in X like that and so it was really simple solution but um I thought it added variety uh so next so our animators kept annoying uh lee Petty I always bring up Lee Petty who's here in the front row um because what we kept doing is we wanted to push
the camera in on characters closely you know because we would we wanted we thought the shots would call for it but what would happen is the backgrounds wouldn't hold up so the resolution would would start to fail and um so we came with a solution of well why don't we just build cutouts or why don't we paint cutouts of those areas that we wanted to zoom in on and we would make them a higher resolution we would just shove have them pulled off to the side in the scene and then your camera could just in one frame cut over to those so let me show you this scene I can't see her anymore forget about the creature we need to move you to a safe location come with me run sh get somewhere safe I can fix this no okay so you saw Shay in front of that red console and you can
see the small version of it there in the middle kind of in the middle in that middle scene and then you can see the high res version of it off to the side and so this is actually what was happening I just pulled the camera way back so you could see what was going on in the scene without the cameras I can't see her anymore so she scaled up we need to move you to a safe location come with me oh there run sh get somewhere safe I can fix this no such a simple solution to a problem that we had um and so our characters are popping they pop all over the place especially if you look to the on the other side you can see I wanted to do some um some reverse shots and so we' build these these extra little plates that you could put the characters in front of just scaled up and then the resolution held up for
us uh we did we would generally do a three-stage animation process process for our cutcenes uh you know most people are familiar with it we do a layout pass um and then a blocking pass and and then and then a Polish pass and just I'll just keep can do we're pulling out no I need to save this last one don't make the same mistake you did last time boy said you trusted my instinct right I I don't understand what is it about this creature I don't know but it's important and so when we got to this stage we could have Tim Schaefer who was directing the game um and he wrote all the dialogue he could he could watch these and give any feedback early on and that way we wouldn't waste a bunch of time doing animation that he didn't actually want in the scene and then um a blocking pass would look something like this do we're pulling out no I need to save this last one don't make the same mistake you did last time boy you said you trusted my instincts right I I don't to understand what is it about this
creature I don't know but it's important you see those white dots on the back of Shay's head those are actually his specular highlights they just didn't get turned off that like bothered Tim for two months every time we' we we'd play the game he'd see that and he's like when are you going to turn those off and well when we do polish we'll turn them off but just just to bug him we kept him there um and then uh final would be the Polish pass that's all we can do we're pulling out no I need to save this last one don't make the same mistake you did last time boy you said you trusted my instincts right I I don't understand what is it about this creature I don't know but it's important okay okay next uh scripted cutscenes okay so scripted cut scenes I mentioned uh we would use pre-authored uh talk animation and pre-authored gestures we called it canned animation and we would then put those together in
what we call the cutscene editor and I'll show you a little bit of that in just a minute so this is just Shay we generally do three talk animations I'm sorry I use the word animations I know that bothers some people but um we' do a 40 frames a 90 frames and 130 frames um just so that we had variety depending on how long the uh the dialog was uh we didn't have the we didn't have a blending system because the flip books there's no way for us really to blend from one flip book to another U so we had to get creative so that thing characters wouldn't pop back into their default pose but everything would return to their default pose and then we do these gestures a nod positive a nod negative shrugs and points um just on a side note if you look at Shay doing when he was doing his nod this is it looks pretty 3dimensional but all we're doing actually is just deforming the geometry with joints up and down and it gives gives it that illusion that his head is actually U
nodding up and down I just thought that was an interesting thing I'd point out this as a side note okay so um this is a the cutscene editor um it's a custombuilt tool that we have used uh since Psychonauts actually and Tim's games have outrageous amounts of dialogue um this game actually had five hour with act 1 and two we're looking at five hours of scripted cutscenes and those were all generated by one animator so um it's a pretty effective system as long as you have the canned animation to work with you can see that it has the characters who are in the scene you have the girl uh which is Vel and then the tram priner and then it has the dialogue in there it has uh the uh anim each animation is in there that that it's to use the cameras were actually not Maya cameras you can see
there's a camera track those are cameras that were set up in the game and that the game uh sees each of those and then it moves the camera to where it's supposed to be uh we weren't allowed to do panning cameras with scripted cutcenes you just have to just pop to the different scenes so you are limited by what you can do but it sure saves a lot of time um here's an example we use these a lot for dialog trees actually which Tim's games have a lot of sound your name well yeah but my dad said hey losing an a is better than losing an i your dad's pretty funny he used to be before he joined this cult oh whoops did I say that too loud hey is there any way off this Cloud think I'd be here if there were we used to have a cool feather V that went straight down the Forest below but Harmony took it
out so it's pretty effective um I mean it's it doesn't have as much Fidelity as as a fully animated um cut scene might have but it definitely do does the job okay uh if you notice there was lip sync during all those and we did not have the time to uh animate all the lip sync so let's see so act two of Broken Age we're looking at 47,000 over 47,000 words most of those would have to get lip sync and we were a pretty small team and there's no way that we could pull that off by ourselves so we use an auto liping tool and it's a third party Tool uh by anos Soft It's very effective what we would do for this game is the 2D artist would give us a visim set we would then take that we would just map it onto a plane and put it onto the character bind that to a joint we would then use what we H this is an
internal tool called the animation toolbox and what this does is this lets us save poses out on specific joints and in this case is a joint and a flip book and so these are those are our phon sets that we've set up which are just poses that are saved we then take those those phones and we match them up with the software's phon names if you look that like the a has AE a a aw and a y then we take that and we open up our custom interface that we we've built for the software and you can actually bring in the line codes from the dialogue database and what it does is it looks at the line code and then it looks at the waveform and it also looks at the text and it generates a um a uh it generates a Maya file and that Maya file you can just actually open it up and make any
changes if you need to but if you open it all you see is the mouth just moving and talking so here's an example of one that an animator hasn't touched just to the arcade keep my own high score on three hyp I was like if I can do that I can do anything right so that's Gus uh that's actually voiced by Pendleton Ward from Adventure Time if you recognize the voice um if you want to know any more about uh our dialogue system Anna Kipnis our lead gameplay program is giving a talk this Friday it's a really good talk it's on our entire dialogue system um what we've been using for years so if you have an interest in that go see that talk all right player Locomotion I mentioned stance animations which include player Locomotion very important in this game it's an adventure game a lot of walking um sorry about that so we had West and East directions and we had Northeast and we had Southwest we had
Northwest and Southeast and that's what we were going to stick with we ran some tests and played it a little bit and realized maybe it was a little Annoying to make people always go at an angle and So eventually we added North and South directions um but every direction that we added we needed to author new animation for and not only did we need an an author one speed of Animation we ended up having three speeds of animation in the game so we had a walk um I'll show you I'll show you ex but we had a we had a walk and we had a trot and then we also had a run and these are for our player characters which we have two player characters we have Vel and we have Shay so there were certain times we wanted to use uh walks so here's an example it's a confined space on the spaceship he's walking around we would not want the character to be running around in there probably not even want them trotting uh because the area is so confined and
so the programmer could just lock out um The Locomotion that they wanted to and then to the opposite extreme we have big hallways which that's when we determined we needed to have some runs and so there's Shay running back in forth because you didn't want the player to have to every time walk slowly through those corridors uh they would get bored and maybe stop playing your game what this shows is just this is all velas anoms right here these are all of her walk atoms put together uh so we had eight directions three speeds uh and we needed to author 15 separate uh animations for Locomotion for the player character for her and then for sheay and then for North and North or sorry West and Northwest and Southwest we could just actually mirror them in the in the game engine so we didn't have to author those
[Music] ha hey all right perspective scaling uh that's perspective scaling to the extreme um it was something that was very important in Broken Age uh so as the character goes back in the distance they scale down and it appears that they actually are moving much more slowly um and that was really important in this game because we didn't actually have real depth we were faking it we were Faking It by scaling the character down but not only scaling the character down we need to scale the speed down of the
character as well so let me show you an example of the game with perspective scaling on but perspective but root scaling not turned on so you can see how quickly she moves so she's actually moving at the authored speed that the animator authored her at but when she but she when she scales down it looks it appears that she's moving much faster and so the solution is um is root motion scaling so you'll see here this is feeling much better than it did before feels like she's set back in perspective but I wasn't 100% convinced by it um I thought that it could be improved and so I started doing some tests test um I did this test of just in Maya this is on on one
of the scenes on the beach of a walking on the beach and so ID felt that before the spacing was wrong uh when she was back in the distance and so I ran this test and I got it looking to where I was pretty pretty happy with it and then I took it over to to I showed it to Anna uh Kipnis who is our lead gameplay programmer and I also sent her images of the curves so that she could see how the curves were you know it's s very gradual and then it speeds up and then not only that in this game these this is theur curve of the scale of of Vela and so we had a global scale node that would allow the animators to to scale uh the entire character up or down um because we were using perspective scaling uh and force perspective so here it is it's a little subtle but I think you'll see the
difference this is it with the New Perspective the root scaling that Anna set up I just felt like it gave it much more depth than it did before okay so we were getting near the shipping the First Act of Broken Age um we were running the game it could run at 60 frames per second cut scenes were running at 30 frames per second because they were authored in Maya but the game could go up to 60 frame per second during just when you're just walking around um and one day I C one day I came in and Oliver frsky who's our lead game or lead programmer he was messing around with this pixelized pixelated version of the game G and when I saw this um I was pretty
intrigued and I actually saw a cutscene play and I felt like um everything felt cohesive suddenly and so we started talking about it and what we realized is that the flip books were clashing a little bit with the game when it's with the character and the joint with the joint driven animation um because you had one thing just you know that was so such such a stark change and then you had the joints that were you know looked like they were being interpolated by the by the computer at 30 to 60 frames per second so this is what it looked like this is probably running close to 60 frames per second like it looks cool looks really smooth but it doesn't look um very hand done it doesn't look like hands touched it I I felt and so what we did is we resampled the animation down to 15 frames per
second can you see the difference this ended up working a lot better I felt especially in the cutscenes when the when the flip books would turn on and off um there wasn't such a stark contrast between the joint driven um geometry and then the flip book driven geometry so it's it's a subtle change it was actually somewhat controversial some people didn't want to do it and some of us wanted to do it uh but we ultimately won and um and we went with this so we thought we were uh we thought we were golden at at this point um but then uh we watched one of our cutscenes play which is this one you'll see what we ended up with that that's what we ended up with um and so my hopes were somewhat dashed for a moment that we weren't going to get to resample to 15 frames
per second because of that and what's happening is the characters animation is resampled down to 15 FR frames per second but the camera is not so the camera is still running in this case at 30 frames per second this is an old animation problem if you had a background plate that was moving uh on ones but if you had your actual animated character on twos you'd get this horrible strobing effect and so what Oliver did is he uh went in and he set he set it up so that the character's root motion would actually move at 30 frames per second or 60 frames per second whether it if it was a cut scene it was 30 if it was in-game it was 60 um so the root motion actually would not resample uh and that worked this is what we get when that happens a so then it's nice and smooth so the
character is actually moving at 30 but her all her Limbs and everything are actually uh animating at 15 frames per second and and that was a great solution for us okay so one of our biggest headaches um on this project we had no zdepth buffer and the reason we didn't have the z-depth buffer is we one of the big reasons we needed the memory for transparency we needed it for the transparent textures um and everything is pretty much a painting in this game and we needed as much memory for that as we could have and so we chose to drop the zdepth buffer um that caused a lot of Animation bugs because the engine didn't know how to sort uh all the different planes that we had created if you rotated them at all other than uh what we called Z which is the Z rotation like this if you rotate them at all towards the camera um everything would
just blow up we had a couple of animators that were um having a hard time with this because when you're working in Maya we're actually using a 3D camera and it and and you would turn the uh you turn the camera and it looked fine there there wasn't any problem You' you could even turn the head a little bit on it on the character and it would still hold up but this is the result that you would get okay that's enough what do you mean that's enough I mean enemy ships are approaching I don't see anything I need to save this last one you're going to endanger the whole mission to save one creature just give me a second so you can see we we ended up with lots of bugs most of our bugs in the First Act was because um animators thought that they could rotate things however they wanted to um but that's the result uh that you would get even just a even just a little bit um it would it would just explode like that um if you
want to know a little bit more about that Oliver frony his website he actually has some papers about it and you can go and find out more technical details about that system um you might find that interesting if you're a TD or programmer okay so what we learned from this hybrid approach to mold your pipeline to your current tool set um we found that that was very important we knew how to use our tools our animators knew how to use the tools and so why start over if you don't have to we got a huge performance advantages from using uh joint deformation versus um Sprite sheets it was a really easy ramp up for 3D animators except for the rotating the limbs the way they weren't supposed to that was the only exception to that uh joint driven deformation it it really allowed the the Fidelity that we wanted in this game and that that made Tim happy uh the 15 frames per second felt that
that Blended really well with the flip books it was kind of a last minute decision but we went for it and I'm glad that we did the scripted cutscenes it will save thousands of Animation hours um it truly did save us and it's what allowed us to to make this game and to complete this game um and also I do need to mention we had an Outsourcing team up in um Oregon in Portland uh called Super Genius and Alex Yao and his team team did an amazing job for us um so we worked uh in tandem with them uh to finish this First Act and the second act that we're almost done with so some problems additional flip books you know whenever you'd need a different flip like if you needed a new hand you had a point but you maybe you wanted them you know some horns uh you would have to suggest you'd have to ask um a a painter if they could do that for you they would then paint it up we would then have to have a TD um apply that to a text or to a uh geometric plane and put it onto the
character so there was you know that was a little bit of a problem but not too bad if you're communicating well uh and then the using transparent objects required us to lose the zbuffer and that was U probably our biggest problem as far as animation goes but we worked around it uh really quickly sha memory totals uh these are from our lead programmer he shared these with me this is for sheay um in act one so the rig plus all the you're looking at for you're looking at 10.7 megabytes for the animation the rig is only 170 KB and then with the textures with shase textures 25.3 megabytes um and I think that includes all of his outfits he actually has multiple outfits so that's only 36 megabytes for the for the memory and then if we'd gone with the Sprite sheets which I initially was thinking about we're looking at 15 frames per second um you're looking at 7.4 gigs and so
it's just a huge uh difference so it was a big savings for us as far as memory all right questions I think we have some time pretty sure may we have more time than I want how we doing yeah anybody have some questions yeah hi thanks for a great talk um I was just wondering how did you solve the seab buffer theft bug did you work around it or did you come we worked around it so basically what we'd have to do we had we we ended up writing a script which you could if you had the animation open you could just click on it what it' do is it' remove any rotation uh that was unwanted and that would just go through the entire uh whatever it was a cut scene it would just go through the entire cut scene and remove any for us it was any X or any y
rotation that the character had and that generally fixed it problem for us all right thanks uh Hey so uh you were talking about the matching the phon data with the uh mouth animations I was wondering I think you might have mentioned it uh did you do that before you implemented it into the game or was that at runtime so matching the phoni data with oh okay so what we' do I think this will answer your question we would actually generate that beforehand and that would actually create a Maya file and those Maya files we' export out to the game and then it would play a priority animation just on the uh mouth like like a mouth joint so that's why the rest of the body could move they just play this priority animation on the mouth joint does that answer the question yeah okay great any other questions is that it if you have any other questions I can stick around since we have a little bit of time you can come up um or you can you could always
shoot me an email I'd be happy to to answer them for you so uh I think that's it thanks for coming you guys I really appreciate it
Auto-generated captions from YouTube — names and numbers may be misheard.
Distilling the key insights…
Game Developers Conference · 2026
Jonas Tyroller · 2025
Comments