View Full Version : game animation
heavyness 06-12-2003, 03:57 PM what are the guide lines for character animations in games? is there any? from research i've done, looks like the animation is either bakes into the verts, or [more commonly now] they are converted with an in-house app to a game-IK.
so i'm guessing there are no real rules, just the ones a studio gives you [like the amount of time the character needs to do something, and how to use there plugin to convert the animation].
thanks in advance
|
|
adavies
06-13-2003, 07:52 AM
there are no constraints as far as i know, not like the old days where there were limits on the number of keys you could set etc. you can have any rig you want and any amount of controls too. just do whatever you want.
heavyness
06-13-2003, 02:19 PM
adavies, thanks!
i was about to give up on this topic. good news to because i was in the middle of an animation but then i thought, i should find out what "rules" there are for video games.
thanks again [nice to hear this from someone in the industry.]
ankheilw
06-14-2003, 03:50 AM
I think that there are a few general limitations and considerations for a game character that might make your process a little different. Since games deal with limited memory, the larger the bones, the more polys in the mesh, and the inclusion of smooth skinning are all things that might affect the way that your animation looks in game.
Generally, joint animations deal almost exclusively with rotations. The root is usually the only bone that should asume translates, but that is by no means a hard and fast rule. This is due, again, to memory constraints. The more channels that have keys, the more memory the animatir takes up.
As for working the rig in your 3d program, you can usually include anything, ik, spline ik, set-driven key, etc, as long as you bake it down at the end.
Just some things we had to deal with on the job.
Hope that helps
Good Luck
ankheilw
06-14-2003, 03:51 AM
Sorry, didn't mean that the size of the joints matters, just the number of bones that you have. More bones=more keys=larger anim file.
adavies
06-16-2003, 08:36 AM
that's true, but, in my experience, games consoles nowadays are so powerful that there are virtually no limits on what you can do and no limits on your rig/number of bones etc etc. and this is going to be even less of a problem when the next lot of consoles are released so i wouldn't bother tying yourself down to limitations like that - just show you can do good and imaginaive animation. why tie yourself down to these limitations when bar is always changing and, as i say, we are already at a place where the size of the aniamtions doesn't make that much difference any more. anyway, you're an animator, who cares about restrictions like that
ankheilw
06-16-2003, 02:54 PM
All true point, the power of console systems is vastly greater than previous generations, and those to come are going to be far greater, but if the purpose of the animation is to actually go into a game, the limitations are still a consideration. If the animation is just for a reel to show low poly character animation, then by all means, go wild. But don't be surprised when a software engineer tells you that the anims are about 3 MGs over budget. What it boils down to is that everything that is art in the game, textures, geometry, characters, skinning information, AND animations have to share memory, as well as exist with CODE. Overall, if you have 24, 32, or even 64 Megs of memory, that boils down to some practical limitations.
All I'm saying is, optimization, seeing what you can do with a minimal rig and then building on to that is a better idea than trying to strip out things that you wanted in there.
Thanks for the discussion...it's a good one.
Woody
adavies
06-16-2003, 02:56 PM
yep, well we must have some pretty funky code because i havent encountered these sorts of limitations yet
ankheilw
06-16-2003, 03:17 PM
Code limitations are definately a consideration. For cinematics, we have a character with 9 vertebrae, driven by a control node. In game, we have three. If you look at the animation files of those 2 skeletons, the sizes are very different. A character whose face is driven by bones has 36 bones on the cinematic character and 12 bones on the game character. I'm not saying that you can't go beyond that, but think about having 3 main characters on a screen with, lets say 40-50 bones each, and add in an environment, dynamic lighting, smooth skinning sttributes, physics calculations of the world and then run animations on the characters, all while trying to run at 30-60 Hz and you are going to have to make some sacrifices somewhere. Is that something that you guys find as well?
Woody
adavies
06-16-2003, 03:24 PM
well i havent seen that, sure, there were more restrictions in the old days, but now you can do some pretty cool stuff, especially on xbox, you'd be surprised. at the number of bones you can get on screen and still have a fair few characters on screen. so much so that i dont even consider bone numbers to be a limitation. at the end of the day, you're an animator, concentrate on the animation and dont worry about the limitations of the technology of the present day becasue that is always changing, you might as well do things as well as you can, think more about the movement than the ins and outs of the thing, it will be different wherever you work - one place youi might have bone limits, other places you wont and they will save space elsewhere. there's not much pouint worrying about it.
ankheilw
06-16-2003, 03:32 PM
Definately good point, but practically, if you are going to actually put something in a game, then you have to determine what those limitations are. If kole wants to do just an animation for a demo reel, then by all means, go all out. But if you get a job at a game company working on a Ps2 of Gamecube title, don't be surprised when you have to work with a limited rig. The XBox is by far the most impressive system of the three major players, but if your target platform is the ps2, then it is a world of difference.
Kole what do you want to do this animation for. If it's for a game, what platform?
bentllama
06-18-2003, 04:46 PM
game aniamtion is not that much different than film animation anymore. you do have limitations with facail aniamtion, but as far as full body anaimtion goes...it is all the same...
I really do not have any limitations that hinder my work. you do need to keep joint count to a minimum, but those minimums rise with each new rev of hardware/engine...
as far as only rotations are concerned...the best systems will let you use translation, rotation and scaling [uniform scaling, cause non-uniform is still a bear to work with in real-time]
kole, i am not sure what you want to acheive with kyour animation though... do you want to show good animation? or a good real-time character setup? if it is the animation, then focus on making a believable character...but if it is the technical, i would say focus on the animation, cause the aesthetic skills are what will get you a gig...any monkey can learn the technical...
Boxsmiley
06-24-2003, 04:18 PM
I'm new to the gaming industry... and the company i'm working for is an independent one. So unfortunetly as an artist I have to learn much of the limitations and technologies that are used for creating games since they have no imidiate knowledge of how things are done. Ankheilw, Adavies, and Bentllama, you guys seem to have a pretty good standing on the industry, especially on animation. If you guys wouldn't mind i would like to ask one or two questions that could really help me out in trying to figure this stuff out. Anyone familiar with the industry is welcome to help as well. =)
Question 1. We are creating an mmog, so inorder for our character to be customizable we have decided to break the mesh into 3 areas. Head, upper torso, and lower torso. That way we can exchange armors, leggings, and that sort on the fly. My question... is it possible for the bone setup to animate 3 seperate objects? or does it all have to be one single mesh? Seeing as how inorder for bones to affect the mesh you must apply a skin modifier to that particular mesh.
Question 2. I've recently heard a lot about baking things and how a lot of times that's how artists get good lighting in a level by baking the light source into the texture, or like you guys mentioned baking animation. What exactly does baking mean, and how does that save you on memory?
Thanks for all your help in advance! :)
ankheilw
06-24-2003, 05:22 PM
Hi Boxsmiley,
The questions that you asked are good ones. I don't know much about question 1, but for cinematics, we can bind several pieces (we usually do 6-8) to specific bones. We are working in Maya, and the smooth skinning and rigid skinning functions both allow for isolated joints to be bound to different pieces of geometry. I'll ask around here for a better answer, but the real answer will very from studio to studio, so you might ask some of the software engineers at your house.
For question 2, there are vast differences in the baking of lighting and animation. Baking lighting or vertex lighting is a process that superceeds that computers calculation of light emission and reflection. SO, for all intents and purposes, the lighting on the objects acts as a texture. This gives you a convinicing look for lit areas without costly calculations. Hoewever, combining this with dynamic light sources that affect the world around them based on their intensity and their position is by far the best solution. Splinter Cell had some amazing dynamic lighting solutions and of course Halo 2 is going to show of some serious XBox horsepower in the lighting arena.
As for baking animations, this just means that you take animations, relationships, controlers, etc. and calculate the actual rotations on the bones instead of how they are affected by any of these. So, say you have an ik leg, instead of trying to calculate that in code in a game engine, you "bake" that down into a forward kinematic solution where the hip and the knee rotate accordingly. Although you can set this as an option, the default is to bake 1 key for every frame so that your animation after the bake is as accurate as possible. This a time consuming process and hopefully will go away very soon. You can then either reduce the number of keys of leave them as is, 1 per frame, for the game.
I'm sure that there are a lot of people out there that know a lot more than me, though, so that's how I see it.
Good luck with your game.
Thanks
Woodman
bentllama
06-25-2003, 05:12 AM
Originally posted by Boxsmiley
I'm new to the gaming industry... and the company i'm working for is an independent one. So unfortunetly as an artist I have to learn much of the limitations and technologies that are used for creating games since they have no imidiate knowledge of how things are done. Ankheilw, Adavies, and Bentllama, you guys seem to have a pretty good standing on the industry, especially on animation. If you guys wouldn't mind i would like to ask one or two questions that could really help me out in trying to figure this stuff out. Anyone familiar with the industry is welcome to help as well. =)
Question 1. We are creating an mmog, so inorder for our character to be customizable we have decided to break the mesh into 3 areas. Head, upper torso, and lower torso. That way we can exchange armors, leggings, and that sort on the fly. My question... is it possible for the bone setup to animate 3 seperate objects? or does it all have to be one single mesh? Seeing as how inorder for bones to affect the mesh you must apply a skin modifier to that particular mesh.
Question 2. I've recently heard a lot about baking things and how a lot of times that's how artists get good lighting in a level by baking the light source into the texture, or like you guys mentioned baking animation. What exactly does baking mean, and how does that save you on memory?
Thanks for all your help in advance! :)
with 3 separate objects you might have a problem in engine, but not in Maya. Maya can easily handle different objects skined to the same skeleton. However, It is vastly different when you try to draw that in realtime. The most straightforward solution I can think of is separating the character into 3 distinct regions [like you stated] and treating each region as a separate object. You can treat each region as a separate object using 2 different methods depending on if your kengine is rendering animation based on mesh deformation [where mesh information is stored for each frame] or whether your skeleton/matrix data deforms the mesh through vertex weighting or parenting/heirarchy.
which method are you using?
Boxsmiley
06-25-2003, 05:26 PM
Hey Bentllama,
OK, so i talked to the programmers and they told me Skeletal/Matrix data to deform the meshes. So with that being said what opinions or suggestions might come from this?
Oh and thanks Ankheilw for your response. I need to research baking some more so that i can understand it better, seeing as how it saves on memory. Thanks again.
heavyness
06-26-2003, 03:27 AM
"Kole what do you want to do this animation for. If it's for a game, what platform?"
"kole, i am not sure what you want to acheive with kyour animation though... do you want to show good animation? or a good real-time character setup?"
well, i want to get a job in the game industry. so i guess i'm asking, what i should focus on? should i do tons of small animations [like planned] or do something else all together? and i'm really not going for animation, more level design/modeling [i hope]. but, knowing animation would only help me in the long run. thanks for the info so far.
bentllama
06-26-2003, 07:08 AM
Originally posted by Boxsmiley
Hey Bentllama,
OK, so i talked to the programmers and they told me Skeletal/Matrix data to deform the meshes. So with that being said what opinions or suggestions might come from this?
Oh and thanks Ankheilw for your response. I need to research baking some more so that i can understand it better, seeing as how it saves on memory. Thanks again.
the easiest way would be to swap out the different sections of geometry... so you would have separate model files for each swappable mesh...
Boxsmiley
06-26-2003, 03:57 PM
Thats just what i was thinking sir! Thanks for all your help! :D
CGTalk Moderation
01-15-2006, 09:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.