VEX_Ops example

   2509   2   1
User Avatar
Member
86 posts
Joined: Sept. 2008
Offline
hi all..

I've compiled the VEX_Ops.C example code using hcustom and it happily places the .so into $HFS/dso/VEX_Ops.so. On starting Houdini 10.0.595 it complained about missing version information in the .so so i added an include of UT_DSOVersion.h and recompiled. On restarting Houdini there is no complaint.. but i'm not sure how to invoke the getpid() VEX function.

The “vcc -X surface” doesn't list this function and if i create a new VEX surface shader operator and modify the code to call getpid() it complains “Undefined instruction ‘getpid’”. To see whether the newVEXOp() was getting called i put some debug code at the start of the function, but it doesn't seem to be called. Is there something i'm doing wrong?

thanks!
I installed a skylight in my apartment… the people who live above me are furious!
- Steven Wright
User Avatar
Member
86 posts
Joined: Sept. 2008
Offline
btw i'm running on Ubuntu Koala 9.10 64-bit, if that matters.
I installed a skylight in my apartment… the people who live above me are furious!
- Steven Wright
User Avatar
Member
86 posts
Joined: Sept. 2008
Offline
Fixed thanks to mrice. There is a need for a VEXdso file as documented in $HFS/houdini/vex/dso/VEX_VexOp.html. This information doesn't seem to be indexed by google.

It would be nice if the VEX_Ops sample included a VEXdso file or a readme.. but really this method is cumbersome. Houdini is probing for all of the hook methods in each .so on startup (most of which fail and are marked “(fatal)” in the LD_DEBUG log). It might be easier/quicker/simpler if there was a standard capabilities method exported by each .so which would allow Houdini to determine which methods are required, probe only for those methods, and report any problems.
I installed a skylight in my apartment… the people who live above me are furious!
- Steven Wright
  • Quick Links