Hey all, I'm using Houdini 20 and building my own tool to do Automatic UVs and UV layout for a specific project and I want to recreate the functionality of the UV Layout (3.0) SOP.
When you select the UV Layout SOP it splits the viewport view automatically - see screenshot. I really like this feature, is there a way to replicate this in user built HDAs/OTLs?
Cheers,
Adam
Found 10 posts.
Search results Show results as topic list.
Technical Discussion » HDA/OTL Create split UV view like UV Layout node
- AdamChabane
- 10 posts
- Offline
Technical Discussion » Key-Value Dictionary Parameter - Resize table in HDA
- AdamChabane
- 10 posts
- Offline
JohnFanny
Hi, did you find a solution?
Unfortunately not, It's been a while but I ended up representing my dictionary as string parms in a multiparm instead, and wrote a simple function to convert my mutliparm to and from a dictionary.
Technical Discussion » Key-Value Dictionary Parameter - Resize table in HDA
- AdamChabane
- 10 posts
- Offline
Is there a way to resize a Key-Value Dictionary parameter in the Type Properties so that it has more lines?
I want to use the Key-Value dictionary parm to display some data to the user but it's limited to 4 lines and the user has to scroll. Is there a tag or way im missing where I can have the Key-Value parameter display more lines by default?
Any help appreciated, cheers,
Adam
I want to use the Key-Value dictionary parm to display some data to the user but it's limited to 4 lines and the user has to scroll. Is there a tag or way im missing where I can have the Key-Value parameter display more lines by default?
Any help appreciated, cheers,
Adam
Technical Discussion » 'Freezing' normals
- AdamChabane
- 10 posts
- Offline
Hey Alex,
I'm not sure I totally understand so please forgive me, took a look at your hip file:
Are you trying to keep the normal rotations of the rebar points static throughout the animation? Is the problem that when you play the animation the rebar tubes snap after reaching the threshold?
You have this line in your solver that im not sure if its doing what you want exactly. Because the lerp 'amount' is 1 its effectively grabbing the second argument (opinput1 rebar direction) and there is no "blending", usually the 'amount' argument is another variable or user control.
@N = lerp(v@NRBD, v@opinput1_Rebar_Direction, 1);
If I change this to 0:
@N = lerp(v@NRBD, v@opinput1_Rebar_Direction, 0);
The rebar tubes no longer snap out of place, but I doubt this is what you're looking to achieve?
Adam
I'm not sure I totally understand so please forgive me, took a look at your hip file:
Are you trying to keep the normal rotations of the rebar points static throughout the animation? Is the problem that when you play the animation the rebar tubes snap after reaching the threshold?
You have this line in your solver that im not sure if its doing what you want exactly. Because the lerp 'amount' is 1 its effectively grabbing the second argument (opinput1 rebar direction) and there is no "blending", usually the 'amount' argument is another variable or user control.
@N = lerp(v@NRBD, v@opinput1_Rebar_Direction, 1);
If I change this to 0:
@N = lerp(v@NRBD, v@opinput1_Rebar_Direction, 0);
The rebar tubes no longer snap out of place, but I doubt this is what you're looking to achieve?
Adam
Edited by AdamChabane - 2022年12月22日 21:12:53
Technical Discussion » Python nodeEventType Output Change?
- AdamChabane
- 10 posts
- Offline
Hello, I'm looking to invoke a python script once an HDA's output wires are changed, say when adding or removing child wires for parenting. I know we have an "on input change" but what about "on output change"?
At the moment I'm doing a very hacky hscript trick with inconsistencies but is there a more pythonic way to do this?
All the best,
Adam
At the moment I'm doing a very hacky hscript trick with inconsistencies but is there a more pythonic way to do this?
All the best,
Adam
Technical Discussion » OTL Operator Path parameter update vex and event callback
- AdamChabane
- 10 posts
- Offline
Apologies for the delayed reply.
I actually had the operator path parameter on the wrangle already and my vex was pointing to the wrangle and then the OTL parameter just like you said krueger. I tried a few different things in the VEX to no avail.
However! elovikov your event callback suggestion worked perfectly! Thank you so much that's so useful!
I actually had the operator path parameter on the wrangle already and my vex was pointing to the wrangle and then the OTL parameter just like you said krueger. I tried a few different things in the VEX to no avail.
However! elovikov your event callback suggestion worked perfectly! Thank you so much that's so useful!
Technical Discussion » OTL Operator Path parameter update vex and event callback
- AdamChabane
- 10 posts
- Offline
Technical Discussion » OTL Operator Path parameter update vex and event callback
- AdamChabane
- 10 posts
- Offline
Hello! I have a somewhat niche issue.
I have my own OTL to manage and set a "shop_materialpath" string attribute on a given input geometry. This OTL requires an operator path to specify which material to assign. I am using a wrangle and vex for all the logic and to create all of the string paths.
I have an issue where the OTL wrangle (and resulting values on the geometry) are not being updated when the name of the operator in the operator-path parameter is updated.
This seems to work fine with the material SOP. If I specify a material-node in the material sop and then change the name of the material node itself it correctly updates the material-sop parameter and the string path on the geometry.
In my OTL the name of the material node correctly updates on the parameter interface but the underlying wrangle is not automatically updated - I have to change a parameter or force the re-evaluation of the wrangle in some way to force the update.
I have tried adding my own event callback (hou.nodeEventType.ParmTupleChanged) but this is not triggered when the operator name is changed at the reference end. Does that make sense? Is there a way around this? Currently I've just had to include a button on my OTL to force refresh the wrangle. Anyone got a better way to go about this?
Any help appreciated!
I have my own OTL to manage and set a "shop_materialpath" string attribute on a given input geometry. This OTL requires an operator path to specify which material to assign. I am using a wrangle and vex for all the logic and to create all of the string paths.
I have an issue where the OTL wrangle (and resulting values on the geometry) are not being updated when the name of the operator in the operator-path parameter is updated.
This seems to work fine with the material SOP. If I specify a material-node in the material sop and then change the name of the material node itself it correctly updates the material-sop parameter and the string path on the geometry.
In my OTL the name of the material node correctly updates on the parameter interface but the underlying wrangle is not automatically updated - I have to change a parameter or force the re-evaluation of the wrangle in some way to force the update.
I have tried adding my own event callback (hou.nodeEventType.ParmTupleChanged) but this is not triggered when the operator name is changed at the reference end. Does that make sense? Is there a way around this? Currently I've just had to include a button on my OTL to force refresh the wrangle. Anyone got a better way to go about this?
Any help appreciated!
Technical Discussion » Object HDA with Multiple Outputs
- AdamChabane
- 10 posts
- Offline
Bump.
I've managed to force the number of outputs on an object HDA with python (which I dont think is supposed to work) but it doesn't work when wiring outputs and just forces any output wire to the first output (output0). Plus there is no way that I can see to force which child node is output in the hda definition, its all controlled by the "Output Transform" parameter which obviously only works for the expected singular output.
This is something I really think is needed! Having complex HDAs that control numerous object level transforms is a feature I think would be very useful.
I've managed to force the number of outputs on an object HDA with python (which I dont think is supposed to work) but it doesn't work when wiring outputs and just forces any output wire to the first output (output0). Plus there is no way that I can see to force which child node is output in the hda definition, its all controlled by the "Output Transform" parameter which obviously only works for the expected singular output.
This is something I really think is needed! Having complex HDAs that control numerous object level transforms is a feature I think would be very useful.
Edited by AdamChabane - 2021年4月29日 17:28:43
Technical Discussion » Object HDA with Multiple Outputs
- AdamChabane
- 10 posts
- Offline
Hey all, this may be a silly question but is there a way at all to have an object level HDA have multiple outputs? I want to create an HDA that has multiple parent transform outputs to control different objects in my scene. Is there a reason why objects are limited to a singular output?
Any help or suggestions welcome, thanks.
Any help or suggestions welcome, thanks.
-
- Quick Links