Can the CaptureLayerPaint SOP be painted by Region?

   1691   4   1
User Avatar
Member
21 posts
Joined: 6月 2019
Offline
We have created the auto turret geometry and are rigging it in KineFX.
Since the auto turrets are set up to be made of metal, I want to do a WeightPaint and add a weight of 1 or 0 to animate them like a rigid body without deforming them.

I want to use CaptureLayerPaint to apply WeightPaint to each CaptureRegion and separate the machine parts so that they move separately, but it does not work. Please let me know what I am doing wrong.




My understanding is this.
1: Create a bone tree with this Skeleton.
2: RigPose deforms the bone tree created with the Skeleton.
3: BoneCaptureProximity creates a region associated with a bone from skeleton and geometry. (If there are 3 bones, there are 3 regions, and if there are 100 bones, there are 100 regions.)
4: CaptureLayerPaint can create a WeightPaint for each region.
5: BoneDeform refers to the region from the bone, calculates which vertex is affected by the weight and how much, and deforms it by looking at it.

But it's the 4th one I don't understand.


I thought that switching the CaptureRegion would switch to displaying the weight paint for each Region or Bone.
I am only filling `point_4`, but the other regions are also being filled.

Or, apart from the title, please let me know if this is not the right approach to create a mech.
Edited by li la - 2023年5月20日 07:04:05
User Avatar
Member
8822 posts
Joined: 7月 2007
Offline
li la
Or, apart from the title, please let me know if this is not the right approach to create a mech.
You an capture rigid pieces using this Capture Packed Geometry SOP [www.sidefx.com] either interactively in the viewport or procedurally using attribute
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
21 posts
Joined: 6月 2019
Offline
> You an capture rigid pieces using this Capture Packed Geometry SOP either interactively in the viewport or procedurally using attribute

Thanks, I was able to capture the rigid body.

However, this method seems to reflect the transrate but not the rotate.



To begin with, CapturePackedGeometry ties geometry to joints, but I think the problem is that RigPose only has packed handles and no joint handles.
The pose should be made by rotating the joints.

That said, Skeleton is a very simple interface node and I don't see anything wrong with the processing before CapturePackedGeometry.
(Well, I am concerned that I specified red for the joint but it is not reflected in the View.)

Edited by li la - 2023年5月20日 21:53:34
User Avatar
Member
21 posts
Joined: 6月 2019
Offline
I got a few tips.
When I trace a point created with a Line node with a Skeleton node, the information in the geometry spreadsheet changes compared to when it is not traced.
Specifically, there was no matrix information.

So I think the reason why I can transrate but not rotate is because each joint (in houdini terms it may be an array of points, not joints) did not have a default direction.

However, I do not know the means or node to set the direction to the next point at current point.
I will continue to look into what the problem is.
If anyone can help me figure out what it is, please let me know.
Edited by li la - 2023年5月21日 07:03:50
User Avatar
Member
21 posts
Joined: 6月 2019
Offline
Also, isn't it inconvenient that Skeleton nodes can only be entered with the mouse and not with coordinates? I am not confident that I can create a perfectly horizontal joint using the mouse.
  • Quick Links