Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

BillyBillyBilly

Let's talk animation

This topic is 5277 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey, I''m trying to decide how to do animation. Idealy I''d like to do skeletal, but the arb_vertex_blend isn''t a very common extension for people to have (and it''s a pain not having programs immediately work on computers). There''s also arb_vertex_program which seems to be possessed more frequently. Anyway, what kind of animation do you guys use and stuff? Any information you could dump would be great. Thanks for reading, -billy

Share this post


Link to post
Share on other sites
Advertisement
I use keyframe animation. Uses more memory, and you have less freedom, but it''s faster and works on any GPU.
What are you trying to do? Many games (space, RTS, TBS, etc.) won''t require bone animation.

Share this post


Link to post
Share on other sites
I am doing an RPG and I''m trying to do something like the Warcraft III engine (if you''ve played that). So I don''t need extremely detailed character models or animations.

How does keyframe work? I could just make a bunch of display lists for each frame. That would be easy and very fast. Do you interpolate between the different keyframes? I don''t know how that''d work, without re-sending vertex data each frame, which would be slow...

hrm. *ponders*

Share this post


Link to post
Share on other sites
with keyframing you do interpolate between the two frames either side of the current time in the animation to get your current location.
I dont see how this would be 'slow' as you have to resend the vertex data every frame anyways and the speed hit you'll suffer is probably quite minor if you use something like VAs.
If you are using VBOs then you could use a vertex program to do the work, however keep in mind that for non-hardware vertex shader cards this will be a sub-optimal route if you try to force the vertex data into VRAM, you'd be better off with keeping them as VAs even if you used vertex programs.



[Phantom Web | OpenGL Window Framework]
"i wonder why i do that... type words which are nuffin like the word i wanted every now and badger"


[edited by - _the_phantom_ on May 9, 2004 12:12:21 AM]

Share this post


Link to post
Share on other sites
The only problem with keyframe animation is that they eat a LOT of memory, if you use it as a VA or VBO (to maximize the performance). I use MD2s and I don''t even use interpolation.

Share this post


Link to post
Share on other sites
I was hoping I could just stick each frame in a separate display list. That way it''s in the graphics memory hopefully and I can just call the needed list based on the current frame. But that wouldn''t be very smooth compared to keyframe, I supose.

Share this post


Link to post
Share on other sites
Don''t do that, it takes too much memory.
Instead, use vertex arrays (or just plain begin/end, if your models are too big)

Share this post


Link to post
Share on other sites
ack, you DO NOT want to use glbegin/glend if you want even slighly sane performance with more than a couple of polys on the screen, hand feeding the gfx card is a waste of time and resources, fine for knocking up small things and the odd test I guess but really.. no.

Share this post


Link to post
Share on other sites
_the_phantom_, it depends. If you have like 30 models, with 600 polys each, 200 frames/model, then the memory use can get insane, so sometimes begin/end is prefered.
In my engine, it is user configurable if the drawing is done the VA or begin/end way.

Share this post


Link to post
Share on other sites
I''d actually be very interested to know what model format Warcraft3 models are in. From playing the game, it seems to incorporate: Alphablend/alphakey textures, keyframed animation a la md2, ''hot spots'' (for things like spell action points, and feet for footprints), billboards (for instance gnolls'' whacky things, or the spheres on the Arcane Sanctum), particle systems (some characters emit smoke/steam/bilious green gas).

I''m guessing it''s a warcraft-specific format with a 3ds max exporter. Which segues nicely into another query - how do you make a multi-animation md2 model in, say, gmax? Like most other editors, gmax seems to have no intrinsic support for multiple animations in a single file (although I haven''t tried Milkshape, which I guess would do that).

Skeletal animation is good for ragdoll effects. If you''re not gonna do them, then it''s too much work.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!