RFE: Vops and Renderman

   10214   11   0
User Avatar
Member
21 posts
Joined:
Offline
What would be cool is to have VOPs being able to use any renderman compliant renderer to preview the shader. Very much like how Shaderman works. It allows you to configure any renderer you want to preview the shaderballs.

IIRC, each renderer implements some sort of output driver for these things (previewing), cant remember what it was called though.

RSL is pretty standard among renderers so supporting it shouldnt be too much of a problem? Or am I wrong?
User Avatar
Member
4132 posts
Joined: July 2005
Offline
scorpion007
What would be cool is to have VOPs being able to use any renderman compliant renderer to preview the shader. Very much like how Shaderman works. It allows you to configure any renderer you want to preview the shaderballs.

IIRC, each renderer implements some sort of output driver for these things (previewing), cant remember what it was called though.

RSL is pretty standard among renderers so supporting it shouldnt be too much of a problem? Or am I wrong?
You can do this now, but it requires a little bit of work.

Need to do two things… First Houdini renders the shader ball using the “render” command (on linux, on windows its “prman”). So if you wanted to use another renderer then just alias “render” to point at something else….like aqsis for example.

Second, you'll need to edit/adjust $HFS/public/hrmanshader to your shader compiler, then compile it and use that instead of the default one.

There is a good number of RenderMan renderers out there now and if SESI were too support them all it would eat up a good bit of developer time. (Each shader compiler takes different options etc.) So being able to modify hrmanshader is a big help.

The only complaint I have is while aliasing “render” to something else works, its kinda hacky. It would probably be better if you could pick the “render” command through some environment variable instead. Like HOUDINI_RMAN_SHOPVIEWER
if(coffees<2,round(float),float)
User Avatar
Member
21 posts
Joined:
Offline
Ahh, thanks, I didn't know that. Will try it out.

EDIT;
Hmm.. went to the $HFS/houdini/public/hrmanshader directory, and there is a C.gz file. Do i unzip it and edit it?
User Avatar
Member
21 posts
Joined:
Offline
OK, I compiled it, now where should the file be located for it to work?

EDIT:
Nevermind, its in $HFS/bin right? Well i put it there - but:
where should i alias the ‘render’ command? I tried in the shell, but i still get “render” command not found error from houdini - it should be calling ‘renderdl’ for 3delight. So do i alias it in houdini or something?
User Avatar
Member
21 posts
Joined:
Offline
Ahh, I think I see what the problem is.. Houdini uses ‘sh’ as the default shell.. I aliased it in tcsh, as that's what I'm using. So of course it doesnt find the alias.
Is there a way to configure which shell Houdini uses?

I'll try setting the alias in ‘sh’ for the time being.

EDIT: Ok, well i tried loading houdini from a ‘sh’ prompt which has the render alias working – but houdini still couldn't find the render command.. wierd.
User Avatar
Member
6803 posts
Joined: July 2005
Offline
sh and tcsh are dramatically different. I would try soft-linking sh to bash instead. Or ash if you have that.
User Avatar
Member
21 posts
Joined:
Offline
hmm my /bin/sh seems to be already soft linked to bash from what I can tell.

Wierd thing is - if I execute sh, it doesnt seem to evaluate my ~/.bashrc file. Only if i run bash itself.

Anyway – the error I'm getting seems to be coming from sh, not bash:
~$ sh: line 0: exec: render: not found
- even though I'm running houdini from a bash console. (Same thing happens when running from tcsh).

And I aliased render to renderdl from bash. As you can see here:
~$ alias
alias ls='ls –color=auto'
alias render='renderdl'


Any ideas?
User Avatar
Member
6803 posts
Joined: July 2005
Offline
You can't use an alias as that's a shell only thing. You have to create a wrapper script.
User Avatar
Member
21 posts
Joined:
Offline
ah, never mind I fixed it by making a syslink from ‘render’ -> /path/to/renderdl

That fixed the not found error.
But now the problem is that 3delight does not have a ‘houdini’ output driver as far as I'm aware. (Nor do other renderers as far as I know.) So what can be done about that?
User Avatar
Member
21 posts
Joined:
Offline
I have one more question:

Here is the full error output just for reference:
3DL ERROR: Cannot find display driver “houdini”.
TIFFOpen: default.tif: Cannot open.
dspy_tiff: cannot create ‘default.tif’ (Permission denied).
3DL ERROR: Failed to open display driver “tiff” (error 4).
3DL WARNING: Cannot find shader “shop_view_wall”, will try “defaultsurface”.
3DL WARNING: Cannot find shader “/tmp/rsl_surface1”, will try “defaultsurface”.


I'm wondering where houdini tries to create the default.tif file, so that I can give appropriate write permissions to that directory. Currently it fails as you can see due to lack of permissions.

On a side note, has anyone successfully got the vops to render interactively with something other than PRMan? (Aqsis, 3Delight, etc) Is there some display driver you have to use? and where can you tell houdini to use it?

IIRC, i set it up some way a while ago on windows with Shaderman/Aqsis, though I cant remember the exact display driver I used or how I set up shaderman.
User Avatar
Member
6803 posts
Joined: July 2005
Offline
Did you try the links here?
http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=5071 [sidefx.com]
User Avatar
Member
21 posts
Joined:
Offline
Ah, thanks for the links, I searched but couldnt find anything relevant. These should help
  • Quick Links