Hi!
I have a ass file loading to Arnold Procedural, and I need get path to groups inside of him for hide some of them.
Does any one know how to get it, and get groups list without opening ass file in text editors?
Thanks
Pseudo UI.
In the operator canvas, create 2 nodes. A set parameter and a procedural node.
Set the settings to something like I did here:
visibility = 0
Then pick the nodes with the selection string.
In this case I pick /Sp*
This is all the spheres.
Then link the Set parameter node to a procedural node, and link this procedural into the Arnold Procedural scene node. ( you should have this slot in Houdini as well is my take )
Finally, atleast I have to: Set the "set parameters node" via rightclicking it, and promote it to be the "Target operator"
Unfortunately, I dont think you can see the list I can, as it would be sitting on the Arnold Procedural node directly, I would guess you could see this list already if it was integrated.
So, I guess the Houdini version of Procedural, should have a similar list like I got in the DCC I use here.
Thanks for you example Mads
but what you write works fine only in max
and maya, and doesn’t work normaly in houdini, and no, procedural
interface here different than in maya and max, and it does not give you
list of groups.
For it work, I need to specify in the operator, path to this procedural node to the objects context, and this works globally for it, but I not understand get groups from it, because, examples from maya or max, simply cease to influence on procedural node, and in the docs they did not bother to add anything for htoa except "we have a nodes and they can do something"
besides, why use Set operator if we have Disable operator?
I would like to see a practical example or clearer clarifications from a artist working in houdini.
Ultimately we want a UI like in MtoA. But for now...
If you use an operator and select *.(@node=='polymesh'), then a Debug-level log will show the names of the matched polymesh. So that's one way.
If you have Maya, load the ass file and use the aiStandin ui.
A command-line script, either with the Arnold API or maybe just a perl-one liner.
Hi Stephen,
yes maya as a temporary option good for now
as for UI - I hope that someday it will appear after 7 years of connector development, want to believe it)
May I ask you more explained, it is possible to invert the selection in SetParameter (screen1) and how to turn off the light source for a specific group?
I tried create group in collection but not see how to use it with Disable operator
Thanks
screen1: You want to invert the selection, which I understand to mean you want to select all polymesh nodes not named /ast_wc_orc_v001/wc_orc_body/wc_orc_bodyShape ?
In that case:
*.(@node == 'polymesh') and not *.(name=='/ast_wc_orc_v001/wc_orc_body/wc_orc_bodyShape')
screen2: how to reference a collection
You use the # symbol and the collection name in your selection expression.
So instead of /obj/hdr*, you would put #my_collection, where "my_collection" is the name of your selection
Thanks
but both examples are not working
in the first expression, all geometry is hidden.
Expression work only if I baked to *.ass unpacked geometry, but in this case I have *.ass with alembic procedural(plz look at *.ass source screen below)
In the second, I needed not only to specify the collection there, but also to exclude only one special light source for this collection, light in the scene, not in *.ass
Sorry for I don't give you clearly information initially
I found some answer in this thread, but not understand what is mean?
https://answers.arnoldrenderer.com/questions/17184/operator-light-group-with-an-array-possible.html
becouse expression like light_group[0] = '/obj/rim' amd light_group[1] =
'/obj/hdr' not working and give message [parameter] index 0 exceeds
the number of array elements 0 for parameter "light_group": '/obj/rim'
[parameter] index 1 exceeds the number of array elements 0 for parameter "light_group": '/obj/hdr'
work only with one group like "light_group = '/obj/rim'"
Can't find what you're looking for? Ask the community or share your knowledge.