Jump to content
  • Advertisement
Sign in to follow this  
fatihtolgaata

About Skinned Mesh

This topic is 4901 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

Hi, I can make animation with skinned mesh. For each animation set, I setup the animation in 3ds max, then I export the animation to a X file. I want to ask you 3 question about this way of animation. 1- I design my character's animation on a flat terrain. I want to add gravity to my chracter animation. So, I think, I must learn how to change position of a bone in the animation set. Is there basic way about it? 2- I am using vertex shader 2.0 for vertex blending. But in some old video card, my skinned mesh animation doesn't work. Can you say another suggestion about vertex blending? 3- In Direct3d SDK example, Tiny.x has one texture bitmap file that have got a lot of bitmaps. But the bitmaps of my character's texture are in different files. How can I combine this bitmaps to a unique file like tiny.x and how can make in 3ds max? regards, thanks.

Share this post


Link to post
Share on other sites
Advertisement
1) For simple gravity, it's common to just apply it to the world transform for the whole object rather than on a per bone basis. Take a look at the MultiAnimation sample in the SDK for an example of setting the world transform of an animation managed with the D3DX animation interfaces.


2) What does your vertex shader do? The most common reasons for a skinning vertex shader not working on older hardware are:

a. not enough vertex shader constants to store the bone matrices. With vs1.1, there are enough constants to store around 24 bones (assuming you aren't also storing the inverse transpose matrices for lighting). Remember that you don't need to store a full 4x4 matrix per bone, 4x3 will suffice.
If your character requires more than 24 bones, then break the character into multiple sub-objects each of which require no more than 24 bones (halfway down a limb usually only has a single bone influence so can be a good place to split - or alternatively separate the extremeties [head, hands, feet]).

b. your per-vertex weights are stored in a type which isn't supported by your target hardware. IIRC GeForce3 doesn't support D3DDECLTYPE_UBYTE4 but does support D3DDECLTYPE_D3DCOLOR for example.


3)
a. Usually this is done by the artist making the textures. IIRC in 3DS Max, you can use a Multi/Sub Object material to have a single material which uses multiple sub regions.

b. Take a look at the UVAtlas functionality in the latest DirectX SDK, those can make better use of space in your texture.

Share this post


Link to post
Share on other sites
In regards to #3, you should check out this tutorial on modeling. It's kind of long, but it does have some neat tricks in the texturing tutorial that will fit what you're looking for I believe.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • 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!