[Bf-committers] Collada: conversion from Joints to Bones

Ton Roosendaal ton at blender.org
Tue Sep 5 17:44:54 CEST 2006


Hi,


> I've created a picture to make it more clear:
> http://colladablender.illusoft.com/screens/joints_bones.gif

In this drawing hierarchy info is missing. I assume that joint1 in  
collada is parent to the other 2 joints?
And what do the v1,2,3,4 denote?

What is the meaning of having a joint2 here... if you rotate that  
joint, nothing happens really? In that case this is in Blender a 2-bone  
setup.

>
> 1. When I import those 3 joints, I create 4 bones, so that each joint  
> can be
> rotated. In Collada, when using IK, when I grab joint2, joint3 moves as
> well.

Well, that's a very weird IK setup... what is parented to what, and  
where is the root?

> However, in Blender there Is no 'root' bone (in fact, there are 2 root  
> bones
> now).
> When using IK on bone3, bone4 won't move. The only thing that moves is
> bone1, so it's head is not on the same position as the head of bone2.

In blender each bone that has no parent is 'root'. By default IK's  
don't move the root position, only the root rotation. I guess in other  
programs that's called "pinned" or so. The behaviour as you describe  
here for Blender seems to me fully correct.

The Collada spec doc - only did quick glance - confusingly mixes joint  
and bone... but my impression is that they're identical. For skinning  
for example, references to 'joints' are made in one text, another part  
of the doc talks about 'bones'.
Also samples in the doc indicate that this joint is just the same as a  
Blender bone, defined by a hierarchical set of 4x4 matrices. All  
samples in collada start with a root joint btw.

So, three joints in Collada can just be 2 bones in Blender.

-Ton-

>
> The only way to solve this behaviour is to add an extra root bone  
> which will
> be the parent of bone1 and bone2. I don't think this is a nice option.
> (especially when exporting this scene again to Collada, because you  
> end up
> with an extra joint). As I have not much experience with animation, I  
> was
> wondering if the above problem is not an issue to you.
>
> Also, when exporting the scene without the extra bone is a problem.  
> You will
> end up with 2 joints on the same spot as joint1. (one for the head of  
> bone1
> and one for the head of bone2).
>
> 2. Again, When I import those 3 joints, I create 4 bones, so that each  
> joint
> can be rotated.
>
> As you can see at the table next to the images, in Collada vertice1 and
> vertice2 are both bound to the single joint1.
>
> In Blender there are 2 bones, so what's your opinion about what to do  
> with
> the weights of joint1. Should I simply divide them among the  
> bones(bone1 and
> bone2) created from that joint?
>
> Thanks for the help,
>
> Pieter
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at projects.blender.org
> http://projects.blender.org/mailman/listinfo/bf-committers
>
>
>
------------------------------------------------------------------------ 
--
Ton Roosendaal  Blender Foundation ton at blender.org  
http://www.blender.org



More information about the Bf-committers mailing list