[Sidefx-houdini-list] How to Create Vops using HDK

Drew Whitehouse Drew.Whitehouse at anu.edu.au
Wed Aug 30 18:36:08 EDT 2006

Like Lucio says, you first need to implement the functionality you
want as new VEX functions using the HDK. As far as I know there is no
documented way to make your own VOP to call c++ implemented VEX
functions (maybe SideFX want to discourage it ?) but it isn't that
hard to reverse engineer by looking at houdini's primitive vops. E.g.
look at the "type properties" (RMB on the VOP) of a simple VOP  like
the "abs" shader vop and see the vex code tab.

The steps go something like ...

- compile your new c++ vex function(s) into eg VEX_MyFun.so (/.dll)
- install that .so file into a dso directory on your path eg in
- make the vex function(s) defined in that .so file available to
houdini by adding add a line "VEX_MyFun.so" (minus the quotes) into a
file named $HOME/houdini8.1/vex/VEXdso (you will be creating this path
and file if it doesn't already exist).

Then ...

You need to save a new VOP type into an OTL. Then, if your VEX
function was "vex_abs", you would define new parameters val (input)
and abs(output), the inner vex code is $abs = vop_abs($val);  and the
outer code is any includes you need to go with that vex. "view code
from vop network" (RMB on one of the shader's vops) to see how your
code is included into the resulting shader function.

I'm assuming you have a good handle on OTL's.

Finally, note that all this is done in the HOT (houdini ocean
toolkit), specifically see the files  VEX_Ocean.C and HOT.otl. The
source code available from the OdWiki.


On 8/31/06, Jaideep Khadilkar <iamjaideep80 at yahoo.com> wrote:
> Hi Everybody...
> I think my last post was some what confusing.
> I wan to know how to create a Vop Node using HDK?
> Do you have any examples or source code?
> Plz Help....
> -----iamjaideep80
> Jaideep Khadilkar
> (Sciclone Motion Graphics)
> ---------------------------------
> Stay in the know. Pulse on the new Yahoo.com.  Check it out.
> _______________________________________________
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list

Drew Whitehouse
ANU Supercomputer Facility Vizlab

More information about the Sidefx-houdini-list mailing list