Sign in to follow this  
maya18222

Animation

Recommended Posts

I've come to realise that there seems to be next to no infomation regarding animation in game, specifically character animation. Sure theres lots on animating shaders and in game effects, but hardly anything on bringing mesh animation files from a 3d package in game,andworking with them. Im aware that directx has the .x file, which is now deprecated, and that you can also bring in the .x file into opengl, with some extra work. But why isnt there any standard animation file that people use? obj is pretty much known to be the standard for static objects, but why isnt there a standard file for animation? We seem to be left with files like md2,3 and 5, which i believe ID came up with, to which people have experimented with to work out the way its implmented, which there are many links to on this site. But this all seems very strange, theres hundreds of books out there on 3d programming, but all seem to avoid the topic of importing mesh animation files, or they'll describe the technique and leave it up to you to implement, which is fair enough, but this also involves you having to make your own plugins for your 3d package, something which again is a massive amount of work, which will involve you partitioning your time into learning yet another field. I know that theres md2,3 and 5 importers/exporters for applications like max out there, but they all seem to be out dated and only work in older versions. I guess every game company has their own file formats, and their own team of programmers specifically for building plugins, exporters/importers etc etc for 3d packages. But where does this leave the novice game programmer? where do we start? scrolling the web for importers/exporters that people have built seems odd for a subject that is so hugely used. Surely these tools should be easy to come by, and there should be well documented file formats,but no. I hope you can prove me wrong about this, and that im missing something. Im looking forward to the release of the following book, hopefully it will help me out http://www.amazon.com/Character-Animation-Direct3D-Carl-Granberg/dp/1584505702 What are people using? Are you making your own file formats and plugins? thanks for reading :)

Share this post


Link to post
Share on other sites
Importing 3d models can be a very often be a very tough thing to accomplish. For this reason many books either fail to include it at all or simply glaze over the code and expect you to be able to make sense of the source ode they provide. This can be very frustrating, but 3d model animation is a subject worthy of its own book. There are many different model formats to work with and each has its ups and downs. Some use morphing animations while others use skeletal animations. I found this book a while back that has a lot of good info on model types as well as code to load many model types for you. The book is a little old and does not cover the latest model types, but should be very helpful in getting you started.

Share this post


Link to post
Share on other sites
Quote:
Original post by maya18222
I guess every game company has their own file formats, and their own team of programmers specifically for building plugins, exporters/importers etc etc for 3d packages. But where does this leave the novice game programmer? where do we start?
You create and store the animation data in your .3ds or .ma or whatever other format you are using.

Then you browse a search result of free 3ds importers or free ma/mb importer, looking for something that includes animation data and is also easy to use.

Next, you do the magic of feeding the model data into your rendering engine. Several of the data importers will put it into VBO or similar friendly data formats, so it's just a matter of feeding it to the card. If your engine doesn't support loading data that way, or if the data loader gives you data in some weird format, then you're on your own.

Finally, when the time comes to animate the model, you take your animation data points that were loaded above, interpolate between the points based on the time of the animation using your favorite interpolation algorithm, and then multiply the bones as described in your books.


Are there any of those steps you need more help with?

Share this post


Link to post
Share on other sites
Dont you mean exporters? if i create the data in Maya, i'll need to export that file, to bring into my game engine. But thats not the problem, the problem is understanding the file that is exported, and creating the importer fore my game.

Or do you mean get a .3ds library for my application, which then feeds me the relavant data from the .3ds, rather than trying to create the library myself?

Share this post


Link to post
Share on other sites
Sorry, yes, data loader.

There is no reason you cannot ship .ma or .mb or other files with your homebrew game, and those files contain all the animation data.

The files are not optimized for size or load speed, but since you don't have the resources to convert them into a native format, there is no reason not to use them directly.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this