D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] Laptop for OpenGL

 

On Sat, Dec 10, 2011 at 7:50 AM, Chris Tipney <chris@xxxxxxxxxx> wrote:

>
> I am looking to create a 'simple' 3D model of the human wrist and hand in
> block form - how detailed and how many verts/tris depends on how ambitious
> we get. The model has to move as in response to external commands. Initially
> I would be happy for the components to be blocks and cylinders.

I might be able to help a little with this, although not with the
creation of the initial model as thats not my area.

The way i believe you should tackle this is known as bone
rigging/skinning, that is you create a bone structure that represents
the hand and wrist, usually this is in a default pose. You then create
a mesh of the hand that sits directly over that bone structure. Each
vertex in the skin is then associated with two (or more) bones and
given a weight. Once that is done animation becomes quite straight
forward, if you apply bone rotations which rotates a bone WRT its
joint to its parent. Everything else at this point should fall out as
you cascade bone rotations all the way to the end of the current
branch, then you basically apply the skin to the new bone positions
weighting the vertexes according to the bones positions and it all
works ;-)

Blender is fully capable of doing the rigging/skinning and even
applying animations to it.

I have also implemented the above from scratch when two of us write a
full 3d engine from scratch in C# earlier this year, you can see an
avatar i rendered here,
https://plus.google.com/u/0/101634876834713050493/posts/evU4XTbupp2
The original mesh is based on this
http://community.secondlife.com/t5/image/serverpage/image-id/50633i67CB3AB1FF28C428/image-size/original?v=mpbl-1&px=-1
and from that you can see the bone structure (and a low rez mesh on
top) and lucky mesh was already done i just had to implement the
rendering.

For my first attempt i did the skinning in the CPU then passed the
vertex matrix to openGL, modern games are doing the skinning in
shaders on the GPU as they are just better at it. But for a single
hand model, thats not very much work to process so i would keep it
simple.

and oh BTW see this from 40 years ago :-) http://vimeo.com/16292363
(they went on to form Pixar)

You might want to consider doing the entire thing in blender rather
than making a 3D engine for this, unless that is a requirement/purpose
of your project.  You could use python plugins in blender to make a
control API for your hand.


>
> I'm hoping that someone has already created one that I could use with
> permission since 'creating' the model is not the point of the exercise...

Oh, google "blender hand model" and try other variations of that, seem
to be loads of tutorials and examples showing how to create fully
rigged hand models in blender.

> I can (and do) run Linux under VM on my new laptop so I would be interested
> to hear more about this option - is this a possibility?

yes it should just work. the only thing that might vary is the frame
rate, i expect for what you are trying to do it will be fine but as
always ymmv.

-- 
The Mailing List for the Devon & Cornwall LUG
http://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/listfaq