3
\$\begingroup\$

I'm trying to achieve what was done in the game impossible creatures. I will have a skeleton to which I will apply different meshes to i.e. torso mesh, leg mesh, etc. I would also like these meshes to be skinned together at the joints so that it looks like an animal and not like a robot.

Any ideas as to how I go about achieving this?

\$\endgroup\$

1 Answer 1

1
\$\begingroup\$

One way would be to separate all the pices into diffrent meshbuffers, but with the same skin.

so what you realy do is to pick all the limbs you want, and combine them into one vertex buffer and draw that one when needed. so you dynamicly generates this buffer at command from the user.

So it´s basicly a big merger but with diffrent limb options. and if you store your vertexlayout smart you dont need to bother about how you store your vertexes.

ETC - For every vertex save Position, bones, texture ID.

Then you can just push on whatever to build your vertex buffer. and dynamicly set the textures for specific vertexes. and bones aswell. and it will be pretty fast aswell if you combine all this into one drawcall.

\$\endgroup\$
7
  • \$\begingroup\$ Sounds really promising but could you elaborate a little more please. For instance, if I just put all the vertices from the meshes I want into one vertex buffer how does it know not to stitch the arm to the leg or the head to the arm? \$\endgroup\$
    – EvilWeebl
    Commented Mar 18, 2013 at 14:40
  • \$\begingroup\$ if you model all your legs and heads and that stuff separetley, you can transform them to particular bones when pushing them into one vertex buffer. and the gpu dont realy care how you place your vertexes, all it cares about is it topology and how the 3 vertexs are placed. There might be some stiching when combining two parts, but that is up to you on how you design this feature. \$\endgroup\$
    – Tordin
    Commented Mar 19, 2013 at 7:53
  • \$\begingroup\$ here is actualy some detail on how they did it. not realy how i would do it, but it´s worth the read. ign.com/articles/2002/11/18/impossible-development-diary \$\endgroup\$
    – Tordin
    Commented Mar 19, 2013 at 7:58
  • 1
    \$\begingroup\$ you could for instance save some information about that per every limb. so that you know that the 124 ( 0 -> 124 ) is the arm sticing pice, and then the same in another and then you stich them together. but you realy need to be strict about this so that every stiching pice has the same amount of verts. \$\endgroup\$
    – Tordin
    Commented Mar 19, 2013 at 10:10
  • 1
    \$\begingroup\$ yes, sounds correct! thats how i would go with it. if you know which ones it are, you can also control the stiching much better. \$\endgroup\$
    – Tordin
    Commented Mar 19, 2013 at 10:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .