Jump to content

How to add custom RenderMan renderer?


Recommended Posts

Hi all,

I'm trying to add a RenderMan-based renderer to Houdini (9.1), though a newbie if truth-be-known.

I've taken an existing RIB*.py and RIB*.ds, modifying them accordingly, but nothing new is displaying within the RenderMan Render Target dialog/pull-down... have I missed a file somewhere or these entries hard-coded within Houdini?

Any help at this point would be greatly appreciated as I'm starting to lose my sanity. :(

Link to comment
Share on other sites

Hi all,

I'm trying to add a RenderMan-based renderer to Houdini (9.1), though a newbie if truth-be-known.

I've taken an existing RIB*.py and RIB*.ds, modifying them accordingly, but nothing new is displaying within the RenderMan Render Target dialog/pull-down... have I missed a file somewhere or these entries hard-coded within Houdini?

Any help at this point would be greatly appreciated as I'm starting to lose my sanity. :(

Welcome!

Aqsis for Houdini, great to see that!

You need to create your own ROP driver (which might be customization of existing PRman ROP), it will have soho_program parameter, that should point to your python soho module. You can check how this works in some of current drivers (most of them are assets).

Check also Jason's educational journey about soho module:

http://forums.odforce.net/index.php?showto...5&hl=indigo

very informative.

Good luck!

skk.

Link to comment
Share on other sites

Hi all,

I'm trying to add a RenderMan-based renderer to Houdini (9.1), though a newbie if truth-be-known.

I've taken an existing RIB*.py and RIB*.ds, modifying them accordingly, but nothing new is displaying within the RenderMan Render Target dialog/pull-down... have I missed a file somewhere or these entries hard-coded within Houdini?

Any help at this point would be greatly appreciated as I'm starting to lose my sanity. :(

The easiest way would be to edit the existing RIB output driver and

make minimal changes:

1) Copy $HFS/houdini/soho/RIBprman14.0.py to ~/houdini9.5/soho/RIBaqsis.py

Perhaps choose a different set of properties closer to what Aqsis has to support.

Make sure to edit the Features() at the bottom of the file.

2) To test this out, put the following line in the RIBaqsis.py file,

right near the top (after the "import RIBsettings" line for example)

print "# Loading Aqsis settings"

3) Now, put down a standard RIB output driver.

Run the command "opparm /out/rib1 target aqsis" from an hscript

textport.

The menu in the GUI will still show prman14.0 because the GUI

hasn't been modified yet.

4) Generate a RIB file. You should see that the print that you put

in your settings has made it into the RIB stream.

This all works because in RIBsettings.py:load(), you'll see that

the "target" parameter is evaluated as a string, and then, that

version of RIB settings is loaded.

From here:

1) Customize an output driver with the correct UI

2) Add a dialog script to specify what "Rendering Properties" show up

when the user edits rendering properties.

3) If needed, copy the python scripts to customize the RIB generation

4) Create something like slo2otl.py (see the source in $HFS/bin) to

etc.

But at least, you have a starting point.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...