-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Root bone in OSI #303
Comments
As far as I remember, in OSI the position of the undeflected hip bone is represented by the transformation bbcenter_to_root, also called “root bone”. In OpenMATERIAL, we have implemented the hip bone with a transform in the reference coordinate system. In my opinion, that should be sufficient. I don't understand why we have implemented Grp_Root and Root in the Human structure. In my understanding, the latter should be the hip bone. By the way, the Grp_Root nodes in all structures still have no (T) indicator that would indicate the presence of a transform. Should I add this? |
Oh, then we have a problem that we need to solve urgently! I thought that this is an actual bone in the skeleton and the bbcenter_to_root indicates its position relative to the center of the bounding box. As far as I understand some engines require a root bone, but I might be wrong. @ipg-sig @MatthiasThDs what do you think? About the (T) indicators: I think the Grp_Root does not need a (T) indicator, because there is no transform since it is fixed to the origin of the model at the center of the bounding box projected to the ground. |
Well, since the root bone is already implemented in OSI, we may have to keep it for consistency reasons. The root bone is typically used to move a human without changing its pose. In my opinion, we also have to keep the transform in the Grp_Root (for all classes) and mark it with (T), since Grp_Root not necessarily coincides with the origin. |
@ClemensLinnhoff @LudwigFriedmann Yes, some engines require a root bone and we also defined it as an hard requirement from our (project member) side on the miroboard. So we definitely need the root bone and we also need it to be able to calculate the eye level accordingly. |
@ipg-sig : Does the position of the root bone remain static throughout the simulation? And is there a predefined position? Does it fulfill a function in the skeleton or is it just a "handle" to move the human? |
Does it not? I thought this is fixed? |
Sorry - my mistake. Yes, it's fixed and so we don't need a transformation or (T), just the description of the location :) |
@LudwigFriedmann It remains static throughout the simulation and is more or less a handle on oour side. Position is at 0 0 0 (same as pivot). @MatthiasThDs Wasn´t this also a hard requirement from your side? |
We keep Root Bone, and define it's position at the bb center on the ground. |
Describe the problem
In the human structure we defined the root bone of a pedestrian to start in the origin of the model, i.e. in the center of the bounding box projected to the ground.
In the OSI pedestrian attributes the position of the root can be chosen freely as I understand it. The root position is set with the parameter bbcenter_to_root.
Ask your question
Do we need to specify in the human definition, that when using OpenMATERIAL 3D in combination with OSI, the vector bbcenter_to_root in the pedestrian attributes has to be set fixed to (0, 0, - half bounding box height)?
Or is there a different combination of bbcenter und root bone that would make sense in any scenario?
@LudwigFriedmann, @ipg-sig do you have an opinion about this?
The text was updated successfully, but these errors were encountered: