Search - User list
Full Version: op: prefix ?
Root » Houdini Lounge » op: prefix ?
vinz
Hi,

In the vop example simplemetaimport, there's op:`opfullpath(“.”)`/Metaballs/OUT in a file field.

the opfullpath is in the help, but couldn't find anything on op:

I guess it allows to use a sop instead of a bgeo file, but I tried to modify the file field in the shader in the heavy smoke fx, so that I didn't have to render the metaballs bgeo, but I got a black screen.

Thanks a lot for clearing things up!
probbins
Not that it is technically accurate, but I think of “op” as the operator equivalent of “ch”.

When you want to do a channel reference you need to declare that that is your intention, so you preface your channel path with “ch”.

To use OPerator functions or expressions you need to declare that with “op”.

To quickly see a list of available op functions open a hscript textport and type “help op”
To see the op expressions type “exhelp op”

You can get a description of how each works by identifying the specific name,
ie: “exhelp opfullpath”

By the way there is no help browser entry for “ch” either.
vinz
Thanks for answering but I think you misunderstood the question, sorry if I wasn't clear enough.

in the example I'm talking about, there's “op:`opfullpath(”.“)`/Metaballs/OUT” (whitout the quotes), in a file field.

The opfullpath() I understood, so the above is equivalent to “opobj/simplemetaimport/Metaballs/OUT”

It's the little “op:” in the beginning which is unclear.

Thanks
symek
As I see this, op: is a name of the protocol in exactly the same sense as http: or ftp: which you're familiar with.

It says: “the path following me isn't pointing to a file on disk, it's pointing to a a Houdini operator instead, treat it as it would be such file, please”.

In other words whenever some parameter expects the input which corresponds to an output of some operator, you can use op:.
I would even say (not sure of that though), that this concerns only parameters that accepts FILES names. What leads to above protocol analogy.

COPs output images -> shaders accepts images.
SOPs output geometry ->VEX SOP accepts geometry.

ch() on the other hand, evaluates only channel's value, not an internal data of the operator.
vinz
Thanks for the explanation, will have to try again with the heavy smoke shader.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB