Jump to content
thom

HOT for h12

Recommended Posts

HI,

I don't know if it's on the way but since Houdini 12 is out i would be nice to have the HOT working this release.

Thanks

Edited by thom

Share this post


Link to post
Share on other sites

Yes please. H12 is excellent but I'm really missing HOT.

Hey. Yeah same here. I've tried compile it against houdini 12 and this is the error I'm getting:

user@user-desktop:~/Downloads/hotsrc_1.0rc9/src$ python setup.py bdist
---> pavement.bdist
---> pavement.build
---> pavement.clean
---> pavement.build_sop_cleave
hcustom  -e -I 3rdparty/linux/include -I 3rdparty/include -L 3rdparty/linux/lib -l blitz -l fftw3f  -i . SOP_Cleave.C
Linking with 'libblitz'
Linking with 'libfftw3f'
Install directory = '.'
g++ -DUT_DSO_TAGINFO='"3262197cbf015d063aad08835e2e94dc385ac7e9c427d2bd27f3d05c5259ea98348e65de812c43570c0bfde12b9f751c04a0ef10efafb60a537b7caa77ea94ac49ad5fb4ea885d85a3349d19559011fcab4ed5f0cfa2d966eaec1d58041eb355f05bee598b3783"' -DVERSION=\"12.0.543.9\" -D_GNU_SOURCE -DLINUX -DAMD64 -m64 -fPIC -DSIZEOF_VOID_P=8 -DSESI_LITTLE_ENDIAN -DENABLE_THREADS -DUSE_PTHREADS -D_REENTRANT -D_FILE_OFFSET_BITS=64 -c -I3rdparty/linux/include -I3rdparty/include  -DGCC4 -DGCC3 -Wno-deprecated -I/opt/hfs12.0.543.9/toolkit/include -Wall -W -Wno-parentheses -Wno-sign-compare -Wno-reorder -Wno-uninitialized -Wunused -Wno-unused-parameter -O2 -fno-strict-aliasing -DMAKING_DSO -o SOP_Cleave.o SOP_Cleave.C
Compile failed
SOP_Cleave.C:48:33: fatal error: GB/GB_AttributeRef.h: No such file or directory
compilation terminated.



Captured Task Output:
---------------------

---> pavement.bdist
---> pavement.build
---> pavement.clean
---> pavement.build_sop_cleave
hcustom  -e -I 3rdparty/linux/include -I 3rdparty/include -L 3rdparty/linux/lib -l blitz -l fftw3f  -i . SOP_Cleave.C
SOP_Cleave.C:48:33: fatal error: GB/GB_AttributeRef.h: No such file or directory
compilation terminated.

It's whining that it can't find GB/GB_AttributeRef.h.

It seems that things have changed with regards to GB/GB_AttributeRef.h and according to the docs 'significant changes' would have to be made to code making use of it.

http://www.sidefx.com/docs/hdk12.0/hdk_changes_11_0.html#HDKC11_0_GB_AttributeRef

I'll dick around with it in the next few evenings, but I guaratee you that I'll just be running in circles not knowing what's what. If someone a bit more qualified that myself could take a look at it that would be just super! :)

If I make any progress I'll contribute it back asap.

With Houdini 11.1 it compiles just fine on my machine following the same steps.

EDIT: I was just reading the link I posted above and the first thing they say is:

We realize that you may not have the time or resources to change all your code at the current time. In order to facilitate making the change, you can define HDK_RELAXED_GB in your make (or in your code).

Lol. So I'll try what they say first I guess. :)

EDIT: Woops, sorry, I'm kind of updating this as I find stuff. I probably should wait until I have my head around it first. The link I posted above is to hdk11 chages not 12. So that should affect HOT since it compiles just fine with Houdini 11.1. I'll come back and post more later. IF I find out more. If I don't it means I gave up. :)

Edited by sleg

Share this post


Link to post
Share on other sites

Hi Christian.

Thanks for this version...but, why is it that in your binary, there are less dlls and files than in previous HOT versions?

In fact there is no dll folder, which is a folder you usually have to point at when installing HOT for Houdini...

Edited by Netvudu

Share this post


Link to post
Share on other sites

Hi Christian.

Thanks for this version...but, why is it that in your binary, there are less dlls and files than in previous HOT versions?

In fact there is no dll folder, which is a folder you usually have to point at when installing HOT for Houdini...

I was working on a modified version of the HOT to test different types of multithreading for the ocean calculation.

These files represents this version and that's why the output binaries differs to the original HOT.

The source just includes the SOP deformer and the vex function for deforming and displacement. The SOP deformer provides a "Threaded" parameter to turn on a multithreaded calculation.

If you prefer the base HOT implementation, feel free to take my SOP deformer source code to see the changes needed for the new H12 geometry library.

cheers

christian

Share this post


Link to post
Share on other sites

ah, ok. Everything´s fine. I was misleaded because the nodes have different names from the "official" version and I couldn´t find the SOP node. I though it was an installation problem, but it is not. It´s there and working :)

Share this post


Link to post
Share on other sites

I was working on a modified version of the HOT to test different types of multithreading for the ocean calculation.

These files represents this version and that's why the output binaries differs to the original HOT.

The source just includes the SOP deformer and the vex function for deforming and displacement. The SOP deformer provides a "Threaded" parameter to turn on a multithreaded calculation.

If you prefer the base HOT implementation, feel free to take my SOP deformer source code to see the changes needed for the new H12 geometry library.

cheers

christian

That's what I'm talking about! Nice one! Thank you.

Sorry for the late reply.

Will get compiling now!

Edited by sleg

Share this post


Link to post
Share on other sites

Hi Christian. So It's not going so good for me. Admitedly I havn't had time to do much more than cd into your source and hcustom the sop_cleave.c

This is what I get when I do so.

hcustom 'SOP_Cleave.C'
Making SOP_Cleave.o and /home/user/houdini12.0/dso/SOP_Cleave.so from SOP_Cleave.C
SOP_Cleave.C: In member function ‘virtual OP_ERROR SOP_Cleave::cookMySop(OP_Context&)’:
SOP_Cleave.C:176:11: error: ‘GB_PrimitiveGroup’ does not name a type
/opt/hfs12.0.543.9/toolkit/include/OP/OP_Context.h:91:26: error: ‘fpreal OP_Context::myTime’ is private
SOP_Cleave.C:187:25: error: within this context
SOP_Cleave.C:196:28: error: ‘polyGroup’ was not declared in this scope
SOP_Cleave.C:197:28: error: ‘polyGroup’ was not declared in this scope
SOP_Cleave.C:211:5: error: ‘GB_PrimitiveGroup’ was not declared in this scope
SOP_Cleave.C:211:24: error: ‘cleave_group’ was not declared in this scope
SOP_Cleave.C:212:24: error: ‘not_cleave_group’ was not declared in this scope
SOP_Cleave.C:214:9: error: ‘polyGroup’ was not declared in this scope
SOP_Cleave.C:216:36: error: ‘FOR_ALL_PRIMITIVES’ was not declared in this scope
SOP_Cleave.C:217:9: error: expected ‘;’ before ‘{’ token
SOP_Cleave.C:227:36: error: ‘FOR_ALL_PRIMITIVES’ was not declared in this scope
SOP_Cleave.C:228:9: error: expected ‘;’ before ‘{’ token
SOP_Cleave.C:249:47: error: ‘GB_ATTRIB_FLOAT’ was not declared in this scope
SOP_Cleave.C:270:30: error: ‘class GEO_Point’ has no member named ‘castAttribData’
SOP_Cleave.C:270:45: error: expected primary-expression before ‘float’
SOP_Cleave.C:270:45: error: expected ‘;’ before ‘float’
SOP_Cleave.C:334:36: error: ‘FOR_ALL_PRIMITIVES’ was not declared in this scope
SOP_Cleave.C:335:9: error: expected ‘;’ before ‘{’ token
SOP_Cleave.C:486:1: error: expected ‘}’ at end of input
SOP_Cleave.C:179:26: warning: unused variable ‘gqd’ [-Wunused-variable]
SOP_Cleave.C:180:30: warning: unused variable ‘k’ [-Wunused-variable]
SOP_Cleave.C:248:9: warning: unused variable ‘cleave_rest_pos’ [-Wunused-variable]
SOP_Cleave.C:279:11: warning: unused variable ‘dist’ [-Wunused-variable]
SOP_Cleave.C:280:11: warning: unused variable ‘dscale’ [-Wunused-variable]
SOP_Cleave.C:281:11: warning: unused variable ‘sthresh’ [-Wunused-variable]
SOP_Cleave.C:282:11: warning: unused variable ‘deg’ [-Wunused-variable]
SOP_Cleave.C:306:11: warning: unused variable ‘rval’ [-Wunused-variable]
SOP_Cleave.C:308:11: warning: unused variable ‘area’ [-Wunused-variable]
SOP_Cleave.C:309:16: warning: unused variable ‘apt’ [-Wunused-variable]
SOP_Cleave.C:310:16: warning: unused variable ‘bpt’ [-Wunused-variable]
SOP_Cleave.C:311:16: warning: unused variable ‘cpt’ [-Wunused-variable]
SOP_Cleave.C:316:11: warning: unused variable ‘delta_deg’ [-Wunused-variable]
SOP_Cleave.C:317:11: warning: unused variable ‘arad’ [-Wunused-variable]
SOP_Cleave.C:318:11: warning: unused variable ‘brad’ [-Wunused-variable]
SOP_Cleave.C:321:16: warning: unused variable ‘orig_gdp’ [-Wunused-variable]
SOP_Cleave.C:486:1: error: expected ‘}’ at end of input
SOP_Cleave.C:486:1: warning: control reaches end of non-void function [-Wreturn-type]
Compile failed

Any ideas?

Edited by sleg

Share this post


Link to post
Share on other sites

Hi Christian. So It's not going so good for me. Admitedly I havn't had time to do much more than cd into your source and hcustom the sop_cleave.c

This is what I get when I do so.

Any ideas?

Please load the sources from my blog again....just updated the sop_cleave.c code.

The reason for the error was that the SOP_Cleave was still the original one for H11....I had never used and compiled sop_cleave. That's why I had never touched the code for the H12 port ;)

Share this post


Link to post
Share on other sites

Please load the sources from my blog again....just updated the sop_cleave.c code.

The reason for the error was that the SOP_Cleave was still the original one for H11....I had never used and compiled sop_cleave. That's why I had never touched the code for the H12 port ;)

Ah right. Lol. just my luck that it was the first one I tried. ;)

Thanks a lot for taking the time to update it.

Hey Christian.

Sorry to be a pain. I compiled your source just fine, but now I'm getting some crashes when trying to use it.

If I create a grid > create a HOcean > and view it, I get a crash with the following output:

 /opt/hfs12.0.543.9/bin/hmaster-bin: symbol lookup error: /home/user/houdini12.0/hotbin_linux64_H12.0.543.9_1.0rc9/dso/SOP_Ocean.so: undefined symbol: _ZN3drw5OceanC1Eiiffffffffffi

Also, it seems the name of the ocean SOP has changed from ocean to HOcean. Is that right?

That would require past otls to be all updated with the new node name. Not too big of a worry, but I'm curious whether there is a reason for the change.

Edited by sleg

Share this post


Link to post
Share on other sites

Ah right. Lol. just my luck that it was the first one I tried. ;)

Thanks a lot for taking the time to update it.

Hey Christian.

Sorry to be a pain. I compiled your source just fine, but now I'm getting some crashes when trying to use it.

If I create a grid > create a HOcean > and view it, I get a crash with the following output:

 /opt/hfs12.0.543.9/bin/hmaster-bin: symbol lookup error: /home/strykekyte/houdini12.0/hotbin_linux64_H12.0.543.9_1.0rc9/dso/SOP_Ocean.so: undefined symbol: _ZN3drw5OceanC1Eiiffffffffffi

Also, it seems the name of the ocean SOP has changed from ocean to HOcean. Is that right?

That would require past otls to be all updated with the new node name. Not too big of a worry, but I'm curious whether there is a reason for the change.

Unfortunately, I did not compile and tested it for linux. I'd suggest to check if you compiled against the correct version of the hdk. Also try a cleanup before compiling again. Maybe there went something wrong in the linking process.

I named it hocean since it is a parallel development of the HOT. And it can be used in parallel with the HOT.

But just change the "hocean" to "HOT" within the OP_Operator constructor (SOP_Ocean.c) and do the same in VEX_Ocean.c for the VEX_VexOP() call. And the plugin will appear as HOT again. ;)

Edited by schnelli

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×