Let me tell you in more detail what i want maybe i am not explaining
it correctly ( i will look at those links) I have been using Blender
for years. I know animation but not an expert. If i make an aquarium i
want the fish to move on their own with their own A.I. (Self-
contained fish.) To make it clearer if i put a rock in it's path, the
fish will move around the rock and if a predator comes into the scene
the fish will scatter away at a high speed then return to normal when
the predator goes. I know this can be done in C++ I won't go into why
i am not using c++ just need to know if i can manipulate the bones in
realtime with python. can't find any info on that but someone must
know how to do it in python. Don't want keyframes just want true bone
animation
Don't worry, I totally understand what you mean by "not using
keyframes". Now that I'm a little better appraised of what you know
already now I can help better. (See, if you were a newbie with no
programming experience who is asking "i wanna make fishies can mv
themslvs plz hlp" my advice would be a bit different....)
There are two ways to do what you want. The first way is to represent
bones as OpenGL transformations. Basically a joint deformation you'd
represent as a translation + rotation. To rotate a bone you'd simply
update the rotation of that joint. Then, when the proper
transformation is in place, just draw the mesh attached to the bone.
This can be done with simply with Python an OpenGL. It's conceptually
simple but the details can be nasty. Also it doesn't look very good.
The second way is skinning. You have a big mesh and each vertex on
the mesh in influenced by any nearby bones. This is more difficult
because a calculation is required for each vertex, and you can't take
advantage of OpenGL calcualtions(**), but it looks much better. Also,
there is no way to do skinning calculations fast enough in Python.
You might be able to manage it with numpy. However, what I do is to
use a C++ library called cal3d. Yes, I had to write a wrapper, but
once I did that I could call everything from Python. cal3d provides
keyframe animation, but it allows you to manipulate bones by hand if
you want. (Given a bone you can call bone.setRotation.)
There's a third way, hardward skinning, but I think that's a fairly
recent development and you'd have to use a vertex shader. Pretty
tough, but probably also the future.
Maybe harder than the actual drawing functions is to export a Blender
model in a format you can parse. (There's a Blender cal3d exporter
out there, so if you were to use cal3d you could use that.)
So, tutorials. Well I assume you are aware the PyOpenGL is a
relatively thin wrapper around C OpenGL, so you should be able to
follow a C OpenGL tutorial in Python as well. Google for "skeletal
animation in OpenGL", you should find plenty, as it's a common, basic
technique. Skinning is a more advanced so there is probably not as
many tutorials on that. For exporting models, I think I would suggest
the studying the cal3d exporter. Even if you don't use cal3d, it
should help you learn what you need to do to export skeletal models.
If you want to try hardware skinning you might look at lighthouse
opengl tutorials to learn GLSL first, then look for something on
hardware skinning. That's hard as hell, though.
Carl Banks