Matching IK/FK on KineFx

   1545   2   1
User Avatar
Member
30 posts
Joined: Sept. 2017
Offline
Hi everyone,

The character rig on KineFX has come up well but if I approach on sdding the feature of matching Ik/Fk, have referred the following link:

https://www.youtube.com/watch?v=VIm2ObG8aQo&ab_channel=Brundlethwaite [www.youtube.com]

According to the tutorial, if I tries to find the path of the node using the code as:

compute = hou.node(f"{hou.pwd().path()}/computerigpose1")
pose = hou.node(f"{hou.pwd().path()}/L_FK_Arm_rigpose")

print (f"{compute} {pose}")



Im getting error as :

return _hou.HDAModule___getattr__(self, name)
AttributeError: 'module' object has no attribute 'matchIK'


The version of houdini which I'm using is 18.5.408 but in the video can see version as Houdini 18.5.485. So Is it because of the version?? Someone can please help me to solve this

Thanks in advance!!!!!!!!!!
Image Not Found
Edited by pksfx - Feb. 22, 2022 06:41:43

Attachments:
Error01.jpg (184.1 KB)

User Avatar
Member
7 posts
Joined: Feb. 2017
Offline
return _hou.HDAModule___getattr__(self, name)
AttributeError: 'module' object has no attribute 'matchIK'
First off, this error seems to indicate that your button can't find the specified function.
In the callback script of the button, you can use
hou.phm()
to access that HDA's Python module, and then call the function like this:
hou.phm().matchIK()

Second, you don't need to use f"{hou.pwd().path()}. The HDA is treated as the parent node of all nodes inside your HDA. That means you can use a simple
hou.node()
command to browse to any node within your HDA. In your compute case that could be either:
compute = hou.node("computerigpose1")
compute = hou.node("./computerigpose1")
If you want to browse into a subnet, you can do that the regular way of going through levels like this:
node = hou.node("subnet1/node1")
This should work the same across Houdini versions. I hope this solves your problem.
Technical Animator (using KineFX) at Enliven | Social Enterprise
idsboonstra.artstation.com
User Avatar
Member
30 posts
Joined: Sept. 2017
Offline
Ids
return _hou.HDAModule___getattr__(self, name)
AttributeError: 'module' object has no attribute 'matchIK'
First off, this error seems to indicate that your button can't find the specified function.
In the callback script of the button, you can use
hou.phm()
to access that HDA's Python module, and then call the function like this:
hou.phm().matchIK()

Second, you don't need to use f"{hou.pwd().path()}. The HDA is treated as the parent node of all nodes inside your HDA. That means you can use a simple
hou.node()
command to browse to any node within your HDA. In your compute case that could be either:
compute = hou.node("computerigpose1")
compute = hou.node("./computerigpose1")
If you want to browse into a subnet, you can do that the regular way of going through levels like this:
node = hou.node("subnet1/node1")
This should work the same across Houdini versions. I hope this solves your problem.


Thanks a lot @Ids. Later I've upgraded my houdini version to 18.5.596. and it has worked well as per that tutorial. But surely will check with the inputs which you have given. Soon will gets connect soon during the updation of this rig. Once again thanks as lot!!!
  • Quick Links