Skinned Mesh Question

Started by
7 comments, last by yuppies 18 years, 11 months ago
how to get the current vertices of the current animation of a skinned mesh? for example i have a animated skinned mesh named sample.x and which has an animation set 0 as IDLE, animation 1 as running and so on, if i didnt specify what animation set to be used the default which is the one extending both arms on the side is shown. Now I want to get the vertices with the current vertices orientation of lets say for example animation set 1. How do i do that? thanks
Advertisement
anyone? or maybe no one understand my question? :)
It's very complex. If I understand your situation correctly, you have a ton of work ahead of you. I wish I could give you some helpful links to tutorials, but I've never happened to find any.

Maybe someone could post a few links?

If you can get your foot in the door, I can help you with much more specific questions. During your struggle, the skinned mesh SDK samples may be of some small amount of help.
How vertex weighting works.
enum Bool { True, False, FileNotFound };
ywah i knw its hard.. but thanks for the reply :)

Is there any other way i can compute the bounding volume of my mesh everytime the animation changed? ( i need these one since my object morphed into some shape different from the original one ), any suggestion would help
The way I handled it was by using the joints. My characters already had collision spheres attached to their feet and hands, but you can also pull the position data from the bone's matrices.

Basically, you could "attach a point" to both hands, both feet, the head, and probably the torso and hip. If you want to be extremely sure of the bounding area, you would really need one on every joint. Each point should have a radius at least as large as the bone it's attached to. For example, the head point should be large enough to contain the model's head.

By animating these points along with the bones (or simply pulling the point coordinates from the bone matrices after you update through the hierarchy), you can construct bounding primitives with them. It also only needs to be as accurate as you want it to be. I only use the hands, feet, hip, and head in my engine. This means if a character was almost entirely off-screen and stuck his elbow-only into the viewing area, he wouldn't show up. I remedy this by just increasing the radius of the torso point. Of course this wouldn't work for all types of characters.

It's not a perfect result. But it's extremely quick.
anyone from u guys implemented a per BONE OBB like the one on this article?
www.seas.upenn.edu/~npelecha/CollisionDetection.pdf
It sounds like you're talking about Rigid-Body physics. If so, that's even more complex work you have ahead of you. I've not made it that far yet, sorry.

I use moving-spheres for all of my physics; no ragdoll effects.
jiia dude

can u post some sample code on how to generete a bounding box using a point or the frame matrices of the bone?

This topic is closed to new replies.

Advertisement