I have just found out about the FBX character import SOP and it seems to be a lot cleaner way of importing characters than going through file > import > fbx.
The issue I am having is I would like access to the bones so that I can rig seperate clothes I have made. I can't find a way to do this so far. Is it possible? I can see the wire bone structure is there on the capture pose.
Thanks, Sean.
FBX Character Import SOP. Extract bones?
5595 11 2-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
-
- edward
- Member
- 8081 posts
- Joined: July 2005
- Offline
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
Thanks edward. Yes I have the joints from the 2nd and 3rd input but I am struggling to get them to work with external clothes. Perhaps the issue is I am just bad at using the capture tools. Usually I would go to the rigging menu and select capture geometry however that requires you to select the root of the skeleton which I can't do.
I also think there may be an issue with the conversion of FBX units to Houdini ones. When messing around trying to capture clothes with the deform it would always scale them up after bone deform by about 100.
I also think there may be an issue with the conversion of FBX units to Houdini ones. When messing around trying to capture clothes with the deform it would always scale them up after bone deform by about 100.
-
- edward
- Member
- 8081 posts
- Joined: July 2005
- Offline
To capture using KineFX, have you seen this tutorial? https://www.sidefx.com/tutorials/biharmonic-capture-kinefx/ [www.sidefx.com]
Note thought that if your FBX file already had skinning weights, you first need to remove them first with an Attribute Delete appended after the first input at set Point Attributes to boneCapture.
If you're suddenly get a scale up by 100, it's likely because your animated pose (third input) into the Bone Deform is scaled up by 100 relative to the Capture Pose (second input) on the Bone Deform.
Note thought that if your FBX file already had skinning weights, you first need to remove them first with an Attribute Delete appended after the first input at set Point Attributes to boneCapture.
If you're suddenly get a scale up by 100, it's likely because your animated pose (third input) into the Bone Deform is scaled up by 100 relative to the Capture Pose (second input) on the Bone Deform.
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
Actually I will just add this last question, though not that important.
I have some morph targets imported on the FBX. I have set them up so that they become active when bones are rotated at certain angles. However I am not satisfied with the way I have got it to work.
I run a python node that goes up the input chain and searches for rigpose nodes, it then collects all the rotations on the relevant bones and adds them together. I also tried to do this in a much neater way by getting the specific bones 3x3 rotation matrix and converting it to eulor but I ran into gimble lock type issues where the axis would flip from +90 to -89.
I feel like both of these solutions are bad and I am missing an easy way to get the posed bone rotation.
I have some morph targets imported on the FBX. I have set them up so that they become active when bones are rotated at certain angles. However I am not satisfied with the way I have got it to work.
I run a python node that goes up the input chain and searches for rigpose nodes, it then collects all the rotations on the relevant bones and adds them together. I also tried to do this in a much neater way by getting the specific bones 3x3 rotation matrix and converting it to eulor but I ran into gimble lock type issues where the axis would flip from +90 to -89.
I feel like both of these solutions are bad and I am missing an easy way to get the posed bone rotation.
-
- edward
- Member
- 8081 posts
- Joined: July 2005
- Offline
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
I cannot get it to work in the way I want Edward. I would like to get something like, if I rotated the shoulder 50 in the x and 20 in the y, it would get x 50 y 20 z 0.
There is a way you can output rotation paramaters in the rigpose sop itself, which would be exactly what I want, however it doesn't account for having multiple rigposes in a chain. It just overwrites the parameter with the last rigpose value. So if I had a rigpose called walk where the leg was rotated by 50 in the x, then after that I had a rig pose called hand which didn`t rotate the leg, then the parameter would be overwriten to 0 in the x.
I can only get the jointangle function to output one angle.
There is a way you can output rotation paramaters in the rigpose sop itself, which would be exactly what I want, however it doesn't account for having multiple rigposes in a chain. It just overwrites the parameter with the last rigpose value. So if I had a rigpose called walk where the leg was rotated by 50 in the x, then after that I had a rig pose called hand which didn`t rotate the leg, then the parameter would be overwriten to 0 in the x.
I can only get the jointangle function to output one angle.
-
- edward
- Member
- 8081 posts
- Joined: July 2005
- Offline
Yeah, that's a tough one then. I'd imagine that you wouldn't drive a corrective through multiple transform nodes in a traditional rig either? If you're able sensibly drive the corrective from just the axis deviation angle, then you could avoid some gimbal lock issues but then negative angles will mean the same thing as positive angles. Anyways, I've attached an example of doing that (as well as the method you mentioned with using the 3x3 directly that doesn't work).
Edited by edward - Jan. 23, 2021 23:39:33
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
-
- tamte
- Member
- 9380 posts
- Joined: July 2007
- Offline
usually you do this not by euler angles, but using RBF, which I think posespace deformer uses, or you can do custom using BlendPose CHOP
AFAIK both use just weighted pose towards the direction so they don't account for spin(twist) around the direction
I believe XSI had also more robust method where it considered the full quaternion orientation as a pose so it could consider the same direction spinned around as a different pose therefore spinning would also mix blendshapes if such examples were set
AFAIK both use just weighted pose towards the direction so they don't account for spin(twist) around the direction
I believe XSI had also more robust method where it considered the full quaternion orientation as a pose so it could consider the same direction spinned around as a different pose therefore spinning would also mix blendshapes if such examples were set
Edited by tamte - Jan. 24, 2021 15:39:42
Tomas Slancik
CG Supervisor
Framestore, NY
CG Supervisor
Framestore, NY
-
- SB26
- Member
- 46 posts
- Joined: April 2020
- Offline
tamteI am a year late but I just saw your message. Any tutorials on posespace deformer, I have been looking for the past few hours but can't figure it out.
usually you do this not by euler angles, but using RBF, which I think posespace deformer uses, or you can do custom using BlendPose CHOP
AFAIK both use just weighted pose towards the direction so they don't account for spin(twist) around the direction
I believe XSI had also more robust method where it considered the full quaternion orientation as a pose so it could consider the same direction spinned around as a different pose therefore spinning would also mix blendshapes if such examples were set
Thanks.
-
- Quick Links

