After some more testing, it appears the node swaps actually happen on a few of our digital assets.
I get these errors in the houdini console when loading an affected *.otl
Error: Couldn't remove old operator type definition sesi_temporary:op/null
Error: Couldn't remove old operator type definition sesi_temporary:op/merge
oplibSop/null?Sop/null Error(1): Expecting open brace
oplibSop/merge?Sop/merge Error(1): Expecting open brace
Unable to find dialog script for merge
at oplibSop/merge?Sop/merge.
After working through all the various issues by replacing types, and having found that some of the type-changed SOP_Nulls had mysteriously changed into SOP_merge nodes it would be nice to :
a) Have item hover hilighting in the change-type uber-list of all nodes
b) multiple-selection type-replacement
c) a proper dialog that can filter types when replacing types.
d) make it illegal to have two nodes with the same short-name OR show the full node name sop_null / sop_athing etc rather than just the nice name in the change-type list.
e) Be able to filter and search for nodes by their type as well as their unique network-name.
Found 11 posts.
Search results Show results as topic list.
Technical Discussion » Converting to H14
- hjd
- 11 posts
- Offline
Technical Discussion » Converting to H14
- hjd
- 11 posts
- Offline
Hi, after installing H14 and sorting out HAPI code changes and HDK plugin changes, ive found that the DigitalAssets loaded from H13 have had Null and Merge nodes changed into ‘default-nodes’ with the same name and phantom “Utility” type as the ‘proper’ nodes.
There are a lot of instance of this in our digital assets and the ‘default-node’ does not allow a zero-geometry as input like the proper SOP_Null node does, instantly breaking our digital assets with optional inputs.
All of the SOP_Merge nodes are also not working.
Is there an HScript or other process / command I can run to replace the “Utility” versions with the proper versions?
The attached picture shows the default-node proxy object and the two versions of the “Null” node now available the proper one is the “Digital Assets” one.
There are a lot of instance of this in our digital assets and the ‘default-node’ does not allow a zero-geometry as input like the proper SOP_Null node does, instantly breaking our digital assets with optional inputs.
All of the SOP_Merge nodes are also not working.
Is there an HScript or other process / command I can run to replace the “Utility” versions with the proper versions?
The attached picture shows the default-node proxy object and the two versions of the “Null” node now available the proper one is the “Digital Assets” one.
Technical Discussion » VEX intrinsic bounds
- hjd
- 11 posts
- Offline
Hi, I want to quickly and efficiently get the centre of a polygon in an attribWrangle node. Rather than get the positions for the linear vertices for the vertices for the primitive and manually get the average, I though i could use the primitive intrinsic “bounds”.
Using :
primintrinsic(0, “bounds”, @primnum );
I find that i can get the values in a vector4 or vector(3), but that means I can only get the first four values out of the six-value attribute.
Trying to return into a 6-float array doesnt work, returning to a matrix3 ( nine floats ) doesnt work. returning to a string doesnt work.
Is there any way to actually get at the data in the intrinsic or shall i resign myself to “maybe in Houdini 14 …” and do the slow vertex-averaging ?
Using :
primintrinsic(0, “bounds”, @primnum );
I find that i can get the values in a vector4 or vector(3), but that means I can only get the first four values out of the six-value attribute.
Trying to return into a 6-float array doesnt work, returning to a matrix3 ( nine floats ) doesnt work. returning to a string doesnt work.
Is there any way to actually get at the data in the intrinsic or shall i resign myself to “maybe in Houdini 14 …” and do the slow vertex-averaging ?
Technical Discussion » Custom Icon SVG : Not all shapes appear
- hjd
- 11 posts
- Offline
Technical Discussion » Custom Icon SVG : Not all shapes appear
- hjd
- 11 posts
- Offline
Yes i'm on Windows 7 64Bit.
Is there a way to produce icons that will work fully - use a different app to author / convert the SVGs?.
Is there a way to produce icons that will work fully - use a different app to author / convert the SVGs?.
Technical Discussion » Custom Icon SVG : Not all shapes appear
- hjd
- 11 posts
- Offline
Hi, i tried the simple-svg export but the problem persists. Has this been fixed recently ? ( im currently running 13.0.237 ). Some experimentation shows that at least locally some odd stuff is going on:
The red path has had its vertex under the circle cropped and the blue path has had multiple verts cropped (even ones that aren't under other shapes).
The red path has had its vertex under the circle cropped and the blue path has had multiple verts cropped (even ones that aren't under other shapes).
Technical Discussion » Custom Icon SVG : Not all shapes appear
- hjd
- 11 posts
- Offline
Hi, ive created a test-icon in Inkscape and got the *.svg working with my custom SOP node, however for some reason certain shapes in the *.svg appear in the houdini UI but others don't.
Ive made a file showing the problem.
Squares, circles and free-hand shapes seem to work but other line-objects dont - are there any rules to creating svg icons that i'm missing?
( I'm deleting the icon-cache files after replacing the *.svg in the icons folder and re-starting Houdini each time )
Ive made a file showing the problem.
Squares, circles and free-hand shapes seem to work but other line-objects dont - are there any rules to creating svg icons that i'm missing?
( I'm deleting the icon-cache files after replacing the *.svg in the icons folder and re-starting Houdini each time )
Houdini Learning Materials » Export Geometry with Python ROP Pre-RenderScript [fixed]
- hjd
- 11 posts
- Offline
It seems the path-as-script bug has been around for a while:
http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=10077&view=next&sid=d45e6d5971f15f87be462cd5650b7d41 [sidefx.com]
After fixing that , the rest was fairly simple:
node = hou.pwd() #this is the ROP Shell node
expRoot = node.parm('expRoot') #get the custom addded parameter
if expRoot != None:
geoNode = hou.node( expRoot.eval() ) #get the node for the export-root
geo = geoNode.geometry()
# extract paths from primitives
outPaths = “”
pathAtt = geo.findPrimAttrib(“path”)
for prim in geo.prims():
outPaths += prim.attribValue(pathAtt)
outPaths += “\r\n”
fp = open(“cfoo.txt”,“wt”)
if fp:
fp.write(outPaths)
fp.close()
http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=10077&view=next&sid=d45e6d5971f15f87be462cd5650b7d41 [sidefx.com]
After fixing that , the rest was fairly simple:
node = hou.pwd() #this is the ROP Shell node
expRoot = node.parm('expRoot') #get the custom addded parameter
if expRoot != None:
geoNode = hou.node( expRoot.eval() ) #get the node for the export-root
geo = geoNode.geometry()
# extract paths from primitives
outPaths = “”
pathAtt = geo.findPrimAttrib(“path”)
for prim in geo.prims():
outPaths += prim.attribValue(pathAtt)
outPaths += “\r\n”
fp = open(“cfoo.txt”,“wt”)
if fp:
fp.write(outPaths)
fp.close()
Houdini Learning Materials » Export Geometry with Python ROP Pre-RenderScript [fixed]
- hjd
- 11 posts
- Offline
Hi, I'm looking at exporting some attribute data from my geometry objects in a custom format using python.
It would seem using a ROP network Shell node with a Pre-Render Script would be the best bet.
Unfortunately i have no idea how to setup the export.py file to access the hou module or get a the geometries in the scene.
First off, pointing the Pre-Render Script to even an empty *.py file throws an error on the Shell node :
"Error: Python Error: Syntax Error: ('invalid syntax', ('<stdin>', 1, 2, ‘theFilename\n’))
Does that mean the parameter-box is trying to run the script file-path to run as the actual python script? If so, surely that's a bug?
Also, how do i setup the code in the script.py file to access houdini data in the scene? I assume the pre-render script isn't called per object / doesn't know what the current geometry is or anything.
Cheers, H
It would seem using a ROP network Shell node with a Pre-Render Script would be the best bet.
Unfortunately i have no idea how to setup the export.py file to access the hou module or get a the geometries in the scene.
First off, pointing the Pre-Render Script to even an empty *.py file throws an error on the Shell node :
"Error: Python Error: Syntax Error: ('invalid syntax', ('<stdin>', 1, 2, ‘theFilename\n’))
Does that mean the parameter-box is trying to run the script file-path to run as the actual python script? If so, surely that's a bug?
Also, how do i setup the code in the script.py file to access houdini data in the scene? I assume the pre-render script isn't called per object / doesn't know what the current geometry is or anything.
Cheers, H
Edited by - 2013年12月17日 09:08:12
Technical Discussion » digital asset object referenceing digital asset material
- hjd
- 11 posts
- Offline
im afraid im a bit new to Houdini.
I'd like the Material Shader “myMaterial” I have instanced in the “shop” and set with a base colour etc to be applied to my object sop, using the “Material” node is fine while im in the wallSegment.hib.
I can save the wall-segment as a digital asset but it doesnt save the material out with it, leaving the asset in building.hip without a material.
I can save myMaterial out as a digitalAsset as well ( into the same otl ) but I cant figure out a way of having my allSegment to reference the library-material.
Also, instancing the myMAterial node in the building.hip file ends up resetting the colours to defaults.
What i want is to have my wallSegment to use a pre-defined material saved into a library when it is instanced / used in other networks, I can manually set the material but it means I have to set the material for every instance of the wallSegment asset.
Should I be using a Gallery for the material instead?
I'd like the Material Shader “myMaterial” I have instanced in the “shop” and set with a base colour etc to be applied to my object sop, using the “Material” node is fine while im in the wallSegment.hib.
I can save the wall-segment as a digital asset but it doesnt save the material out with it, leaving the asset in building.hip without a material.
I can save myMaterial out as a digitalAsset as well ( into the same otl ) but I cant figure out a way of having my allSegment to reference the library-material.
Also, instancing the myMAterial node in the building.hip file ends up resetting the colours to defaults.
What i want is to have my wallSegment to use a pre-defined material saved into a library when it is instanced / used in other networks, I can manually set the material but it means I have to set the material for every instance of the wallSegment asset.
Should I be using a Gallery for the material instead?
Technical Discussion » digital asset object referenceing digital asset material
- hjd
- 11 posts
- Offline
Hi, is there a way to have a digital-asset object automatically reference a material-shader that i have also made a digital asset in the same *.otl?
If (in my digital-asset *.hip) I reference the material locally :“shop/myMaterial” then the files using the digital-asset *.otl cant resolve the link and the material option is greyed-out because its locked in the digital-asset.
I can use a parameter to expose the material to use to the top-level of the digital-aset but that means having to manually re-link the material every time I use the digital-asset, i'd like the material to be built-in to the asset wherever I use it.
Hope i'm being clear enough.
If (in my digital-asset *.hip) I reference the material locally :“shop/myMaterial” then the files using the digital-asset *.otl cant resolve the link and the material option is greyed-out because its locked in the digital-asset.
I can use a parameter to expose the material to use to the top-level of the digital-aset but that means having to manually re-link the material every time I use the digital-asset, i'd like the material to be built-in to the asset wherever I use it.
Hope i'm being clear enough.
-
- Quick Links