So, has anyone ever ported a shader to Houdini?
I'm lost between mi, ds, vob, shop, mids....
So, has anyone ever ported a shader to Houdini?
I'm lost between mi, ds, vob, shop, mids....
Hi,
Probably reading this document from Jan Walter will help you in case you don't already know it
http://www.janwalter.com/Houdini/filmakademie.pdf
Regards,
I also have a PDF document about shader writing for mental ray and Houdini but I can't find the web site where I downloaded it...
It seems it came from here I think but the web site seems down :
http://www.techimage.co.uk/products/hou ... rials.html
Email me if you want me to send it to you.
Regards,
Me and the houdini guy have succeeded in having a shader working.
Apparently we must provide a separate mi file per shader, since the linker searches for a dso named as the mi file, except for the extension of course.
The next step we are now lost in is how to texture the parameters.
Thanks
That's the case for all shaders.
If you don't specify a "link" statement in the .mi file, mental ray supposes that the shader (.so or .dll) has the same name than the .mi file and so searches for it.
It also supposes that all shaders declared in the .mi file are in the matching .so (resp. .dll) file.
But be sure not set it before any shader declaration structure.
Example :
However, not sure the "link" statement in the .mi file is supported by Houdini.Code:verbose on link "base.so" $include <base.mi>
Regards,
David, not sure I explained well.
With mi, I'm talking about my shader declaration (not the output mi to be rendered), so for instance myLambert.mi.
We have packed our current shaders declaration for maya in a single allShaders.mi. So I was hoping Houdini would read allShader.mi (in fact the mids command does it, once you have removed the nodeid line), but when it comes to render unfortunately it searches for allShaders.so which I don't have.
In fact , the only decent thing about the maya implementation is that you don't need to tell any shader which library to load, all the dsos just have to reside in the right folder.
I've never checked, but can a shader declaration (myLambert.mi) include a link statement?
Hi,
Yes, the .mi file is a shader declaration and also a scene description language so the link statement must stands in the .mi file.
Try it, it's only a few lines, link with all .so files that your shader declaration uses.
And read the mental ray doc about link statement.
Regards,
You can download the mental ray shaders development for Houdini documentation here :
http://www.dl3d.com/samples/houdini_mental_ray.pdf
This is the doc that were found on Techimage web site wich is no longer available.
Regards,
The pdf is the one I had, not telling much.
Are you aware of a way of making a shader's parameters texturable in Houdini ?
Sorry, no experience with Houdini at all.